@import url("core/inc/bootstrap/bootstrap.min.css");
@import url("core/inc/fontawesome/css/fontawesome.min.css");
@import url("core/inc/fontawesome/css/solid.min.css");
@import url("core/inc/fontawesome/css/regular.min.css");

@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5vAw.ttf) format("truetype");
}

@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Me5Q.ttf) format("truetype");
}

@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlvAw.ttf) format("truetype");
}

@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v25/ieVl2ZhZI2eCN5jzbjEETS9weq8-59U.ttf) format("truetype");
}

@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotocondensed/v25/ieVi2ZhZI2eCN5jzbjEETS9weq8-32meKCM.ttf) format("truetype");
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes rotation {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotation {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@-webkit-keyframes rotationBack {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}

@keyframes rotationBack {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(-360deg);
    transform: rotate(-360deg);
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes bounceIn {
  0% {
    -webkit-transform: scale(0.1);
    transform: scale(0.1);
    opacity: 0;
  }

  60% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    -webkit-transform: scale(0.1);
    transform: scale(0.1);
    opacity: 0;
  }

  60% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) scale(0.1);
    transform: translateX(-100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(25%) scale(1.2);
    transform: translateX(25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateX(0) scale(1);
    transform: translateX(0) scale(1);
  }
}

@keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) scale(0.1);
    transform: translateX(-100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(25%) scale(1.2);
    transform: translateX(25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateX(0) scale(1);
    transform: translateX(0) scale(1);
  }
}

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%) scale(0.1);
    transform: translateX(100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-25%) scale(1.2);
    transform: translateX(-25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateX(0) scale(1);
    transform: translateX(0) scale(1);
  }
}

@keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%) scale(0.1);
    transform: translateX(100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-25%) scale(1.2);
    transform: translateX(-25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateX(0) scale(1);
    transform: translateX(0) scale(1);
  }
}

@-webkit-keyframes bounceInTop {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%) scale(0.1);
    transform: translateY(-100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(25%) scale(1.2);
    transform: translateY(25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
  }
}

@keyframes bounceInTop {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%) scale(0.1);
    transform: translateY(-100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(25%) scale(1.2);
    transform: translateY(25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
  }
}

@-webkit-keyframes bounceInBottom {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%) scale(0.1);
    transform: translateY(100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-25%) scale(1.2);
    transform: translateY(-25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
  }
}

@keyframes bounceInBottom {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%) scale(0.1);
    transform: translateY(100%) scale(0.1);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-25%) scale(1.2);
    transform: translateY(-25%) scale(1.2);
  }

  100% {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

.bounceInTop {
  -webkit-animation-name: bounceInTop;
  animation-name: bounceInTop;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

.bounceInBottom {
  -webkit-animation-name: bounceInBottom;
  animation-name: bounceInBottom;
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}

:root {
  --font-safe: Arial, Helvetica, sans-serif;
  --font: "Roboto", var(--font-safe);
  --font-cond: "Roboto Condensed", var(--font);
  --font-ico: "Font Awesome 6 Free";
  --ui-cor-brand-1: #00418f;
  --ui-cor-brand-1-rgb: 0, 65, 143;
  --ui-cor-brand-2: #E1B35C;
  --ui-cor-brand-2-rgb: 249, 172, 65;
  --ui-cor-brand-3: #9edb00;
  --ui-cor-brand-3-rgb: 158, 219, 0;
  --ui-cor-success: #67c000;
  --ui-cor-success-rgb: 103, 192, 0;
  --ui-cor-success-esc: #468300;
  --ui-cor-success-esc-rgb: 70, 131, 0;
  --ui-cor-success-clr: #efffdc;
  --ui-cor-success-clr-rgb: 239, 253, 220;
  --ui-cor-danger: #d44146;
  --ui-cor-danger-rgb: 212, 65, 70;
  --ui-cor-danger-esc: #8e050a;
  --ui-cor-danger-esc-rgb: 142, 5, 10;
  --ui-cor-danger-clr: #f5d9da;
  --ui-cor-danger-clr-rgb: 245, 217, 218;
  --ui-cor-warning: #eabc1b;
  --ui-cor-warning-rgb: 234, 188, 27;
  --ui-cor-warning-esc: #886a00;
  --ui-cor-warning-esc-rgb: 136, 106, 0;
  --ui-cor-warning-clr: #fff6d6;
  --ui-cor-warning-clr-rgb: 255, 246, 214;
  --ui-cor-info: #83e4e9;
  --ui-cor-info-rgb: 121, 228, 233;
  --ui-cor-info-esc: #085672;
  --ui-cor-info-esc-rgb: 8, 86, 114;
  --ui-cor-info-clr: #d3f3ff;
  --ui-cor-info-clr-rgb: 211, 243, 255;
  --ui-cor-neutra-1: #2c3239;
  --ui-cor-neutra-1-rgb: 44, 50, 57;
  --ui-cor-neutra-2: #404a57;
  --ui-cor-neutra-2-rgb: 64, 74, 87;
  --ui-cor-neutra-3: #67788d;
  --ui-cor-neutra-3-rgb: 103, 120, 141;
  --ui-cor-neutra-4: #9aadc6;
  --ui-cor-neutra-4-rgb: 154, 173, 198;
  --ui-cor-neutra-5: #bfcedf;
  --ui-cor-neutra-5-rgb: 191, 206, 223;
  --ui-cor-neutra-6: #d6e2f1;
  --ui-cor-neutra-6-rgb: 214, 226, 241;
  --ui-cor-neutra-7: #e1ebf6;
  --ui-cor-neutra-7-rgb: 225, 235, 246;
  --ui-cor-neutra-8: #edf4fc;
  --ui-cor-neutra-8-rgb: 237, 244, 252;
  --ui-cor-neutra-9: #f6fafe;
  --ui-cor-neutra-9-rgb: 246, 250, 254;
  --ui-cor-neutra-10: #fff;
  --ui-cor-neutra-10-rgb: 255, 255, 255;
  --bs-body-color: var(--ui-cor-neutra-1);
  --bs-gray-dark: var(--ui-cor-neutra-1);
  --bs-gray-100: var(--ui-cor-neutra-9);
  --bs-gray-200: var(--ui-cor-neutra-8);
  --bs-gray-300: var(--ui-cor-neutra-7);
  --bs-gray-400: var(--ui-cor-neutra-6);
  --bs-gray-500: var(--ui-cor-neutra-5);
  --bs-gray-600: var(--ui-cor-neutra-4);
  --bs-gray-700: var(--ui-cor-neutra-3);
  --bs-gray-800: var(--ui-cor-neutra-2);
  --bs-gray-900: var(--ui-cor-neutra-1);
  --bs-table-hover-bg: var(--ui-cor-neutra-9);
  --ui-gutter-x: 0.75rem;
  --ui-bar-h: 60px;
  --ui-body-bgc: var(--ui-cor-neutra-8);
  --ui-body-bgc-rgb: var(--ui-cor-neutra-8-rgb);
  --header-bg: #fff;
  --header-cor: var(--ui-cor-neutra-3);
  --header-sep: var(--ui-cor-neutra-7);
  --header-nav-item-hover-bg: var(--ui-cor-neutra-8);
  --header-submenu-bgc: #fff;
  --header-submenu-bdtc: var(--ui-cor-brand-2);
  --header-submenu-bdtz: 4px;
  --header-submenu-bdc: var(--ui-cor-neutra-7);
  --header-submenu-title-cor: var(--ui-cor-neutra-3);
  --sidebar-toggle-ico-cor: var(--ui-cor-neutra-3);
  --sidebar-open-w: 275px;
  --sidebar-collapsed-w: var(--ui-bar-h);
  --sidebar-bgc: transparent;
  --sidebar-collapsed-bgc: var(--ui-cor-neutra-7);
  --sidebar-nav-item-bgc: transparent;
  --sidebar-nav-item-cor: var(--ui-cor-neutra-3);
  --sidebar-nav-item-hover-bgc: var(--ui-cor-neutra-5);
  --sidebar-nav-item-hover-cor: var(--ui-cor-neutra-2);
  --sidebar-nav-item-hover-bdc: #fff;
  --sidebar-nav-item-hover-bdlc: var(--ui-cor-brand-2);
  --sidebar-search-ico-cor: var(--ui-cor-neutra-4);
  --loading-loader-size: 100px;
  --loading-loader-gap: 16px;
  --loading-loader-width: 4px;
  --loading-bgc: var(--ui-cor-brand-1-rgb);
  --loading-bgop: 75%;
  --loading-loader-cor: var(--ui-cor-brand-2);
  --overlay-bg: rgba(var(--loading-bgc), var(--loading-bgop));
  --transition: 300ms all ease-in-out;
  --trans: var(--transition);
  --ui-modal-footer-gap: 0.5rem;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
  padding: 0;
}

ul,
ol {
  list-style: none;
}

a {
  text-decoration: none;
}

html {
  font-size: 16px;
}

html,
body,
.app {
  background-color: var(--ui-body-bgc);
  height: 100%;
  margin: 0;
  padding: 0;
  font-family: var(--font);
  max-height: 100dvh;
  overflow: hidden;
  position: relative;
  scroll-behavior: smooth;
}

body {
  cursor: default;
}

.body {
  background-color: var(--ui-body-bgc);
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

pre,
code,
.code {
  border: 0;
  display: inline-block;
  font-family: monospace;
  padding: 3px 6px;
  margin-left: 2px;
  margin-right: 2px;
  border-radius: 6px;
  background-color: rgba(0, 0, 0, 0.03);
  -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
}

pre {
  display: block;
}

h1 {
  font-weight: 300;
}

hr {
  border: 0;
  border-top: 1px solid var(--ui-cor-neutra-4);
  margin-top: 2em;
  margin-bottom: 2em;
}

.list {
  list-style: disc;
  padding-left: 2em;
  margin-bottom: 1em;
}

.list li {
  margin-bottom: 0.25em;
}

.list li::marker {
  color: var(--ui-cor-brand-2);
}

img {
  display: block;
  margin: 0;
  max-width: 100%;
}

@media (max-width: 991px) {
  html {
    font-size: 15px;
  }

  h1 {
    font-size: 1.75rem;
    font-weight: 500;
  }
}

.hide {
  display: none !important;
}

.text-bg-primary {
  background-color: var(--ui-cor-brand-1) !important;
}

.text-bg-success {
  background-color: var(--ui-cor-success) !important;
}

:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

.grid {
  display: grid;
  grid-template-rows: repeat(var(--bs-rows, 1), 1fr);
  grid-template-columns: repeat(var(--bs-columns, 12), 1fr);
  gap: var(--bs-gap, 1.5rem);
}

.grid .g-col-1 {
  grid-column: auto / span 1;
}

.grid .g-col-2 {
  grid-column: auto / span 2;
}

.grid .g-col-3 {
  grid-column: auto / span 3;
}

.grid .g-col-4 {
  grid-column: auto / span 4;
}

.grid .g-col-5 {
  grid-column: auto / span 5;
}

.grid .g-col-6 {
  grid-column: auto / span 6;
}

.grid .g-col-7 {
  grid-column: auto / span 7;
}

.grid .g-col-8 {
  grid-column: auto / span 8;
}

.grid .g-col-9 {
  grid-column: auto / span 9;
}

.grid .g-col-10 {
  grid-column: auto / span 10;
}

.grid .g-col-11 {
  grid-column: auto / span 11;
}

.grid .g-col-12 {
  grid-column: auto / span 12;
}

.grid .g-start-1 {
  grid-column-start: 1;
}

.grid .g-start-2 {
  grid-column-start: 2;
}

.grid .g-start-3 {
  grid-column-start: 3;
}

.grid .g-start-4 {
  grid-column-start: 4;
}

.grid .g-start-5 {
  grid-column-start: 5;
}

.grid .g-start-6 {
  grid-column-start: 6;
}

.grid .g-start-7 {
  grid-column-start: 7;
}

.grid .g-start-8 {
  grid-column-start: 8;
}

.grid .g-start-9 {
  grid-column-start: 9;
}

.grid .g-start-10 {
  grid-column-start: 10;
}

.grid .g-start-11 {
  grid-column-start: 11;
}

@media (min-width: 576px) {
  .grid .g-col-sm-1 {
    grid-column: auto / span 1;
  }

  .grid .g-col-sm-2 {
    grid-column: auto / span 2;
  }

  .grid .g-col-sm-3 {
    grid-column: auto / span 3;
  }

  .grid .g-col-sm-4 {
    grid-column: auto / span 4;
  }

  .grid .g-col-sm-5 {
    grid-column: auto / span 5;
  }

  .grid .g-col-sm-6 {
    grid-column: auto / span 6;
  }

  .grid .g-col-sm-7 {
    grid-column: auto / span 7;
  }

  .grid .g-col-sm-8 {
    grid-column: auto / span 8;
  }

  .grid .g-col-sm-9 {
    grid-column: auto / span 9;
  }

  .grid .g-col-sm-10 {
    grid-column: auto / span 10;
  }

  .grid .g-col-sm-11 {
    grid-column: auto / span 11;
  }

  .grid .g-col-sm-12 {
    grid-column: auto / span 12;
  }

  .grid .g-start-sm-1 {
    grid-column-start: 1;
  }

  .grid .g-start-sm-2 {
    grid-column-start: 2;
  }

  .grid .g-start-sm-3 {
    grid-column-start: 3;
  }

  .grid .g-start-sm-4 {
    grid-column-start: 4;
  }

  .grid .g-start-sm-5 {
    grid-column-start: 5;
  }

  .grid .g-start-sm-6 {
    grid-column-start: 6;
  }

  .grid .g-start-sm-7 {
    grid-column-start: 7;
  }

  .grid .g-start-sm-8 {
    grid-column-start: 8;
  }

  .grid .g-start-sm-9 {
    grid-column-start: 9;
  }

  .grid .g-start-sm-10 {
    grid-column-start: 10;
  }

  .grid .g-start-sm-11 {
    grid-column-start: 11;
  }
}

@media (min-width: 768px) {
  .grid .g-col-md-1 {
    grid-column: auto / span 1;
  }

  .grid .g-col-md-2 {
    grid-column: auto / span 2;
  }

  .grid .g-col-md-3 {
    grid-column: auto / span 3;
  }

  .grid .g-col-md-4 {
    grid-column: auto / span 4;
  }

  .grid .g-col-md-5 {
    grid-column: auto / span 5;
  }

  .grid .g-col-md-6 {
    grid-column: auto / span 6;
  }

  .grid .g-col-md-7 {
    grid-column: auto / span 7;
  }

  .grid .g-col-md-8 {
    grid-column: auto / span 8;
  }

  .grid .g-col-md-9 {
    grid-column: auto / span 9;
  }

  .grid .g-col-md-10 {
    grid-column: auto / span 10;
  }

  .grid .g-col-md-11 {
    grid-column: auto / span 11;
  }

  .grid .g-col-md-12 {
    grid-column: auto / span 12;
  }

  .grid .g-start-md-1 {
    grid-column-start: 1;
  }

  .grid .g-start-md-2 {
    grid-column-start: 2;
  }

  .grid .g-start-md-3 {
    grid-column-start: 3;
  }

  .grid .g-start-md-4 {
    grid-column-start: 4;
  }

  .grid .g-start-md-5 {
    grid-column-start: 5;
  }

  .grid .g-start-md-6 {
    grid-column-start: 6;
  }

  .grid .g-start-md-7 {
    grid-column-start: 7;
  }

  .grid .g-start-md-8 {
    grid-column-start: 8;
  }

  .grid .g-start-md-9 {
    grid-column-start: 9;
  }

  .grid .g-start-md-10 {
    grid-column-start: 10;
  }

  .grid .g-start-md-11 {
    grid-column-start: 11;
  }
}

@media (min-width: 992px) {
  .grid .g-col-lg-1 {
    grid-column: auto / span 1;
  }

  .grid .g-col-lg-2 {
    grid-column: auto / span 2;
  }

  .grid .g-col-lg-3 {
    grid-column: auto / span 3;
  }

  .grid .g-col-lg-4 {
    grid-column: auto / span 4;
  }

  .grid .g-col-lg-5 {
    grid-column: auto / span 5;
  }

  .grid .g-col-lg-6 {
    grid-column: auto / span 6;
  }

  .grid .g-col-lg-7 {
    grid-column: auto / span 7;
  }

  .grid .g-col-lg-8 {
    grid-column: auto / span 8;
  }

  .grid .g-col-lg-9 {
    grid-column: auto / span 9;
  }

  .grid .g-col-lg-10 {
    grid-column: auto / span 10;
  }

  .grid .g-col-lg-11 {
    grid-column: auto / span 11;
  }

  .grid .g-col-lg-12 {
    grid-column: auto / span 12;
  }

  .grid .g-start-lg-1 {
    grid-column-start: 1;
  }

  .grid .g-start-lg-2 {
    grid-column-start: 2;
  }

  .grid .g-start-lg-3 {
    grid-column-start: 3;
  }

  .grid .g-start-lg-4 {
    grid-column-start: 4;
  }

  .grid .g-start-lg-5 {
    grid-column-start: 5;
  }

  .grid .g-start-lg-6 {
    grid-column-start: 6;
  }

  .grid .g-start-lg-7 {
    grid-column-start: 7;
  }

  .grid .g-start-lg-8 {
    grid-column-start: 8;
  }

  .grid .g-start-lg-9 {
    grid-column-start: 9;
  }

  .grid .g-start-lg-10 {
    grid-column-start: 10;
  }

  .grid .g-start-lg-11 {
    grid-column-start: 11;
  }
}

@media (min-width: 1200px) {
  .grid .g-col-xl-1 {
    grid-column: auto / span 1;
  }

  .grid .g-col-xl-2 {
    grid-column: auto / span 2;
  }

  .grid .g-col-xl-3 {
    grid-column: auto / span 3;
  }

  .grid .g-col-xl-4 {
    grid-column: auto / span 4;
  }

  .grid .g-col-xl-5 {
    grid-column: auto / span 5;
  }

  .grid .g-col-xl-6 {
    grid-column: auto / span 6;
  }

  .grid .g-col-xl-7 {
    grid-column: auto / span 7;
  }

  .grid .g-col-xl-8 {
    grid-column: auto / span 8;
  }

  .grid .g-col-xl-9 {
    grid-column: auto / span 9;
  }

  .grid .g-col-xl-10 {
    grid-column: auto / span 10;
  }

  .grid .g-col-xl-11 {
    grid-column: auto / span 11;
  }

  .grid .g-col-xl-12 {
    grid-column: auto / span 12;
  }

  .grid .g-start-xl-1 {
    grid-column-start: 1;
  }

  .grid .g-start-xl-2 {
    grid-column-start: 2;
  }

  .grid .g-start-xl-3 {
    grid-column-start: 3;
  }

  .grid .g-start-xl-4 {
    grid-column-start: 4;
  }

  .grid .g-start-xl-5 {
    grid-column-start: 5;
  }

  .grid .g-start-xl-6 {
    grid-column-start: 6;
  }

  .grid .g-start-xl-7 {
    grid-column-start: 7;
  }

  .grid .g-start-xl-8 {
    grid-column-start: 8;
  }

  .grid .g-start-xl-9 {
    grid-column-start: 9;
  }

  .grid .g-start-xl-10 {
    grid-column-start: 10;
  }

  .grid .g-start-xl-11 {
    grid-column-start: 11;
  }
}

@media (min-width: 1400px) {
  .grid .g-col-xxl-1 {
    grid-column: auto / span 1;
  }

  .grid .g-col-xxl-2 {
    grid-column: auto / span 2;
  }

  .grid .g-col-xxl-3 {
    grid-column: auto / span 3;
  }

  .grid .g-col-xxl-4 {
    grid-column: auto / span 4;
  }

  .grid .g-col-xxl-5 {
    grid-column: auto / span 5;
  }

  .grid .g-col-xxl-6 {
    grid-column: auto / span 6;
  }

  .grid .g-col-xxl-7 {
    grid-column: auto / span 7;
  }

  .grid .g-col-xxl-8 {
    grid-column: auto / span 8;
  }

  .grid .g-col-xxl-9 {
    grid-column: auto / span 9;
  }

  .grid .g-col-xxl-10 {
    grid-column: auto / span 10;
  }

  .grid .g-col-xxl-11 {
    grid-column: auto / span 11;
  }

  .grid .g-col-xxl-12 {
    grid-column: auto / span 12;
  }

  .grid .g-start-xxl-1 {
    grid-column-start: 1;
  }

  .grid .g-start-xxl-2 {
    grid-column-start: 2;
  }

  .grid .g-start-xxl-3 {
    grid-column-start: 3;
  }

  .grid .g-start-xxl-4 {
    grid-column-start: 4;
  }

  .grid .g-start-xxl-5 {
    grid-column-start: 5;
  }

  .grid .g-start-xxl-6 {
    grid-column-start: 6;
  }

  .grid .g-start-xxl-7 {
    grid-column-start: 7;
  }

  .grid .g-start-xxl-8 {
    grid-column-start: 8;
  }

  .grid .g-start-xxl-9 {
    grid-column-start: 9;
  }

  .grid .g-start-xxl-10 {
    grid-column-start: 10;
  }

  .grid .g-start-xxl-11 {
    grid-column-start: 11;
  }
}

@media (max-width: 767px) {
  .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

:root {
  --scrollbar-track: var(--ui-cor-neutra-8);
  --scrollbar-thumb: var(--ui-cor-neutra-4);
}

* {
  scrollbar-width: thin;
  scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
}

*::-webkit-scrollbar {
  width: 12px;
}

*::-webkit-scrollbar-track {
  background: var(--scrollbar-track);
}

*::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-thumb);
  border-radius: 20px;
  border: 3px solid var(--scrollbar-track);
}

:root {
  --form-control-min-h: 24px;
  --form-control-btn-min-h: 40px;
  --form-control-min-h-mobile: 30px;
  --form-control-btn-min-h-mobile: 50px;
}

@media (max-width: 991px) {
  :root {
    --form-control-min-h: var(--form-control-min-h-mobile);
  }
}

input,
textarea,
select {
  margin: 0;
  padding: 10px;
  border: 1px solid var(--ui-cor-neutra-4);
  border-radius: 4px;
  outline: none;
  background-color: #fff;
  font-family: Roboto, Arial, sans-serif;
  font-size: 1rem;
  color: var(--ui-cor-neutra-2);
  -webkit-transition: var(--trans);
  transition: var(--trans);
  width: 100%;
  min-height: var(--form-control-min-h);
}

input:hover,
textarea:hover,
select:hover,
input:hover,
textarea:hover,
select:hover,
input:hover,
textarea:hover,
select:hover {
  border-color: var(--ui-cor-neutra-3);
}

input:focus,
textarea:focus,
select:focus,
input:focus,
textarea:focus,
select:focus,
input:focus,
textarea:focus,
select:focus {
  border-color: var(--ui-cor-neutra-2);
}

input:invalid,
textarea:invalid,
select:invalid,
input:invalid,
textarea:invalid,
select:invalid,
input:invalid,
textarea:invalid,
select:invalid {
  border-color: var(--ui-cor-danger);
}

input:disabled,
textarea:disabled,
select:disabled,
input:disabled,
textarea:disabled,
select:disabled,
input:disabled,
textarea:disabled,
select:disabled {
  background-color: #f0f0f0;
  color: var(--ui-cor-neutra-5);
  cursor: not-allowed;
}

select {
  cursor: pointer;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgdmlld0JveD1iYXNlbGluZSIgdmlld0JvcmRlcmVyPSJ0cnVlIj4KICA8cGF0aCBmaWxsPSIjMDAwMDAwIiBkPSJNMSAxTDQgMTBWMTgiLz4KPC9zdmc+Cg==");
  background-position: right center;
  background-size: 16px 16px;
  padding-right: 25px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%23000000%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 0.6em;
  background-position: calc(100% - 1em) center;
  background-repeat: no-repeat;
}

select:focus {
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Eup-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C8.707%2C6%2C4.414%2C1.707%2C8.707A1%2C1%2C0%2C0%2C0%2C.293%2C7.293l5-5a1%2C1%2C0%2C0%2C1%2C1.414%2C0l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0A1%2C1%2C0%2C0%2C0%2C10.293%2C8.707Z%22%20fill%3D%22%23000000%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

select.option-selected {
  border-color: var(--ui-cor-success);
}

select::-ms-expand {
  display: none;
}

textarea {
  resize: vertical;
}

*::-webkit-input-placeholder {
  font-style: italic;
  font-family: Roboto;
  font-size: 0.9rem;
  color: var(--ui-cor-neutra-7);
}

*:-ms-input-placeholder {
  font-style: italic;
  font-family: Roboto;
  font-size: 0.9rem;
  color: var(--ui-cor-neutra-7);
}

*::-ms-input-placeholder {
  font-style: italic;
  font-family: Roboto;
  font-size: 0.9rem;
  color: var(--ui-cor-neutra-7);
}

*::placeholder {
  font-style: italic;
  font-family: Roboto;
  font-size: 0.9rem;
  color: var(--ui-cor-neutra-7);
}

label {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

input {
  accent-color: var(--ui-cor-brand-1);
}

.form {
  margin-bottom: 20px;
}

.form-control {
  --bs-border-color: var(--ui-cor-neutra-4);
}

.input-group-text {
  --bs-border-color: var(--ui-cor-neutra-4);
}

.form-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 3px;
  color: var(--ui-cor-neutra-3);
  font-size: 0.9rem;
  font-weight: 400;
  margin-bottom: 0;
}

.form-label:hover {
  color: var(--ui-cor-neutra-2);
}

.checkbox,
.radio {
  --bg: var(--ui-cor-brand-1);
  border: 2px solid var(--ui-cor-neutra-5);
  color: var(--ui-cor-neutra-3);
  border-radius: 6px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 10px;
  padding-right: 20px;
  position: relative;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-size: 0.9rem;
  overflow: hidden;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  z-index: 0;
}

.checkbox input,
.radio input {
  cursor: pointer;
  display: block;
  margin: 0;
  width: auto;
  position: relative;
  z-index: 2;
  accent-color: var(--ui-cor-brand-1);
  position: absolute;
  opacity: 0;
  visibility: hidden;
}

.checkbox span,
.radio span {
  background-color: transparent;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 8px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 1;
}

.checkbox input:checked+span,
.radio input:checked+span {
  --c: #fff;
  color: var(--c);
}

.checkbox span:after,
.radio span:after {
  content: "";
  display: block;
  position: absolute;
  background: var(--bg);
  line-height: 1em;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  width: auto;
  height: auto;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  border-radius: 0;
  opacity: 1;
}

.checkbox input:checked+span:after,
.radio input:checked+span:after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.checkbox span:before,
.radio span:before {
  font-family: var(--font-ico);
  font-size: 16px;
  line-height: 1em;
  font-weight: 400;
}

.checkbox.-active,
.radio.-active {
  border-color: var(--bg);
}

.checkbox span:before,
.radio span:before {
  content: "\f0c8";
}

.checkbox input:checked+span:before,
.radio input:checked+span:before {
  content: "\f14a";
  font-weight: 900;
}

.checkbox:hover,
.radio:hover {
  color: var(--bg);
  border-color: inherit;
}

.checkbox+.checkbox,
.checkbox+.radio,
.radio+.checkbox,
.radio+.radio {
  margin-left: 2px;
}

.radio span:before {
  content: "\f111";
}

.radio input:checked+span:before {
  content: "\f192";
}

.checkbox-list,
.radio-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
}

.radio-list .radio,
.checkbox-list .checkbox {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 100%;
}

.radio-list.inline .radio,
.checkbox-list.inline .checkbox {
  -webkit-box-flex: initial;
  -ms-flex-positive: initial;
  flex-grow: initial;
  width: auto;
}

.checkbox-list.vert,
.radio-list.vert {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 5px;
}

.checkbox-list.vert .checkbox,
.radio-list.vert .checkbox,
.checkbox-list.vert .radio,
.radio-list.vert .radio {
  margin-left: 0;
}

.switcher {
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  line-height: 1em;
  position: relative;
  min-height: var(--ui-btn-min-height);
}

.switcher b {
  --w: 40px;
  display: inline-block;
  background: var(--ui-cor-neutra-5);
  -webkit-box-shadow: 0 0 0 1px var(--ui-cor-neutra-9);
  box-shadow: 0 0 0 1px var(--ui-cor-neutra-9);
  border-radius: 16px;
  min-width: var(--w);
  width: var(--w);
  height: 24px;
  position: relative;
  vertical-align: middle;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.switcher b:before {
  content: "";
  display: block;
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(0, #fff),
      to(#eee));
  background: linear-gradient(to bottom, #fff 0, #eee 100%);
  border-radius: 50px;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.25);
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.25);
  width: 18px;
  height: 18px;
  position: absolute;
  top: 3px;
  left: 3px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.switcher b:active:before {
  width: 24px;
}

.switcher:hover b:before {
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(0, #fff),
      to(#fff));
  background: linear-gradient(to bottom, #fff 0, #fff 100%);
}

.switcher:hover span {
  color: var(--ui-cor-neutra-2);
}

.switcher input {
  position: absolute;
  visibility: hidden;
}

.switcher input:checked+b {
  background: var(--ui-cor-success);
}

.switcher input:checked+b:before {
  left: calc(100% - (18px + 3px));
}

.switcher input:checked+b:active:before {
  -webkit-transform: translateX(-6px);
  transform: translateX(-6px);
  width: 24px;
}

.switcher span {
  position: relative;
  font-size: 0.95em;
  color: var(--ui-cor-neutra-3);
}

.-right .switcher span,
.switcher.-right span {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.switcher.-full {
  width: 100%;
}

.-divided .switcher:not(:last-child) {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  padding-bottom: 10px;
}

.switcher-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}

.switcher-group .switcher {
  width: 100%;
}

#loading {
  position: fixed;
  cursor: wait;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999;
  background-color: var(--overlay-bg);
  -webkit-backdrop-filter: blur(5px) grayscale(1);
  backdrop-filter: blur(5px) grayscale(1);
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

body.is-ready #loading {
  display: none;
}

#loading .loader {
  width: var(--loading-loader-size);
  height: var(--loading-loader-size);
  border-radius: 50%;
  display: inline-block;
  position: relative;
  border: var(--loading-loader-width) solid;
  border-color: #fff #fff transparent transparent;
  -webkit-animation: rotation 1s linear infinite;
  animation: rotation 1s linear infinite;
}

#loading .loader::after,
#loading .loader::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border: var(--loading-loader-width) solid;
  border-color: transparent transparent var(--loading-loader-cor) var(--loading-loader-cor);
  width: calc(var(--loading-loader-size) - var(--loading-loader-gap));
  height: calc(var(--loading-loader-size) - var(--loading-loader-gap));
  border-radius: 50%;
  -webkit-animation: rotationBack 0.5s linear infinite;
  animation: rotationBack 0.5s linear infinite;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}

#loading .loader::before {
  width: calc(var(--loading-loader-size) - var(--loading-loader-gap) * 2);
  height: calc(var(--loading-loader-size) - var(--loading-loader-gap) * 2);
  border-color: #fff #fff transparent transparent;
  -webkit-animation: rotation 1.5s linear infinite;
  animation: rotation 1.5s linear infinite;
}

button {
  cursor: pointer;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

:root {
  --ui-btn-min-height: var(--form-control-btn-min-h);
  --ui-btn-min-height-mobile: var(--form-control-btn-min-h-mobile);
}

.btn {
  --bs-btn-padding-x: 1rem;
  --bs-btn-padding-y: 0.3rem;
  --bs-btn-border-radius: 4px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: var(--ui-btn-min-height);
  position: relative;
  text-transform: uppercase;
  font-size: 0.9em;
  font-family: var(--font);
  font-weight: bold;
  -webkit-transition: all ease 150ms;
  transition: all ease 150ms;
}

.btn:before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: -webkit-gradient(linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.2)),
      to(rgba(0, 0, 0, 0.05)));
  background-image: linear-gradient(rgba(255, 255, 255, 0.2),
      rgba(0, 0, 0, 0.05));
  content: "";
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.btn:active {
  -webkit-transform: scale(0.95);
  transform: scale(0.95);
  -webkit-box-shadow: 0 0 0 0 transparent, 0 2px 3px 0 transparent,
    0 1px 5px 0 rgba(0, 0, 0, 0.3) inset;
  box-shadow: 0 0 0 0 transparent, 0 2px 3px 0 transparent,
    0 1px 5px 0 rgba(0, 0, 0, 0.3) inset;
}

.btn:active:before {
  background-image: -webkit-gradient(linear,
      left top,
      left bottom,
      from(rgba(0, 0, 0, 0.2)),
      to(rgba(255, 255, 255, 0.1)));
  background-image: linear-gradient(rgba(0, 0, 0, 0.2),
      rgba(255, 255, 255, 0.1));
  -webkit-box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.1) inset;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.1) inset;
}

.btn [class*="btn-outline-"]:before {
  display: none;
}

.btn i {
  font-size: 1rem;
}

.btn:hover,
.btn:focus {
  -webkit-filter: brightness(1.1);
  filter: brightness(1.1);
}

.btn-transp {
  background-color: transparent;
  --bs-btn-color: var(--ui-cor-neutra-3);
  --bs-btn-hover-color: var(--ui-cor-neutra-2);
}

.btn-transp:before {
  display: none;
}

.btn-default {
  --bs-btn-color: var(--ui-cor-neutra-3);
  --bs-btn-border-color: var(--ui-cor-neutra-4);
  --bs-btn-hover-border-color: var(--ui-cor-neutra-2);
}

.btn-outline-default {
  --bs-btn-color: var(--ui-cor-neutra-3);
  --bs-btn-border-color: var(--ui-cor-neutra-4);
  --bs-btn-hover-color: var(--ui-cor-neutra-1);
  --bs-btn-hover-border-color: var(--ui-cor-neutra-2);
}

.btn-neutra {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--ui-cor-neutra-3);
  --bs-btn-border-color: var(--ui-cor-neutra-3);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--ui-cor-neutra-2);
  --bs-btn-hover-border-color: var(--ui-cor-neutra-2);
  --bs-btn-focus-shadow-rgb: var(--ui-cor-neutra-3-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--ui-cor-neutra-2);
  --bs-btn-active-border-color: var(--ui-cor-neutra-1);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--ui-cor-neutra-3);
  --bs-btn-disabled-border-color: var(--ui-cor-neutra-3);
}

.btn-outline-neutra {
  --bs-btn-color: var(--ui-cor-neutra-3);
  --bs-btn-border-color: var(--ui-cor-neutra-3);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--ui-cor-neutra-3);
  --bs-btn-hover-border-color: var(--ui-cor-neutra-3);
  --bs-btn-focus-shadow-rgb: var(--ui-cor-neutra-3-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--ui-cor-neutra-3);
  --bs-btn-active-border-color: var(--ui-cor-neutra-3);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--ui-cor-neutra-3);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--ui-cor-neutra-3);
  --bs-gradient: none;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--ui-cor-success);
  --bs-btn-border-color: var(--ui-cor-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--ui-cor-success);
  --bs-btn-hover-border-color: var(--ui-cor-success);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--ui-cor-success);
  --bs-btn-active-border-color: var(--ui-cor-success);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--ui-cor-success);
  --bs-btn-disabled-border-color: var(--ui-cor-success);
}

.btn-outline-success {
  --bs-btn-color: var(--ui-cor-success);
  --bs-btn-border-color: var(--ui-cor-success);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--ui-cor-success);
  --bs-btn-hover-border-color: var(--ui-cor-success);
  --bs-btn-focus-shadow-rgb: var(--ui-cor-success-rgb);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--ui-cor-success);
  --bs-btn-active-border-color: var(--ui-cor-success);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--ui-cor-success);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--ui-cor-success);
  --bs-gradient: none;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--ui-cor-danger);
  --bs-btn-border-color: var(--ui-cor-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--ui-cor-danger);
  --bs-btn-hover-border-color: var(--ui-cor-danger);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--ui-cor-danger);
  --bs-btn-active-border-color: var(--ui-cor-danger);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: var(--ui-cor-danger);
  --bs-btn-disabled-border-color: var(--ui-cor-danger);
}

.btn-warning {
  --bs-btn-color: #111;
  --bs-btn-bg: var(--ui-cor-warning);
  --bs-btn-border-color: var(--ui-cor-warning);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: var(--ui-cor-warning);
  --bs-btn-hover-border-color: var(--ui-cor-warning);
  --bs-btn-focus-shadow-rgb: 60, 153, 110;
  --bs-btn-active-color: #111;
  --bs-btn-active-bg: var(--ui-cor-warning);
  --bs-btn-active-border-color: var(--ui-cor-warning);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #111;
  --bs-btn-disabled-bg: var(--ui-cor-warning);
  --bs-btn-disabled-border-color: var(--ui-cor-warning);
}

.btn-outline-warning {
  --bs-btn-color: var(--ui-cor-warning-esc);
  --bs-btn-border-color: var(--ui-cor-warning);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: var(--ui-cor-warning);
  --bs-btn-hover-border-color: var(--ui-cor-warning);
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: var(--ui-cor-warning);
  --bs-btn-active-border-color: var(--ui-cor-warning);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: var(--ui-cor-warning);
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: var(--ui-cor-warning);
  --bs-gradient: none;
}

@media (max-width: 991px) {
  .btn {
    width: 100%;
  }

  .main-content .btn,
  .modal .btn {
    min-height: var(--ui-btn-min-height-mobile);
  }
}

@media (max-width: 991px) {
  .btn-group {
    min-width: 100%;
  }
}

:root {
  --ui-grid-accent-color: var(--ui-cor-neutra-3);
  --pagination-txt-color: #fff;
}

table .td-min {
  width: 1%;
}

.tabela :where(th, td) {
  padding: 10px 8px;
  -webkit-transition: all ease 200ms;
  transition: all ease 200ms;
}

.tabela thead th {
  background-color: var(--ui-grid-accent-color, var(--ui-cor-brand-2));
  color: #fff;
  text-transform: uppercase;
  font-size: 0.9rem;
  white-space: nowrap;
}

.tabela tbody td {
  font-size: 0.9rem;
}

.tabela-hover td.col-hover {
  -webkit-filter: brightness(0.95) saturate(1.2);
  filter: brightness(0.95) saturate(1.2);
}

.tabela-hover>tbody>tr:hover>td.col-hover {
  -webkit-filter: brightness(0.9) saturate(1.2);
  filter: brightness(0.9) saturate(1.2);
  color: var(--ui-cor-neutra-1);
}

.tabela> :not(caption)>*>* {
  padding: 0.6rem 0.6rem;
}

.tabela> :not(caption)>*>th {
  padding: 0.75rem 0.6rem;
}

@media (max-width: 991px) {
  .tabela .btn {
    margin: 0;
    min-height: var(--ui-btn-min-height);
  }

  .tabela .btn+.btn {
    margin: 0 !important;
  }
}

.tabela-success {
  --bs-table-bg: #e1ffcc;
  --bs-table-color: #3f850c;
  --bs-table-border-color: #bfd9ad;
  --bs-table-striped-bg: #d6f2c2;
  --bs-table-striped-color: #3c7e0b;
  --bs-table-hover-bg: #cbe6b8;
  --bs-table-hover-color: #39780b;
}

.tabela-danger {
  --bs-table-bg: #fcc;
  --bs-table-color: #850c0c;
  --bs-table-border-color: #d9adad;
  --bs-table-striped-bg: #f2c2c2;
  --bs-table-striped-color: #7e0b0b;
  --bs-table-hover-bg: #e6b8b8;
  --bs-table-hover-color: #780b0b;
}

.ui-grid {
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  border: 2px solid var(--ui-grid-accent-color);
  border-radius: 6px;
}

.ui-grid :where(td) {
  vertical-align: middle;
}

.ui-grid :where(table:last-child) {
  margin-bottom: 0;
}

.ui-grid table {
  margin-bottom: 0;
}

.ui-grid-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: 2px;
}

.ui-grid-pagination .btn {
  background-color: transparent;
  color: var(--pagination-txt-color);
  border-color: transparent;
}

.ui-grid-pagination .btn:not(:first-child) {
  border-left-color: rgba(0, 0, 0, 0.15);
}

.ui-grid-pagination .btn:before {
  opacity: 0;
}

.ui-grid-pagination .btn:hover,
.ui-grid-pagination .btn:focus {
  background-color: rgba(0, 0, 0, 0.15);
}

.ui-grid-pagination .btn:active {
  color: var(--pagination-txt-color);
  border-color: transparent !important;
}

.ui-grid-pagination .btn.active {
  background-color: var(--ui-cor-brand-2);
}

.ui-grid-pagination .btn-group {
  background-color: var(--ui-grid-accent-color);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.alert,
.toast {
  --bs-toast-spacing: 20px;
  --bgc: var(--ui-cor-neutra-3);
  --c: #fff;
  background-color: var(--bgc);
  color: var(--c);
  border: 2px solid #fff;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  margin-bottom: var(--bs-toast-spacing);
}

.alert-succes,
.toast-succes,
.alert.success,
.toast.success {
  --bgc: var(--ui-cor-success);
}

.alert-danger,
.toast-danger,
.alert-error,
.toast-error,
.alert.danger,
.toast.danger,
.alert.error,
.toast.error {
  --bgc: var(--ui-cor-danger);
}

.alert-warning,
.toast-warning,
.alert.warning,
.toast.warning {
  --bgc: var(--ui-cor-warning);
  --c: #000;
}

.alert-info,
.toast-info,
.alert.info,
.toast.info {
  --bgc: var(--ui-cor-info);
  --c: #000;
}

.alert-light,
.toast-light,
.alert.light,
.toast.light {
  --bgc: var(--ui-cor-neutra-8);
  --c: #000;
}

.toast-title {
  --bs-toast-padding-x: 20px;
  display: block;
}

.toast-body {
  --bs-toast-padding-x: 20px;
  display: block;
}

.toast-container_2 {
  --bgc: rgba(var(--ui-body-bgc-rgb), 0.1);
  height: 100dvh;
  background-image: -webkit-gradient(linear,
      right top,
      left top,
      color-stop(0, var(--bgc)),
      to(transparent));
  background-image: linear-gradient(-90deg, var(--bgc) 0, transparent);
  overflow-y: auto;
  bottom: 0;
  right: 0;
  top: 0;
  padding: 30px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  display: block;
  min-width: 300px;
  max-width: 100dvw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0;
  opacity: 0;
  -webkit-transform: translateX(101%);
  transform: translateX(101%);
  position: fixed;
}

.toast-container_2:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  --filter: blur(5px);
  --filter-grad: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.75) 60%);
  -webkit-backdrop-filter: var(--filter);
  backdrop-filter: var(--filter);
  -webkit-mask: var(--filter-grad);
  mask: var(--filter-grad);
  -webkit-transition: all ease 1s;
  transition: all ease 1s;
  opacity: 1;
  z-index: -1;
}

.toast-container_2.show {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
}

@media (max-width: 991px) {
  .toast-container_2 {
    padding: 15px;
  }

  .toast-container_2:after {
    display: none;
  }
}

.box {
  -webkit-box-shadow: 0 0 0 1px var(--ui-cor-neutra-6);
  box-shadow: 0 0 0 1px var(--ui-cor-neutra-6);
  padding: 20px;
  border-radius: 10px;
  margin-bottom: 0.5em;
}

.box:first-child {
  margin-top: 0;
}

.box+.box {
  margin-top: 0.5em;
}

.card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 10px;
  padding: 1.5em;
  -webkit-box-shadow: 0 3px 15px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.05);
  box-shadow: 0 3px 15px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.05);
  border-width: 2px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  border: 0;
}

mat-card {
  -webkit-box-shadow: 0 3px 15px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.05);
  box-shadow: 0 3px 15px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.05);
  border-width: 2px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  border: 0;
}

.card header {
  text-transform: uppercase;
  font-size: 0.9em;
  opacity: 0.75;
  justify-self: flex-start;
  -ms-flex-item-align: start;
  align-self: flex-start;
}

.card strong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.5em;
  font-size: 3em;
  letter-spacing: -1px;
  font-weight: 900;
  line-height: 1em;
  width: 100%;
  white-space: nowrap;
}

.card strong i {
  font-size: 0.65em;
  opacity: 0.75;
}

.card strong mat-icon {
  font-size: 0.65em;
  opacity: 0.75;
  height: 13px;
  width: 11px;
}

.card strong span {
  width: 10%;
}

.card footer {
  font-size: 0.95em;
  border-top: 1px solid rgba(221, 221, 221, 0.2);
  padding-top: 0.5em;
  opacity: 0.85;
}

.card:hover {
  -webkit-transform: translateY(-3px);
  transform: translateY(-3px);
  -webkit-box-shadow: 0 5px 8px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.15);
  box-shadow: 0 5px 8px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.15);
}

mat-card:hover {
  -webkit-transform: translateY(-3px);
  transform: translateY(-3px);
  -webkit-box-shadow: 0 5px 8px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.15);
  box-shadow: 0 5px 8px 0 rgba(var(--ui-cor-neutra-1-rgb), 0.15);
}

.card+.card {
  margin-top: 1em;
}

.card.-sm {
  font-size: 0.8em;
  gap: 5px;
}

.card.-sm strong {
  font-size: 1.5em;
}

.card.-md {
  font-size: 0.9em;
}

.card.-md strong {
  font-size: 2.25em;
}

.dashboard:not(:last-child) {
  margin-bottom: 3em;
}

.section {
  margin-bottom: 3rem;
}

.section:last-child {
  margin-bottom: 0;
}

.section-header {
  border-bottom: 2px solid var(--ui-cor-brand-2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.section-header+.section-content {
  border-top: 0;
}

.section-title {
  background-color: var(--ui-cor-brand-2);
  color: #fff;
  font-weight: bold;
  margin: 0 !important;
  font-size: 1.1rem;
  padding: 8px 5px 5px 20px;
  border-radius: 6px 0 0 0;
  position: relative;
}

.section-title:after {
  --section-title-bgi: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="48" height="39" fill="none"><path fill="black" d="M24.5 38.043h23l-35-35c-3.638-3.638-7.71-3-12.5-3v38h24.5Z"/></svg>');
  content: "";
  position: absolute;
  left: 100%;
  background: var(--section-title-bgi);
  background-size: cover;
  width: 45px;
  height: 100%;
  top: 0;
  z-index: 0;
}

.section-title:before {
  content: "";
  position: absolute;
  left: 100%;
  background: var(--ui-cor-brand-2);
  background-size: cover;
  width: 45px;
  height: 100%;
  top: 0;
  z-index: 1;
  mix-blend-mode: lighten;
}

.section-content {
  background-color: var(--ui-cor-neutra-10);
  border: 1px solid var(--ui-cor-neutra-6);
  border-top: 2px solid var(--ui-cor-brand-2);
  padding: 20px;
  border-radius: 0 0 10px 10px;
}

.tabs {
  --tabs-gap: 2px;
  --tab-padd: 8px 16px;
  --tab-min-height: initial;
  --tab-bgc: #ddd;
  --tab-c: #000;
  --tab-hover-bgc: #888;
  --tab-hover-c: #fff;
  --tab-active-bgc: #000;
  --tab-active-c: #fff;
  --tab-content-bdc: var(--tab-active-bgc);
  --tab-content-bdw: 1px;
  --tab-content-padd: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 1em;
  gap: var(--tabs-gap);
  row-gap: var(--tabs-gap);
}

.tabs:last-child {
  margin-bottom: 0;
}

.tabs>input {
  display: none;
}

.tabs .tab {
  padding: var(--tab-padd);
  background-color: var(--tab-bgc);
  color: var(--tab-c);
  cursor: pointer;
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  min-height: var(--tab-min-height);
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  line-height: 1em;
}

.tabs .tab:hover {
  background-color: var(--tab-hover-bgc);
  color: var(--tab-hover-c);
}

.tabs .tab-content {
  display: none;
  width: 100%;
  border: var(--tab-content-bdw) solid var(--tab-content-bdc);
  padding: var(--tab-content-padd);
  -webkit-transition: all ease 500ms;
  transition: all ease 500ms;
  margin-top: calc(var(--tabs-gap) * -1);
}

.tabs>input:checked+.tab {
  background-color: var(--tab-active-bgc);
  color: var(--tab-active-c);
  cursor: default;
}

.tabs>input:checked+.tab+.tab-content {
  display: block;
}

.tabs.-fill .tab {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.tabs.-full .tab {
  width: 100%;
  margin: 0;
}

.tabs.accordion .tab {
  width: 100%;
  -webkit-box-ordinal-group: initial;
  -ms-flex-order: initial;
  order: initial;
}

.tabs.accordion .tab-content {
  display: block;
}

.tabs.accordion>input+.tab {
  margin: 0;
  margin-top: var(--tabs-gap);
}

.tabs.accordion>input:first-child+.tab {
  margin: 0;
}

.tabs.accordion>input:checked[type="checkbox"]+.tab {
  cursor: pointer;
}

.tabs.accordion>input:checked[type="checkbox"]+.tab:hover {
  background-color: var(--tab-hover-bgc);
  color: var(--tab-hover-c);
}

.tabs.accordion>input:not(:checked)+.tab+.tab-content {
  border-top: 0;
  border-bottom: 0;
  border-color: transparent;
  overflow: hidden;
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
}

body .tabs {
  --tabs-gap: 3px;
  --tab-padd: 8px 16px;
  --tab-min-height: 40px;
  --tab-bgc: var(--ui-cor-neutra-6);
  --tab-c: var(--ui-cor-neutra-2);
  --tab-hover-bgc: var(--ui-cor-brand-1);
  --tab-hover-c: #fff;
  --tab-active-bgc: var(--ui-cor-brand-2);
  --tab-active-c: #fff;
  --tab-content-bdc: var(--ui-cor-neutra-6);
  --tab-content-bdw: 2px;
  --tab-content-padd: 20px;
  --tab-content-bdtc: var(--tab-active-bgc);
}

body .tabs .tab {
  border-radius: 6px 6px 0 0;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

body .tabs .tab-content {
  border-radius: 0 6px 6px 6px;
  background-color: var(--ui-cor-neutra-9);
  border-top-color: var(--tab-content-bdtc);
}

body .tabs.accordion {
  --tab-content-bdc: var(--tab-active-bgc);
}

body .tabs.accordion .tab {
  border-radius: 6px;
}

body .tabs.accordion .tab-content {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

body .tabs.accordion>input:checked+.tab {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.modal {
  position: fixed;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1000000;
  inset: 0 0 0 0;
  height: 100%;
  width: 100%;
  padding: 30px;
  -webkit-backdrop-filter: blur(5px) grayscale(1);
  backdrop-filter: blur(5px) grayscale(1);
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.modal:not(.-open) {
  -webkit-clip-path: inset(0 0 100% 0);
  clip-path: inset(0 0 100% 0);
  opacity: 0;
}

.modal:before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: var(--overlay-bg);
  height: 100%;
  width: 100%;
}

.modal-in {
  --scrollbar-track: var(--ui-cor-neutra-1);
  --scrollbar-thumb: var(--ui-cor-neutra-6);
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  inset: 0;
  padding: 20px;
  overflow: auto;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.modal-box {
  --bgc: var(--ui-cor-neutra-10);
  --scrollbar-track: var(--bgc);
  --scrollbar-thumb: var(--ui-cor-neutra-6);
  background-color: var(--bgc);
  margin: auto;
  position: relative;
  -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, 0.25);
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  border-radius: 6px;
  min-width: 360px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  resize: both;
  opacity: 0;
  -webkit-filter: blur(2px);
  filter: blur(2px);
}

.modal.-open .modal-in {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.modal.-open .modal-box {
  opacity: 1;
  -webkit-filter: blur(0);
  filter: blur(0);
}

.modal-header,
.modal-body,
.modal-footer {
  border-top: 2px solid var(--ui-cor-neutra-8);
  padding: 15px;
}

.modal-footer>* {
  margin: calc(var(--ui-modal-footer-gap) * .5);
}

.modal-header:first-child,
.modal-body:first-child,
.modal-footer:first-child {
  border-top-width: 0;
}

.modal-header {
  -webkit-box-shadow: #fff;
  box-shadow: #fff;
  padding-right: 65px;
  position: relative;
  font-weight: bold;
}

.modal-header.-empty-header {
  border-bottom: 0;
  min-height: 45px;
}

.modal-header.-empty-header+.modal-body {
  border-top: 0;
}

.modal-header .modal-close {
  background-color: transparent;
  border: 0;
  width: 50px;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  right: 2px;
  top: 2px;
  bottom: 2px;
  color: var(--ui-cor-neutra-3);
  border-radius: 4px;
}

.modal-header .modal-close:before {
  content: "\00D7";
  font-size: 30px;
}

.modal-header .modal-close:hover {
  background-color: var(--ui-cor-danger);
  color: #fff;
}

.modal-body {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  overflow: auto;
  max-width: 100%;
}

.modal .alert,
.modal .toast {
  --bs-toast-spacing: 5px;
}

.modal.-xs .modal-box {
  width: 320px;
}

.modal.-sm .modal-box {
  width: 480px;
}

.modal.-md .modal-box {
  width: 720px;
}

.modal.-lg .modal-box {
  width: 920px;
}

.modal.-xl .modal-box {
  width: 1140px;
}

.modal.-xxl .modal-box {
  width: 1320px;
}

.modal.-full .modal-box {
  max-width: initial;
}

.modal.-xs .form-group,
.modal.-sm .form-group,
.modal.-md .form-group,
.modal.-xs .btn,
.modal.-sm .btn,
.modal.-md .btn {
  width: 100%;
}

.modal.-xs .btn,
.modal.-sm .btn,
.modal.-md .btn {
  min-height: var(--ui-btn-min-height-mobile);
}

.modal.-xs .modal-box .row,
.modal.-sm .modal-box .row,
.modal.-md .modal-box .row {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.modal.-xs .modal-box *[class*="col-"],
.modal.-sm .modal-box *[class*="col-"],
.modal.-md .modal-box *[class*="col-"] {
  width: 100%;
}

.modal.-xs .modal-footer,
.modal.-sm .modal-footer,
.modal.-md .modal-footer {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.modal.-xs .modal-body,
.modal.-sm .modal-body,
.modal.-md .modal-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}

@media (max-width: 991px) {
  .modal-footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
}

body.-modal-open,
body.-modal-open #app,
body.-modal-open .page,
body.-modal-open .page-wrapper {
  overflow: hidden !important;
}

.box-collapse.collapsed {
  height: 0 !important;
  overflow: hidden;
  -webkit-transition: height 0.3s ease;
  transition: height 0.3s ease;
}

.box-collapse:not(.collapsed) {
  height: auto;
  -webkit-transition: height 0.3s ease;
  transition: height 0.3s ease;
  margin-top: 20px;
}

.box-collapse-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px 0;
  position: relative;
}

.box-collapse-toggle:before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 1px;
  background-image: -webkit-gradient(linear,
      left top,
      right top,
      color-stop(33%, var(--ui-cor-neutra-5)),
      color-stop(0, transparent));
  background-image: linear-gradient(to right,
      var(--ui-cor-neutra-5) 33%,
      transparent 0);
  background-position: bottom;
  background-size: 6px 3px;
  background-repeat: repeat-x;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.box-collapse-toggle-btn {
  margin-left: auto;
  margin-right: auto;
  -webkit-box-shadow: none;
  box-shadow: none;
  font-size: 0.9em;
  letter-spacing: 0;
  min-height: 30px !important;
  background-color: var(--ui-cor-neutra-8);
  position: relative;
  opacity: 1;
  font-weight: normal;
  -webkit-box-flex: initial;
  -ms-flex-positive: initial;
  flex-grow: initial;
  width: auto;
  border-radius: 50px;
  padding: 8px 30px;
  overflow: hidden;
  text-shadow: none;
  font-family: "Roboto Condensed";
  text-transform: uppercase;
  color: var(--ui-cor-neutra-3);
  border: 1px solid var(--ui-cor-neutra-5);
}

.box-collapse-toggle-btn:hover {
  background-color: var(--ui-cor-neutra-9);
  color: var(--ui-cor-neutra-2);
  opacity: 1;
}

.header {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: var(--ui-bar-h);
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "header-left header-center header-right";
}

.header-left {
  grid-area: header-left;
}

.header-center {
  grid-area: header-center;
}

.header-right {
  grid-area: header-right;
}

.header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: var(--header-bg);
  text-align: center;
  z-index: 10;
  -webkit-box-shadow: 0 0 15px 0 var(--ui-cor-neutra-5);
  box-shadow: 0 0 15px 0 var(--ui-cor-neutra-5);
}

.header-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.header-center {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.header-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.header-right nav {
  font-size: 0.85rem;
}

.header-right nav i {
  font-size: 20px;
}

.header-right nav mat-icon {
  font-size: 20px;
}

.header-right nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}

.header-right nav li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: auto;
  border-left: 1px solid var(--header-sep);
}

.header-right nav li :where(a) {
  cursor: pointer;
  color: var(--header-cor);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 10px 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px;
  min-width: var(--ui-bar-h);
  width: 100%;
  text-align: left;
  line-height: 1.1em;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.header-right nav li :where(a):hover {
  background-color: var(--header-nav-item-hover-bg);
}

.header-right .header-submenu {
  right: 0;
  left: initial;
}

.header-right .header-submenu:before {
  left: calc(100% - (var(--ui-bar-h) / 2));
}

.header-submenu {
  --header-submenu-max-w: 200px;
  --header-submenu-max-h: 300px;
  --scrollbar-track: var(--header-submenu-bgc);
  -webkit-animation-duration: 300ms;
  animation-duration: 300ms;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: var(--header-submenu-bgc);
  min-width: var(--header-submenu-max-w);
  height: auto;
  margin: 0;
  padding: 0 0 10px;
  width: 100%;
  min-height: initial;
  -webkit-box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.15);
  border-radius: 0 0 10px 10px;
  border-top: var(--header-submenu-bdtz) solid var(--header-submenu-bdtc);
  z-index: 1;
}

.header-submenu-title {
  color: var(--header-submenu-title-cor);
  border-bottom: 1px solid var(--header-submenu-bdc);
  padding: 10px 15px;
  text-transform: uppercase;
  font-size: 0.9em;
  font-weight: bold;
  text-align: left;
}

.header-submenu:before {
  bottom: 100%;
  left: calc(0% + (var(--ui-bar-h) / 2));
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(136, 183, 213, 0);
  border-bottom-color: var(--header-submenu-bdtc);
  border-width: 10px;
  margin-left: -10px;
}

.header-submenu ul {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-height: var(--header-submenu-max-h);
  overflow: auto;
  overflow-x: hidden;
}

.header-submenu li {
  width: 100%;
  text-align: left;
}

.header-submenu li a {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.header-submenu li :where(a) {
  text-align: left;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  line-height: 1.5em;
}

.header-submenu li :where(a):hover {
  -webkit-box-shadow: 4px 0 0 0 var(--ui-cor-brand-2) inset;
  box-shadow: 4px 0 0 0 var(--ui-cor-brand-2) inset;
}

.header-submenu i {
  color: var(--ui-cor-neutra-5);
  font-size: 1rem;
  width: 1rem;
}

.header-submenu a {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.header-submenu a:hover i {
  color: inherit;
}

.header-submenu footer {
  padding: 10px;
  border-top: 1px solid var(--header-submenu-bdc);
}

.header-nav-item:not(.submenu-open) .header-submenu {
  display: none;
}

#header-notificacoes .header-submenu {
  min-width: 45dvw;
  max-width: 600px;
  padding-bottom: 0;
}

#header-notificacoes footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#header-notificacoes footer i {
  color: inherit;
  font-size: 1rem;
}

.header-notificacoes-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border: 0;
  padding: 10px;
  gap: 10px;
  text-align: left;
  max-height: var(--header-submenu-max-h);
  overflow: auto;
  overflow-x: hidden;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.header-notificacoes-list .alert {
  margin-bottom: 0;
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}

.header-notificacoes-list.empty {
  border-radius: 0 0 5px 5px;
  padding: 30px;
}

.header-notificacoes-list.empty:before {
  content: attr(data-empty);
  display: block;
  text-align: center;
}

.header-notificacoes-list.empty+footer {
  display: none !important;
}

.notificacoes-badge {
  position: absolute;
  background-color: var(--ui-cor-danger);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 50px;
  font-size: 0.6rem;
  padding: 4px 6px 3px;
  line-height: 1em;
  top: 0;
  right: 0;
  margin: 2px;
  max-width: 35px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.notificacoes-badge:after {
  content: attr(data-num);
}

.notificacoes-badge:empty {
  display: none;
}

.header-brand {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px;
  padding-bottom: 8px;
}

.header-brand :where(svg, img) {
  display: block;
  width: auto;
  height: 100%;
}

.header-brand span {
  color: var(--ui-cor-brand-1);
  font-size: 1.5rem;
  letter-spacing: -1px;
  font-weight: bold;
}

@media (max-width: 991px) {
  .header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 100;
  }

  .header-left {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 100%;
    height: var(--header-height);
  }

  .header-center,
  .header-right {
    display: none;
  }
}

.router-outlet {
  grid-area: router-outlet;
}

.main {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  /* grid-template-areas: "router-outlet" "main-body infobar" "actionbar actionbar"; */
}

.main-body {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-heading" "main-content";
  grid-area: main-body;
}

.main-heading {
  grid-area: main-heading;
}

.main-content {
  grid-area: main-content;
}

.main {
  height: 100%;
  height: calc(100dvh - var(--ui-bar-h));
  overflow: auto;
  overflow-x: hidden;
  position: relative;
  scroll-behavior: smooth;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.main-heading {
  padding: 45px 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
  color: var(--ui-cor-neutra-3);
}

.main-heading h1 {
  margin: 0;
}

.main-body {
  padding-right: 10px;
}

.main-content {
  background-color: var(--ui-cor-neutra-9);
  background-color: transparent;
  color: var(--ui-cor-neutra-2);
  border-radius: 12px;
  padding: 30px 30px;
  padding-top: 0;
}

.main-content :where(h1, h2, h3, h4, h5, h6) {
  margin-top: 2rem;
  margin-bottom: 1.5rem;
}

.main-content h1:first-child,
.main-content h2:first-child,
.main-content h3:first-child,
.main-content h4:first-child,
.main-content h5:first-child,
.main-content h6:first-child {
  margin-top: 0;
}

.main-content p {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

@media (max-width: 991px) {
  .main {
    height: 100%;
    height: calc(100dvh - (var(--ui-bar-h) * 2));
  }

  .main-heading {
    font-size: 0.9em;
    padding: 20px;
    padding-top: 30px;
  }

  .main-body {
    padding-right: 0;
    display: block;
    max-width: 100dvw;
  }

  .main-content {
    padding: 15px 15px;
  }

  .main-content .btn+.btn {
    margin-top: 5px;
  }

  .main-content .btn-group .btn+.btn {
    margin-top: 0;
  }
}

.breadcrumb {
  font-size: 0.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  color: var(--ui-cor-neutra-4);
  margin: 0;
}

.breadcrumb a {
  text-decoration: none;
  color: inherit;
}

.breadcrumb a:hover {
  text-decoration: underline;
}

#sidebar-toggle {
  width: var(--ui-bar-h);
  height: var(--ui-bar-h);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer;
  border: 0;
  background-color: rgba(255, 255, 255, 0.2);
  background-color: var(--ui-cor-neutra-8);
}

#sidebar-toggle b {
  width: 25px;
  height: 4px;
  background-color: #000;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-color: #fff;
  background-color: var(--sidebar-toggle-ico-cor);
}

#sidebar-toggle b::before,
#sidebar-toggle b::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  background-color: #fff;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  left: 0;
  background-color: var(--sidebar-toggle-ico-cor);
}

#sidebar-toggle b,
#sidebar-toggle b::before,
#sidebar-toggle b::after {
  border-radius: 4px;
}

#sidebar-toggle b::before {
  top: -10px;
}

#sidebar-toggle b::after {
  bottom: -10px;
}

#sidebar-toggle:hover b {
  width: 15px;
}

.sidebar {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  gap: 0 0;
  grid-template-areas: "." ".";
  height: 100%;
  overflow: hidden;
  font-family: var(--font-cond);
  -webkit-transition: var(--trans);
  transition: var(--trans);
  position: relative;
  background-color: var(--sidebar-bgc);
  -webkit-box-shadow: none;
  box-shadow: none;
  z-index: 2;
  max-height: calc(100dvh - var(--ui-bar-h));
}

app-menu {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  gap: 0 0;
  grid-template-areas: "." ".";
  height: 100%;
  overflow: hidden;
  font-family: var(--font-cond);
  -webkit-transition: var(--trans);
  transition: var(--trans);
  position: relative;
  background-color: var(--sidebar-bgc);
  -webkit-box-shadow: none;
  box-shadow: none;
  z-index: 2;
  max-height: calc(100dvh - var(--ui-bar-h));
}

.sidebar-search {
  padding: 0;
  color: var(--sidebar-search-ico-cor);
  position: relative;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.sidebar-search:before {
  content: "";
  opacity: 0;
  position: absolute;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-transition-duration: 200ms;
  transition-duration: 200ms;
}

.sidebar-search label {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  background-color: #f7fafe;
  padding: 0 0 0 0;
  border-radius: 6px;
  min-height: 45px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  position: relative;
  min-height: var(--ui-bar-h);
}

.sidebar-search label:hover {
  background-color: #fff;
}

.sidebar-search input {
  border: 0;
  background-color: transparent;
  color: var(--ui-cor-neutra-3);
  padding-left: 0;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  margin: 0;
  position: absolute;
  inset: 0 0 0 0;
  z-index: 0;
  text-indent: var(--ui-bar-h);
}

.sidebar-search i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: var(--ui-bar-h);
  min-width: var(--ui-bar-h);
  padding: 10px;
  z-index: 1;
}

.sidebar-search i:before {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-width: 16px;
}

.sidebar-search .sidebar-search-x {
  color: var(--ui-cor-danger);
  display: none;
}

.sidebar-subnav {
  display: none;
}

.sidebar-nav {
  --sidebar-nav-li-min-h: 45px;
  overflow: scroll;
  overflow-x: hidden;
  scroll-behavior: smooth;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.sidebar-nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 100%;
  color: inherit;
  padding: 0;
  border-radius: 0 5px 5px 0;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  min-height: var(--sidebar-nav-li-min-h);
  cursor: pointer;
}

.sidebar-nav a i {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px;
  gap: 10px;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  font-size: 20px;
  width: var(--ui-bar-h);
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.sidebar-nav a mat-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px;
  gap: 10px;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  font-size: 20px;
  width: var(--ui-bar-h);
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.sidebar-nav li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  gap: 0;
  width: 100%;
  min-height: var(--sidebar-nav-li-min-h);
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  -ms-flex-positive: 0;
  flex-grow: 0;
  font-size: 0.95em;
  background-color: var(--sidebar-nav-item-bgc);
  color: var(--sidebar-nav-item-cor);
  position: relative;
  border-radius: 0 5px 5px 0;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.sidebar-nav li span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  padding-right: 45px;
  gap: 0;
  width: 100%;
  height: auto;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  -ms-flex-item-align: stretch;
  align-self: stretch;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  white-space: nowrap;
}

.sidebar-nav li button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 11px;
  gap: 10px;
  border: 0;
  background-color: transparent;
  border-radius: 0 4px 4px 0;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  -ms-flex-positive: 0;
  flex-grow: 0;
  cursor: pointer;
  color: inherit;
  position: absolute;
  bottom: 0;
  right: 0;
  top: 0;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  width: 45px;
}

.sidebar-nav li button i {
  font-size: 11px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.sidebar-nav li ul {
  display: none;
  background-color: rgba(255, 255, 255, 0.3);
  border: 1px solid #fff;
  border-radius: 12px;
  overflow: hidden;
  margin-left: 0;
  width: 100%;
}

.sidebar-nav li li {
  -webkit-box-shadow: none;
  box-shadow: none;
  border-bottom: 1px solid #fff;
  border-radius: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  padding: 0;
}

.sidebar-nav li li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 0;
  padding: 10px 20px;
  width: 100%;
  min-height: var(--sidebar-nav-li-min-h);
}

.sidebar-nav li li a:hover {
  color: var(--sidebar-nav-item-hover-cor);
  background-color: var(--sidebar-nav-item-hover-bgc);
  -webkit-box-shadow: 4px 0 0 0 var(--sidebar-nav-item-hover-bdlc) inset;
  box-shadow: 4px 0 0 0 var(--sidebar-nav-item-hover-bdlc) inset;
}

.sidebar-nav li:hover {
  background-color: var(--sidebar-nav-item-hover-bgc);
  -webkit-box-shadow: 0 0 0 1px var(--sidebar-nav-item-hover-bdc);
  box-shadow: 0 0 0 1px var(--sidebar-nav-item-hover-bdc);
}

.sidebar-nav li:hover>button {
  background-color: rgba(255, 255, 255, 0.3);
}

.sidebar-nav li:hover>button:hover {
  background-color: #fff;
  -webkit-box-shadow: 0 0 0 5px #bfcedf inset;
  box-shadow: 0 0 0 5px #bfcedf inset;
  border-radius: 10px;
}

.sidebar-nav li.submenu-open {
  background-color: transparent;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 5px;
  /* width: 275px; */
}

.sidebar-nav li.submenu-open>button {
  max-height: var(--sidebar-nav-li-min-h);
  border-radius: 4px;
}

.sidebar-nav li.submenu-open>button i {
  -webkit-transform: rotateZ(180deg);
  transform: rotateZ(180deg);
  margin-top: 0;
}

.sidebar-nav li.submenu-open>ul {
  display: block;
  background-color: var(--ui-cor-neutra-7);
  margin-top: 5px;
  margin-bottom: 10px;
  margin-left: 10px;
  margin-right: 10px;
  width: calc(100% - 20px);
}

.sidebar-nav li.submenu-open ul button {
  border-radius: 0;
}

.sidebar-nav li.submenu-open>button:hover {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.sidebar-nav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.ui-sidebar--collapsed #sidebar-toggle b {
  width: 4px;
  -webkit-transform: rotateZ(180deg);
  transform: rotateZ(180deg);
}

.ui-sidebar--collapsed #sidebar-toggle:hover b {
  width: 10px;
}

.ui-sidebar--collapsed .body {
  grid-template-columns: var(--ui-bar-h) 1fr;
}

.ui-sidebar--collapsed .sidebar {
  background-color: var(--sidebar-collapsed-bgc);
  overflow: visible;
  width: var(--ui-bar-h);
  position: absolute;
}

.ui-sidebar--collapsed .sidebar-search {
  width: var(--ui-bar-h);
}

.ui-sidebar--collapsed .sidebar-search label {
  background-color: transparent;
  padding-left: 0;
  padding-right: 0;
  gap: 0;
}

.ui-sidebar--collapsed .sidebar-search label:hover {
  color: var(--ui-cor-neutra-3);
}

.ui-sidebar--collapsed .sidebar-search input {
  display: none;
}

.ui-sidebar--collapsed .sidebar-search i {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.ui-sidebar--collapsed .sidebar-search .sidebar-search-x {
  display: none;
}

.ui-sidebar--collapsed .sidebar-nav {
  overflow: visible;
}

.ui-sidebar--collapsed .sidebar-nav li a {
  gap: 0;
}

.ui-sidebar--collapsed .sidebar-nav li a i {
  width: 60px;
}

.ui-sidebar--collapsed .sidebar-nav li a mat-icon {
  width: 60px;
}

.ui-sidebar--collapsed .sidebar-nav li span span span {
  display: none;
}

.ui-sidebar--collapsed .sidebar-nav li:not(:hover) button {
  visibility: hidden;
  opacity: 0;
  display: none;
}

.ui-sidebar--collapsed .sidebar-nav li ul {
  display: none;
}

.ui-sidebar--collapsed .sidebar-nav li:hover {
  min-width: calc(var(--sidebar-open-w) - var(--ui-bar-h));
}

.ui-sidebar--collapsed .sidebar-nav li:hover span span span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ui-sidebar--collapsed .sidebar-nav li:hover button {
  visibility: visible;
  opacity: 1;
}

.ui-sidebar--collapsed .sidebar-nav li.submenu-open:hover {
  width: 275px;
  background-color: var(--ui-cor-neutra-7);
}

.ui-sidebar--collapsed .sidebar-nav li.submenu-open:hover>ul {
  margin-right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.sidebar-search-filtering #sidebar-toggle b {
  width: 30px;
  margin-top: -20px;
}

.sidebar-search-filtering #sidebar-toggle b:before {
  width: 8px;
  margin-top: 30px;
  margin-left: 11px;
}

.sidebar-search-filtering #sidebar-toggle b:after {
  width: 20px;
  margin-top: 30px;
  margin-left: 5px;
}

.sidebar-search-filtering .sidebar-search i {
  display: none;
}

.sidebar-search-filtering .sidebar-search .sidebar-search-x {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.sidebar-search-filtering .sidebar,
.sidebar-search-focused .sidebar {
  -webkit-box-shadow: 0 0 30px 0 var(--ui-cor-neutra-5);
  box-shadow: 0 0 30px 0 var(--ui-cor-neutra-5);
}

.sidebar-search-filtering .sidebar-search,
.sidebar-search-focused .sidebar-search {
  -webkit-box-shadow: 0 0 30px 0 var(--ui-cor-neutra-5);
  box-shadow: 0 0 30px 0 var(--ui-cor-neutra-5);
  background-color: #fff;
  z-index: 2;
  margin-bottom: 15px;
}

.sidebar-search-filtering .sidebar-search label,
.sidebar-search-focused .sidebar-search label {
  background-color: transparent;
}

.sidebar-search-filtering .sidebar-search::before,
.sidebar-search-focused .sidebar-search::before {
  --size: 7px;
  top: 100%;
  margin-top: 3px;
  left: 50%;
  left: 20px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: var(--size);
  height: 0;
  border-left: var(--size) solid transparent;
  border-right: var(--size) solid transparent;
  border-top: var(--size) solid #fff;
  opacity: 1;
  z-index: 2;
}

.sidebar--scrollable {
  --scrollbar-thumb: transparent;
  --scrollbar-track: transparent;
  height: calc(100dvh - var(--ui-bar-h));
  overflow-x: hidden;
  width: auto;
  background: transparent;
  z-index: 100000;
  -webkit-box-shadow: var(--sidebar-collapsed-w) 0 0 0 var(--sidebar-collapsed-bgc) inset;
  box-shadow: var(--sidebar-collapsed-w) 0 0 0 var(--sidebar-collapsed-bgc) inset;
  -webkit-transition: all linear 10ms;
  transition: all linear 10ms;
  position: absolute;
}

.sidebar--scrollable .sidebar-nav>ul>li {
  -webkit-clip-path: inset(0 0 0 0);
  clip-path: inset(0 0 0 0);
  -webkit-transition-property: -webkit-clip-path;
  transition-property: -webkit-clip-path;
  transition-property: clip-path;
  transition-property: clip-path, -webkit-clip-path;
}

.sidebar--scrollable .sidebar-nav>ul>li:not(:hover) {
  --w: calc(100% - var(--ui-bar-h));
  -webkit-clip-path: inset(0 var(--w) 0 0);
  clip-path: inset(0 var(--w) 0 0);
}

@media (max-width: 991px) {
  #sidebar-toggle {
    display: none;
  }

  .sidebar {
    --bgc: var(--sidebar-collapsed-bgc);
    --scrollbar-track: var(--bgc);
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--bgc);
    z-index: 10;
  }

  app-navegacao-lateral {
    --bgc: var(--sidebar-collapsed-bgc);
    --scrollbar-track: var(--bgc);
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: var(--bgc);
    z-index: 10;
  }

  .sidebar-search {
    -webkit-box-shadow: 0 2px 20px var(--ui-cor-neutra-6);
    box-shadow: 0 2px 20px var(--ui-cor-neutra-6);
  }

  .sidebar-search label {
    border-radius: 0;
  }

  .sidebar-nav {
    --sidebar-nav-li-min-h: 55px;
  }

  .sidebar-nav li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.75);
  }

  .sidebar-search {
    width: 100%;
  }

  .ui-sidebar--collapsed .sidebar-search {
    width: 100%;
  }

  .ui-sidebar--collapsed .sidebar-search i {
    width: auto;
  }

  .ui-sidebar--collapsed .sidebar-search input {
    display: block;
  }

  body:not(.ui-sidebar--collapsed) .sidebar-toggle i {
    -webkit-transform: rotateZ(90deg);
    transform: rotateZ(90deg);
  }

  .ui-sidebar--collapsed .sidebar {
    width: 100%;
    height: 0;
    overflow: hidden;
  }

  .ui-sidebar--collapsed app-navegacao-lateral {
    width: 100%;
    height: 0;
    overflow: hidden;
  }
}

@media (min-width: 992px) {
  .ui-sidebar--collapsed .sidebar {
    --scrollbar-thumb: transparent;
    --scrollbar-track: transparent;
    height: calc(100dvh - var(--ui-bar-h));
    overflow-x: hidden;
    width: auto;
    background: transparent;
    z-index: 100000;
    -webkit-box-shadow: var(--sidebar-collapsed-w) 0 0 0 var(--sidebar-collapsed-bgc) inset;
    box-shadow: var(--sidebar-collapsed-w) 0 0 0 var(--sidebar-collapsed-bgc) inset;
    -webkit-transition: all linear 10ms;
    transition: all linear 10ms;
    position: absolute;
  }

  .ui-sidebar--collapsed .sidebar .sidebar-nav>ul>li {
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    -webkit-transition-property: -webkit-clip-path;
    transition-property: -webkit-clip-path;
    transition-property: clip-path;
    transition-property: clip-path, -webkit-clip-path;
  }

  .ui-sidebar--collapsed .sidebar .sidebar-nav>ul>li:not(:hover) {
    --w: calc(100% - var(--ui-bar-h));
    -webkit-clip-path: inset(0 var(--w) 0 0);
    clip-path: inset(0 var(--w) 0 0);
  }
}

.infobar {
  --infobar-bg: var(--ui-cor-neutra-8);
  background-color: var(--infobar-bg);
  display: grid;
  grid-template-columns: 0;
  grid-template-rows: auto 0;
  gap: 0 0;
  grid-template-areas: "." ".";
  grid-area: infobar;
  top: 0;
  height: calc(100dvh - var(--ui-bar-h));
  padding: 0;
  padding-bottom: var(--ui-bar-h);
  font-family: var(--font-cond);
  -webkit-transition: var(--trans);
  transition: var(--trans);
  position: -webkit-sticky;
  position: sticky;
  right: 0;
}

.infobar-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: -webkit-sticky;
  position: sticky;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 50px;
  position: relative;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  padding: 0;
}

.infobar-title {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin: 0;
  display: none;
}

.infobar-toggle-btn {
  background-color: transparent;
  color: var(--ui-cor-neutra-4);
  border-radius: 0;
  position: absolute;
  top: 0;
  right: 100%;
  left: auto;
  bottom: 0;
  height: initial;
  width: 35px;
  border: 0;
}

.infobar-toggle-btn i {
  display: block;
  background-color: #fff;
  color: var(--ui-cor-neutra-4);
  padding: 40px 2px 40px 0;
  border-radius: 12px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
  -webkit-box-shadow: 0 0 40px rgba(191, 206, 223, 0.5);
  box-shadow: 0 0 40px rgba(191, 206, 223, 0.5);
}

.infobar-toggle-btn:hover {
  background-color: #fff;
  color: var(--ui-cor-neutra-2);
  -webkit-box-shadow: 0 0 30px var(--ui-cor-neutra-5);
  box-shadow: 0 0 30px var(--ui-cor-neutra-5);
  width: 45px;
}

.infobar-toggle-btn:hover i {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: inherit;
  -webkit-transform: rotateX(-180deg);
  transform: rotateX(-180deg);
}

.infobar-close-btn {
  background-color: transparent;
  border: 0;
  width: 40px;
  height: 40px;
  -webkit-box-shadow: none;
  box-shadow: none;
  margin: 5px 2px;
  border-radius: 6px;
  position: absolute;
  right: 0;
  color: var(--ui-cor-neutra-4);
}

.infobar-close-btn:hover {
  color: var(--ui-cor-neutra-2);
}

.infobar-close-btn i {
  padding: 0;
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}

body:not(.ui-infobar--open) .infobar-close-btn {
  display: none;
}

.infobar-content {
  --scrollbar-track: #fff;
  display: none;
  height: 100%;
  overflow: auto;
  padding: 30px;
  padding-top: 10px;
  scroll-behavior: smooth;
}

.infobar p {
  margin-bottom: 1em;
}

.infobar li a {
  color: inherit;
  display: block;
  padding: 10px 0;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.infobar li a:before {
  content: "";
  display: block;
  margin-right: 5px;
  width: 5px;
}

.infobar li a:hover {
  color: var(--ui-cor-success);
  text-decoration: underline;
}

.infobar li:not(:last-child) {
  border-bottom: 1px solid var(--ui-cor-neutra-6);
}

.infobar:hover {
  background-color: #fff;
  -webkit-box-shadow: 0 0 60px 0 #bfcedf 50;
  box-shadow: 0 0 60px 0 #bfcedf 50;
}

@media (max-width: 991px) {
  .infobar .infobar-toggle-btn {
    margin: 0 !important;
  }
}

body.ui-infobar--open .main {
  grid-template-columns: 1fr 300px;
}

body.ui-infobar--open .main-body {
  padding-right: 0;
}

body.ui-infobar--open .infobar {
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
}

body.ui-infobar--open .infobar-header {
  padding: 20px 45px 10px 30px;
}

body.ui-infobar--open .infobar-title,
body.ui-infobar--open .infobar-content {
  display: block;
}

body.ui-infobar--open .infobar-toggle-btn:not(:hover) {
  padding-right: 0;
}

body.ui-infobar--open .infobar-toggle-btn {
  opacity: 1;
}

body.ui-infobar--open .infobar-toggle-btn i {
  background-color: var(--infobar-bg);
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
  border-radius: 0 20px 20px 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  opacity: 1;
}

body.ui-infobar--open .infobar-toggle-btn:hover {
  -webkit-box-shadow: -10px 0 10px 0 rgba(var(--ui-cor-neutra-5-rgb), 0.3);
  box-shadow: -10px 0 10px 0 rgba(var(--ui-cor-neutra-5-rgb), 0.3);
  padding-right: 0;
}

body.ui-infobar--open .infobar-toggle-btn:hover i {
  background-color: transparent;
  padding-right: 0;
}

body.ui-infobar--open .infobar:hover .infobar-toggle-btn i {
  background-color: #fff;
}

@media (max-width: 991px) {
  .infobar {
    bottom: var(--ui-bar-h);
  }

  body:not(.ui-infobar--collapsed) .infobar-content {
    padding-bottom: calc(var(--ui-bar-h) + 1em);
  }
}

@media (max-width: 1919px) {
  .infobar {
    height: auto;
    position: fixed;
    top: var(--ui-bar-h);
    bottom: 0;
    background-color: #fff;
    width: 90dvw;
    max-width: 320px;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

  body.ui-infobar--open .main {
    grid-template-columns: 1fr;
  }

  body.ui-infobar--open .infobar {
    -webkit-transform: translateX(0);
    transform: translateX(0);
    -webkit-box-shadow: -20px 0 60px 0 rgba(var(--ui-cor-neutra-5-rgb), 0.3);
    box-shadow: -20px 0 60px 0 rgba(var(--ui-cor-neutra-5-rgb), 0.3);
  }

  body.ui-infobar--open .infobar .infobar-toggle-btn i {
    background-color: #fff;
  }
}

.actionbar {
  background-color: #fff;
  -webkit-box-shadow: 0 -8px 60px 0 rgba(191, 206, 223, 0.6);
  box-shadow: 0 -8px 60px 0 rgba(191, 206, 223, 0.6);
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  grid-area: actionbar;
  white-space: nowrap;
  border-radius: 12px 0 0 0;
  z-index: 5;
}

.actionbar-left,
.actionbar-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  width: 100%;
}

.actionbar-right {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.actionbar .btn {
  min-height: 35px;
}

.actionbar .btn+.btn {
  margin: 0;
}

@media (max-width: 991px) {
  .actionbar {
    padding-right: 20px;
  }

  .actionbar .btn:not(.actionbar-fixed) {
    display: none;
    width: 100%;
  }
}

.mobilebar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: var(--ui-cor-neutra-3);
  color: #fff;
  padding: 10px 20px;
  height: var(--ui-bar-h);
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  z-index: 10;
  display: none;
}

.mobilebar-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  margin: 0;
}

.mobilebar-nav li {
  display: block;
  width: 100%;
  position: relative;
}

.mobilebar-nav li.has-badge a {
  background-image: linear-gradient(15deg,
      transparent 50%,
      rgba(var(--ui-cor-danger-rgb), 0.5));
}

.mobilebar-nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 24px;
  color: inherit;
  padding: 10px;
  background: transparent;
  border-radius: 6px;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.mobilebar-nav a:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.mobilebar-nav i {
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

body:not(.ui-sidebar--collapsed) .mobilebar-nav .sidebar-toggle a {
  background-color: var(--ui-cor-neutra-8);
  color: var(--ui-cor-neutra-3);
}

.modal#mobilebar-perfil {
  --header-sep: var(--ui-cor-neutra-5);
}

.modal#mobilebar-perfil ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  max-height: var(--header-submenu-max-h);
  overflow: auto;
  overflow-x: hidden;
  gap: 0;
  font-size: 1.1em;
  border: 1px solid var(--header-sep);
  border-radius: 10px;
}

.modal#mobilebar-perfil li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: auto;
  border: 0;
  margin: 0;
}

.modal#mobilebar-perfil li:not(:last-child) {
  border-bottom: 1px solid var(--header-sep);
}

.modal#mobilebar-perfil li :where(a) {
  color: var(--header-cor);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 15px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  gap: 20px;
  min-width: var(--ui-bar-h);
  width: 100%;
  text-align: left;
  line-height: 1.1em;
  -webkit-transition: var(--trans);
  transition: var(--trans);
}

.modal#mobilebar-perfil li :where(a) i {
  font-size: 1.25em;
}

.modal#mobilebar-perfil li :where(a):hover {
  background-color: var(--header-nav-item-hover-bg);
  -webkit-box-shadow: 4px 0 0 0 var(--ui-cor-brand-2) inset;
  box-shadow: 4px 0 0 0 var(--ui-cor-brand-2) inset;
}

.modal#mobilebar-perfil .modal-footer {
  display: none;
}

@media (max-width: 991px) {
  .mobilebar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

#mobilebar-notif .alert {
  --bs-toast-spacing: 0;
}

#mobilebar-notif .modal-body {
  gap: 5px;
}

#mobilebar-notif.empty .modal-body {
  text-align: center;
  padding: 30px 20px;
  font-weight: bold;
}

#mobilebar-notif.empty .modal-footer {
  display: none;
}

.app {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: var(--ui-bar-h) 1fr;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "app-header" "body";
}

.header {
  grid-area: header;
}

app-header {
  grid-area: app-header;
}

app-header{
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "header";
}

.body {
  display: grid;
  grid-template-columns: var(--sidebar-open-w) 1fr;
  grid-template-rows: 1fr;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "app-navegacao-lateral main";
  grid-area: body;
  position: -webkit-sticky;
  position: sticky;
  max-height: calc(100dvh - var(--ui-bar-h));
  top: var(--ui-bar-h);
}

.sidebar {
  grid-area: sidebar;
}

app-navegacao-lateral {
  grid-area: app-navegacao-lateral;
}

app-navegacao-lateral {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "sidebar";
}

.main {
  grid-area: main;
}

.infobar {
  grid-area: infobar;
}

.mobilebar {
  grid-area: mobilebar;
}

app-footer {
  grid-area: app-footer;
}

app-footer {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "mobilebar";
}

@media (max-width: 991px) {
  .app {
    grid-template-columns: 1fr;
    grid-template-rows: var(--ui-bar-h) 1fr auto;
    grid-template-areas: "app-header" "body" "app-footer";
  }

  .body {
    grid-template-areas: "main";
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    max-height: calc(100dvh - var(--ui-bar-h) - var(--ui-bar-h));
  }

  .ui-sidebar--collapsed .body {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr auto;
  }
}

.ui-header--hide #ui-header {
  display: none;
}

.ui-header--hide .app {
  grid-template-rows: 0 1fr;
}

.ui-header--hide .body {
  top: 0;
  max-height: 100dvh;
}

.ui-header--hide .main {
  max-height: 100dvh;
  height: 100%;
}

.ui-sidebar--hide #ui-sidebar,
.ui-sidebar--hide #sidebar-toggle {
  display: none;
}

.ui-sidebar--hide .body {
  grid-template-columns: 0 1fr;
}

.ui-infobar--hide #ui-infobar {
  display: none;
}

.ui-infobar--hide .main-body {
  padding-right: 0;
}

.ui-actionbar--hide #ui-actionbar {
  display: none;
}

.ui-sidebar-search--hide #ui-sidebar-search {
  display: none;
}

.ui-main-header--hide #ui-main-header {
  display: none;
}

.ui-main-header--hide .main-content {
  padding-top: 30px;
}

app-transacao-detalhes {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-body infobar" "actionbar actionbar";
}

usuario-app-component > app-listagem {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-body infobar" "actionbar actionbar";
}

app-certificado-compensacao {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-body infobar" "actionbar actionbar";
}

app-intencao {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-body infobar" "actionbar actionbar";
}

app-transacoes {
  display: grid;
  grid-template-columns: 1fr 0;
  grid-template-rows: 1fr auto;
  gap: 0 0;
  grid-auto-flow: row;
  grid-template-areas: "main-body infobar" "actionbar actionbar";
}
