*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(65 148 203 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(65 148 203 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  /* 3 */
  tab-size: 4;
  /* 3 */
  font-family: Graphik, sans-serif;
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

.container {
  width: 100%;
}

@media (min-width: 300px) {
  .container {
    max-width: 300px;
  }
}

@media (min-width: 640px) {
  .container {
    max-width: 640px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {
  .container {
    max-width: 1280px;
  }
}

@media (min-width: 1536px) {
  .container {
    max-width: 1536px;
  }
}

.visible {
  visibility: visible;
}

.collapse {
  visibility: collapse;
}

.static {
  position: static;
}

.sticky {
  position: sticky;
}

.bottom-0 {
  bottom: 0px;
}

.top-0 {
  top: 0px;
}

.z-30 {
  z-index: 30;
}

.col-span-2 {
  grid-column: span 2 / span 2;
}

.col-span-4 {
  grid-column: span 4 / span 4;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.clear-both {
  clear: both;
}

.m-0 {
  margin: 0px;
}

.m-2 {
  margin: 0.5rem;
}

.m-4 {
  margin: 1rem;
}

.m-auto {
  margin: auto;
}

.mx-0 {
  margin-left: 0px;
  margin-right: 0px;
}

.mx-4 {
  margin-left: 1rem;
  margin-right: 1rem;
}

.my-auto {
  margin-top: auto;
  margin-bottom: auto;
}

.mb-0 {
  margin-bottom: 0px;
}

.mb-4 {
  margin-bottom: 1rem;
}

.ml-2 {
  margin-left: 0.5rem;
}

.ml-4 {
  margin-left: 1rem;
}

.mr-1 {
  margin-right: 0.25rem;
}

.mt-2 {
  margin-top: 0.5rem;
}

.mt-3 {
  margin-top: 0.75rem;
}

.mt-4 {
  margin-top: 1rem;
}

.mt-5 {
  margin-top: 1.25rem;
}

.block {
  display: block;
}

.flex {
  display: flex;
}

.table {
  display: table;
}

.grid {
  display: grid;
}

.hidden {
  display: none;
}

.h-12 {
  height: 3rem;
}

.h-24 {
  height: 6rem;
}

.h-auto {
  height: auto;
}

.w-1 {
  width: 0.25rem;
}

.w-1\/12 {
  width: 8.333333%;
}

.w-1\/2 {
  width: 50%;
}

.w-1\/4 {
  width: 25%;
}

.w-10 {
  width: 2.5rem;
}

.w-16 {
  width: 4rem;
}

.w-2 {
  width: 0.5rem;
}

.w-20 {
  width: 5rem;
}

.w-3 {
  width: 0.75rem;
}

.w-4\/12 {
  width: 33.333333%;
}

.w-40 {
  width: 10rem;
}

.w-5 {
  width: 1.25rem;
}

.w-60 {
  width: 15rem;
}

.w-7 {
  width: 1.75rem;
}

.w-80 {
  width: 20rem;
}

.w-auto {
  width: auto;
}

.w-full {
  width: 100%;
}

.max-w-full {
  max-width: 100%;
}

.flex-1 {
  flex: 1 1 0%;
}

.flex-auto {
  flex: 1 1 auto;
}

.flex-initial {
  flex: 0 1 auto;
}

.flex-none {
  flex: none;
}

.table-auto {
  table-layout: auto;
}

.border-collapse {
  border-collapse: collapse;
}

.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.cursor-pointer {
  cursor: pointer;
}

.grid-flow-row {
  grid-auto-flow: row;
}

.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.grid-cols-8 {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

.flex-row {
  flex-direction: row;
}

.flex-col {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

.place-content-end {
  place-content: end;
}

.items-end {
  align-items: flex-end;
}

.items-center {
  align-items: center;
}

.justify-center {
  justify-content: center;
}

.gap-1 {
  gap: 0.25rem;
}

.gap-2 {
  gap: 0.5rem;
}

.gap-3 {
  gap: 0.75rem;
}

.gap-4 {
  gap: 1rem;
}

.overflow-hidden {
  overflow: hidden;
}

.overflow-x-auto {
  overflow-x: auto;
}

.rounded-md {
  border-radius: 0.375rem;
}

.rounded-sm {
  border-radius: 0.125rem;
}

.border {
  border-width: 1px;
}

.border-b {
  border-bottom-width: 1px;
}

.border-dotted {
  border-style: dotted;
}

.border-gray-400 {
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.bg-blue-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(65 148 203 / var(--tw-bg-opacity, 1));
}

.bg-cyan-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 182 212 / var(--tw-bg-opacity, 1));
}

.bg-emerald-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}

.bg-green-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(141 185 178 / var(--tw-bg-opacity, 1));
}

.bg-green-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(48 110 97 / var(--tw-bg-opacity, 1));
}

.bg-green-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(25 54 45 / var(--tw-bg-opacity, 1));
}

.bg-indigo-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
}

.bg-orange-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

.bg-red-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}

.bg-red-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}

.bg-red-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(153 27 27 / var(--tw-bg-opacity, 1));
}

.bg-rose-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
}

.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
}

.bg-slate-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(100 116 139 / var(--tw-bg-opacity, 1));
}

.p-0 {
  padding: 0px;
}

.p-1 {
  padding: 0.25rem;
}

.p-2 {
  padding: 0.5rem;
}

.p-3 {
  padding: 0.75rem;
}

.p-4 {
  padding: 1rem;
}

.p-8 {
  padding: 2rem;
}

.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.pl-1 {
  padding-left: 0.25rem;
}

.pl-4 {
  padding-left: 1rem;
}

.pr-4 {
  padding-right: 1rem;
}

.pt-1 {
  padding-top: 0.25rem;
}

.pt-3 {
  padding-top: 0.75rem;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.align-middle {
  vertical-align: middle;
}

.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-bold {
  font-weight: 700;
}

.lowercase {
  text-transform: lowercase;
}

.tracking-wide {
  letter-spacing: 0.025em;
}

.text-black {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.underline {
  text-decoration-line: underline;
}

.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.outline {
  outline-style: solid;
}

.blur {
  --tw-blur: blur(8px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.theme-dark {
  --color-900: rgb(0 0 0 / var(--tw-bg-opacity)) !important;
  --color-800: #161616 !important;
  --color-700: #131313 !important;
  --color-600: #0f172abf !important;
  --color-500: #3b3b3b !important;
  --color-400: #2d2d2d !important;
  --color-300: #383737 !important;
  --color-200: #303030 !important;
  --color-100: #353434 !important;
}

.theme-slate {
  --color-900: #0f172a !important;
  --color-800: #1e293b !important;
  --color-700: #334155 !important;
  --color-600: #475569 !important;
  --color-500: #64748b !important;
  --color-400: #94a3b8 !important;
  --color-300: #cbd5e1 !important;
  --color-200: #e2e8f0 !important;
  --color-100: #f1f5f9 !important;
}

.theme-red {
  --color-900: #7f1d1d !important;
  --color-800: #991b1b !important;
  --color-700: #b91c1c !important;
  --color-600: #dc2626 !important;
  --color-500: #ef4444 !important;
  --color-400: #f87171 !important;
  --color-300: #fca5a5 !important;
  --color-200: #fecaca !important;
  --color-100: #fee2e2 !important;
}

.theme-orange {
  --color-900: #7c2d12 !important;
  --color-800: #9a3412 !important;
  --color-700: #c2410c !important;
  --color-600: #ea580c !important;
  --color-500: #f97316 !important;
  --color-400: #fb923c !important;
  --color-300: #fdba74 !important;
  --color-200: #fed7aa !important;
  --color-100: #ffedd5 !important;
}

.theme-green {
  --color-900: #4b6043 !important;
  --color-800: #19362d !important;
  --color-700: #255045 !important;
  --color-600: #2b5f53 !important;
  --color-500: #306e61 !important;
  --color-400: #347a6c !important;
  --color-300: #478c80 !important;
  --color-200: #649e94 !important;
  --color-100: #8db9b2 !important;
}

.theme-emerald {
  --color-900: #064e3b !important;
  --color-800: #065f46 !important;
  --color-700: #047857 !important;
  --color-600: #059669 !important;
  --color-500: #10b981 !important;
  --color-400: #34d399 !important;
  --color-300: #6ee7b7 !important;
  --color-200: #a7f3d0 !important;
  --color-100: #d1fae5 !important;
}

.theme-cyan {
  --color-900: #164e63 !important;
  --color-800: #155e75 !important;
  --color-700: #0e7490 !important;
  --color-600: #0891b2 !important;
  --color-500: #06b6d4 !important;
  --color-400: #22d3ee !important;
  --color-300: #67e8f9 !important;
  --color-200: #a5f3fc !important;
  --color-100: #cffafe !important;
}

.theme-sky {
  --color-900: #0c4a6e !important;
  --color-800: #075985 !important;
  --color-700: #0369a1 !important;
  --color-600: #0284c7 !important;
  --color-500: #0ea5e9 !important;
  --color-400: #38bdf8 !important;
  --color-300: #7dd3fc !important;
  --color-200: #bae6fd !important;
  --color-100: #e0f2fe !important;
}

.theme-blue {
  --color-900: #112960 !important;
  --color-800: #235284 !important;
  --color-700: #3271a5 !important;
  --color-600: #3982b8 !important;
  --color-500: #4194cb !important;
  --color-400: #46a2da !important;
  --color-300: #58afdd !important;
  --color-200: #6abce2 !important;
  --color-100: #8dcfec !important;
}

.theme-indigo {
  --color-900: #312e81 !important;
  --color-800: #3730a3 !important;
  --color-700: #4338ca !important;
  --color-600: #4f46e5 !important;
  --color-500: #6366f1 !important;
  --color-400: #818cf8 !important;
  --color-300: #a5b4fc !important;
  --color-200: #c7d2fe !important;
  --color-100: #e0e7ff !important;
}

.theme-rose {
  --color-900: #881337 !important;
  --color-800: #9f1239 !important;
  --color-700: #be123c !important;
  --color-600: #e11d48 !important;
  --color-500: #f43f5e !important;
  --color-400: #fb7185 !important;
  --color-300: #fda4af !important;
  --color-200: #fecdd3 !important;
  --color-100: #ffe4e6 !important;
}

:root {
  --sm-font-size: 14px;
  --md-font-size: 14px;
  --lg-font-size: 16px;
  --color-dark: #000000;
  --color-light: #cdcdce;
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
    Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

html {
  font-size: 14px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
    Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
}

@media (min-width: 300px) {
  html {
    font-size: 1rem;
  }

  .logo-container {
    display: block;
    width: 100%;
  }

  .logo {
    display: block;
    width: 100%;
    padding: 0.5rem;
    padding-top: 1rem;
    text-align: center;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
  }

  #printArea .logo {
    font-size: 1.2rem;
  }

  .slogan {
    display: block;
    width: 100%;
    padding: 0.5rem;
    text-align: center;
  }

  footer {
    position: relative;
  }
}

@media (min-width: 640px) {
  html {
    font-size: 0.8rem;
  }

  .logo-container {
    display: flex;
  }

  .logo {
    display: block;
    width: 100%;
    flex: 1 1 auto;
    padding: 0.5rem;
    padding-left: 1rem;
    text-align: left;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
  }

  #printArea .logo {
    font-size: 1.2rem;
  }

  .slogan {
    flex: 1 1 auto;
    padding: 0.5rem;
    text-align: right;
  }
}

@media (min-width: 768px) {
  html {
    font-size: var(--lg-font-size);
  }
}

@font-face {
  font-family: "Material Icons";

  font-style: normal;

  font-weight: 400;

  src: url(/assets/material-icons.woff2) format("woff2");
}

.material-icons {
  font-family: "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
}

:root {
  --tw-gradient-from: #3b82f6;
  --tw-gradient-to: rgb(59 130 246 / 0);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.bg-100,
.bg-200,
.bg-300,
.bg-100 .mat-icon,
.bg-200 .mat-icon,
.bg-300 .mat-icon,
.bg-100 .mat-menu-item,
.bg-200 .mat-menu-item,
.bg-300 .mat-menu-item,
.bg-100 .mat-menu-ripple,
.bg-200 .mat-menu-ripple,
.bg-300 .mat-menu-ripple {
  color: var(--color-dark);
}

.bg-400,
.bg-500,
.bg-600,
.bg-700,
.bg-800,
.bg-900,
.bg-400 .mat-menu-ripple,
.bg-500 .mat-menu-ripple,
.bg-600 .mat-menu-ripple,
.bg-700 .mat-menu-ripple,
.bg-800 .mat-menu-ripple,
.bg-900 .mat-menu-ripple,
.bg-400 .mat-menu-item,
.bg-400 .mat-icon,
.bg-500 .mat-menu-item,
.bg-500 .mat-icon,
.bg-600 .mat-menu-item,
.bg-600 .mat-icon,
.bg-700 .mat-menu-item,
.bg-700 .mat-icon,
.bg-800 .mat-menu-item,
.bg-800 .mat-icon,
.bg-900 .mat-menu-item,
.bg-900 .mat-icon {
  color: var(--color-light) !important;
}

.bg-50 .mat-form-field-infix input,
.bg-100 .mat-form-field-infix input,
.bg-200 .mat-form-field-infix input,
.bg-300 .mat-form-field-infix input,
.bg-400 .mat-form-field-infix input,
.bg-500 .mat-form-field-infix input,
.bg-600 .mat-form-field-infix input,
.bg-700 .mat-form-field-infix input,
.bg-800 .mat-form-field-infix input,
.bg-900 .mat-form-field-infix input {
  color: var(--color-dark) !important;
}

.invert-bg {
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.text-800 {
  font-size: 1.875rem;
  line-height: 2.25rem;
  font-weight: 700;
}

/* Blue theme*/

.theme-blue .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(141 207 236 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(106 188 226 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(88 175 221 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(70 162 218 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(65 148 203 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(57 130 184 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(50 113 165 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(35 82 132 / var(--tw-bg-opacity, 1));
}

.theme-blue .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(17 41 96 / var(--tw-bg-opacity, 1));
}

.theme-blue .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #4194cb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(65 148 203 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-blue .waiting .mat-spinner svg circle {
  stroke: #4194cb !important;
}

.theme-blue .text-800 {
  border-width: 0px;
  font-size: 1.875rem;
  line-height: 2.25rem;
  --tw-text-opacity: 1;
  color: rgb(17 41 96 / var(--tw-text-opacity, 1));
}

.theme-blue .img-box {
  border-color: #4194cb !important;
}

.theme-blue .mat-form-field.mat-warn .mat-input-element,
.theme-blue .mat-form-field-invalid .mat-input-element {
  caret-color: #4194cb !important;
}

.theme-blue .mat-select-panel,
.theme-blue input {
  background-color: #8dcfec !important;
}

.theme-blue .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(65 148 203 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

/* Green theme*/

.theme-green .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(141 185 178 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(100 158 148 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(71 140 128 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(52 122 108 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(48 110 97 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(43 95 83 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(37 80 69 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(25 54 45 / var(--tw-bg-opacity, 1));
}

.theme-green .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(75 96 67 / var(--tw-bg-opacity, 1));
}

.theme-green .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #306e61 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(48 110 97 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-green .waiting .mat-spinner svg circle {
  stroke: #306e61 !important;
}

.theme-green .img-box {
  border-color: #306e61 !important;
}

.theme-green .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(48 110 97 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-green .mat-form-field.mat-warn .mat-input-element,
.theme-green .mat-form-field-invalid .mat-input-element {
  caret-color: #306e61 !important;
}

.theme-green .mat-select-panel,
.theme-green input {
  background-color: #8db9b2 !important;
}

/* slate theme*/

.theme-slate .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(100 116 139 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(71 85 105 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}

.theme-slate .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}

.theme-slate .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #64748b var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(100 116 139 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-slate .waiting .mat-spinner svg circle {
  stroke: #64748b !important;
}

.theme-slate .img-box {
  border-color: #64748b !important;
}

.theme-slate .mat-select-panel,
.theme-slate input {
  background-color: #f1f5f9 !important;
}

.theme-slate .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(100 116 139 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-slate .mat-form-field.mat-warn .mat-input-element,
.theme-slate .mat-form-field-invalid .mat-input-element {
  caret-color: #64748b !important;
}

/* red theme*/

.theme-red .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 202 202 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 113 113 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(220 38 38 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(185 28 28 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(153 27 27 / var(--tw-bg-opacity, 1));
}

.theme-red .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(127 29 29 / var(--tw-bg-opacity, 1));
}

.theme-red .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #ef4444 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(239 68 68 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-red .waiting .mat-spinner svg circle {
  stroke: #ef4444 !important;
}

.theme-red .img-box {
  border-color: #ef4444 !important;
}

.theme-red .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-red .mat-select-panel,
.theme-red input {
  background-color: #fee2e2 !important;
}

.theme-red .mat-form-field.mat-warn .mat-input-element,
.theme-red .mat-form-field-invalid .mat-input-element {
  caret-color: #ef4444 !important;
}

/* orange theme*/

.theme-orange .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 215 170 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 186 116 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(251 146 60 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(234 88 12 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(194 65 12 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(154 52 18 / var(--tw-bg-opacity, 1));
}

.theme-orange .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(124 45 18 / var(--tw-bg-opacity, 1));
}

.theme-orange .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #f97316 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-orange .waiting .mat-spinner svg circle {
  stroke: #f97316 !important;
}

.theme-orange .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-orange .img-box {
  border-color: #f97316 !important;
}

.theme-orange .mat-select-panel,
.theme-orange input {
  background-color: #ffedd5 !important;
}

.theme-orange .mat-form-field.mat-warn .mat-input-element,
.theme-orange .mat-form-field-invalid .mat-input-element {
  caret-color: #f97316 !important;
}

/* emerald theme*/

.theme-emerald .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(167 243 208 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(110 231 183 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(52 211 153 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(4 120 87 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 95 70 / var(--tw-bg-opacity, 1));
}

.theme-emerald .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 78 59 / var(--tw-bg-opacity, 1));
}

.theme-emerald .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #10b981 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-emerald .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-emerald .waiting .mat-spinner svg circle {
  stroke: #10b981 !important;
}

.theme-emerald .img-box {
  border-color: #10b981 !important;
}

.theme-emerald .mat-select-panel,
.theme-emerald input {
  background-color: #d1fae5 !important;
}

.theme-emerald .mat-form-field.mat-warn .mat-input-element,
.theme-emerald .mat-form-field-invalid .mat-input-element {
  caret-color: #10b981 !important;
}

/* cyan theme*/

.theme-cyan .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(207 250 254 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(165 243 252 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(103 232 249 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(34 211 238 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(6 182 212 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(8 145 178 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 116 144 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(21 94 117 / var(--tw-bg-opacity, 1));
}

.theme-cyan .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(22 78 99 / var(--tw-bg-opacity, 1));
}

.theme-cyan .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-cyan .waiting .mat-spinner svg circle {
  stroke: #06b6d4 !important;
}

.theme-cyan .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(6 182 212 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-cyan .img-box {
  border-color: #06b6d4 !important;
}

.theme-cyan .mat-select-panel,
.theme-cyan input {
  background-color: #cffafe !important;
}

.theme-cyan .mat-form-field.mat-warn .mat-input-element,
.theme-cyan .mat-form-field-invalid .mat-input-element {
  caret-color: #06b6d4 !important;
}

/* sky theme*/

.theme-sky .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(224 242 254 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(186 230 253 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(125 211 252 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(56 189 248 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(2 132 199 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(3 105 161 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(7 89 133 / var(--tw-bg-opacity, 1));
}

.theme-sky .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(12 74 110 / var(--tw-bg-opacity, 1));
}

.theme-sky .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #0ea5e9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(14 165 233 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-sky .waiting .mat-spinner svg circle {
  stroke: #0ea5e9 !important;
}

.theme-sky .img-box {
  border-color: #0ea5e9 !important;
}

.theme-sky .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-sky .mat-select-panel,
.theme-sky input {
  background-color: #e0f2fe !important;
}

.theme-sky .mat-form-field.mat-warn .mat-input-element,
.theme-sky .mat-form-field-invalid .mat-input-element {
  caret-color: #0ea5e9 !important;
}

/* indigo theme*/

.theme-indigo .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(224 231 255 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(199 210 254 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(165 180 252 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(129 140 248 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(55 48 163 / var(--tw-bg-opacity, 1));
}

.theme-indigo .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(49 46 129 / var(--tw-bg-opacity, 1));
}

.theme-indigo .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #6366f1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(99 102 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-indigo .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-indigo .waiting .mat-spinner svg circle {
  stroke: #6366f1 !important;
}

.theme-indigo .img-box {
  border-color: #6366f1 !important;
}

.theme-indigo .mat-select-panel,
.theme-indigo input {
  background-color: #e0e7ff !important;
}

.theme-indigo .mat-form-field.mat-warn .mat-input-element,
.theme-indigo .mat-form-field-invalid .mat-input-element {
  caret-color: #6366f1 !important;
}

/* violet theme*/

.theme-violet .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(237 233 254 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(221 214 254 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(196 181 253 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(167 139 250 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(139 92 246 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(124 58 237 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(109 40 217 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(91 33 182 / var(--tw-bg-opacity, 1));
}

.theme-violet .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(76 29 149 / var(--tw-bg-opacity, 1));
}

.theme-violet .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #8b5cf6 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(139 92 246 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-violet .img-box {
  border-color: #8b5cf6 !important;
}

.theme-violet .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(139 92 246 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-violet .mat-select-panel,
.theme-violet input {
  background-color: #ede9fe !important;
}

.theme-violet .waiting .mat-spinner svg circle {
  stroke: #8b5cf6 !important;
}

.theme-violet .mat-form-field.mat-warn .mat-input-element,
.theme-violet .mat-form-field-invalid .mat-input-element {
  caret-color: #8b5cf6 !important;
}

/* rose theme*/

.theme-rose .bg-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 228 230 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(254 205 211 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(253 164 175 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(251 113 133 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(225 29 72 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-700 {
  --tw-bg-opacity: 1;
  background-color: rgb(190 18 60 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-800 {
  --tw-bg-opacity: 1;
  background-color: rgb(159 18 57 / var(--tw-bg-opacity, 1));
}

.theme-rose .bg-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(136 19 55 / var(--tw-bg-opacity, 1));
}

.theme-rose .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #f43f5e var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(244 63 94 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-rose .ivr {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
  background: rgba(0, 0, 0, 0.2);
  /*text-shadow: 1px 1px 1px white;*/
}

.theme-rose .waiting .mat-spinner svg circle {
  stroke: #f43f5e !important;
}

.theme-rose .img-box {
  border-color: #f43f5e !important;
}

.theme-rose .mat-select-panel,
.theme-rose input {
  background-color: #ffe4e6 !important;
}

.theme-rose .mat-form-field.mat-warn .mat-input-element,
.theme-rose .mat-form-field-invalid .mat-input-element {
  caret-color: #f43f5e !important;
}

.container-fluid {
  clear: both;
  display: block;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.mat-menu-item {
  font-family: var(--font-family);
  font-size: 0.8rem !important;
  overflow: visible !important;
  text-overflow: inherit;
  padding: 0 5px !important;
  /* line-height: 24px !important;*/
  opacity: 1;
}

div,
.mat-icon,
.mat-menu-item {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-property: box-shadow;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.mat-icon {
  vertical-align: middle;
}

/* .mat-toolbar-row,.mat-toolbar-single-row { display: block !important; height: auto !important; }  */

.card-container {
  margin: 0.5rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}

.card {
  padding: 1rem;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.page-title {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: 700;
}

#printArea .page-title {
  font-size: 1.2rem;
}

.responsive-fix {
  width: 100%;
  max-width: 100%;
  overflow: auto;
  padding: 0.5rem;
}

.mat-table tr td,
.mat-table tr th {
  font-size: 0.7rem;
  padding: 0.25rem !important;
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
  border-bottom: 1px solid var(--color-800) !important;
}

.fit-control {
  max-width: 100%;
  border-radius: 0.125rem;
  border-width: 1px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.mat-table tr td input {
  margin: 0.5rem;
  width: 100%;
  border-radius: 0.125rem;
  border-width: 1px;
  padding: 0.25rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.lt {
  display: block;
  padding: 5px;
  font-weight: bold;
  font-size: 11px;
}

.st-1 {
  background-color: yellow;
}

.st-2 {
  background-color: orange;
}

.st-3 {
  background-color: green;
}

.st-4 {
  background-color: red;
  color: white;
}

.st-99 {
  background-color: #125699;
  color: white;
}

.st-0 {
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  padding: 10px;
}

.text-xs {
  font-size: 0.7rem;
}

.text-xs .mat-icon {
  font-size: 1rem;
  height: auto !important;
}

@media print {
  .hide-print {
    display: none !important;
  }
}

.mat-card,
.mat-table,
.table,
table {
  background: inherit !important;
}

.card {
  border-radius: 0.375rem;
  border-width: 1px;
  text-align: center;
  vertical-align: middle;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.card-pad-0 {
  border-radius: 0.375rem;
  border-width: 1px;
  text-align: center;
  vertical-align: middle;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

td.btn {
  padding: 0.1rem;
  font-size: 0.7rem;
}

.btn .mat-icon {
  font-size: 1rem;
  height: 16px;
  width: 16px;
}

.btn {
  display: flex;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  flex-direction: row;
  place-items: center;
  gap: 0.25rem;
  border-radius: 0.125rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  text-align: center;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.btn,.btn .mat-icon,.btn .mat-menu-item,.btn .mat-menu-ripple {
  color: var(--color-dark);
}

.btn .mat-form-field-infix input {
  color: var(--color-dark);
}

.theme-blue .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(88 175 221 / var(--tw-bg-opacity, 1));
}

.theme-green .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(71 140 128 / var(--tw-bg-opacity, 1));
}

.theme-slate .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}

.theme-red .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity, 1));
}

.theme-orange .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(253 186 116 / var(--tw-bg-opacity, 1));
}

.theme-emerald .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(110 231 183 / var(--tw-bg-opacity, 1));
}

.theme-cyan .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(103 232 249 / var(--tw-bg-opacity, 1));
}

.theme-sky .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(125 211 252 / var(--tw-bg-opacity, 1));
}

.theme-indigo .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(165 180 252 / var(--tw-bg-opacity, 1));
}

.theme-violet .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(196 181 253 / var(--tw-bg-opacity, 1));
}

.theme-rose .btn {
  --tw-bg-opacity: 1;
  background-color: rgb(253 164 175 / var(--tw-bg-opacity, 1));
}

.theme-dark .btn {
  background-color: var(--color-300);
  color: var(--color-light);
}

.h-50 {
  height: 50px;
}

.center {
  place-content: center;
  text-align: center;
  place-items: center;
  align-items: center;
}

.fill-width {
  width: -webkit-fill-available;
}

.w-50 {
  width: 50px;
}

.btn:hover {
  --tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
}

.card:hover {
  --tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
}

.waiting {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.waiting .mat-spinner {
  position: absolute;
  display: block;
}

.waiting .mat-spinner svg circle {
  stroke: #999 !important;
}

.waiting label {
  display: block;
  font-size: 2rem;
  font-weight: bold;
}

.waiting p {
  display: block;
  font-size: 0.8rem;
}

/* Dark theme*/

.bg-dark-500 {
  background-color: --var(--color-500);
  color: #cdcdce;
}

.theme-dark .bg-100 {
  background-color: var(--color-100);
  color: var(--color-light) !important;
}

.theme-dark .bg-200 {
  background-color: var(--color-200);
  color: var(--color-light) !important;
}

.theme-dark .bg-300 {
  background-color: var(--color-300);
  color: var(--color-light) !important;
}

.theme-dark .bg-400 {
  background-color: var(--color-400);
  color: var(--color-light) !important;
}

.theme-dark .bg-500 {
  background-color: var(--color-500);
  color: var(--color-light) !important;
}

.theme-dark .bg-600 {
  background-color: var(--color-600);
  color: var(--color-light) !important;
}

.theme-dark .bg-700 {
  background-color: var(--color-700);
  color: var(--color-light) !important;
}

.theme-dark .bg-800 {
  background-color: var(--color-800);
  color: var(--color-light) !important;
}

.theme-dark .bg-900 {
  background-color: var(--color-900);
  --tw-text-opacity: 1 !important;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important;
}

.theme-dark .grad-line {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #9ca3af var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(156 163 175 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.theme-dark .text-800 {
  border-width: 0px;
  font-size: 1.875rem;
  line-height: 2.25rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.theme-dark .mat-select-panel,
.theme-dark input {
  background-color: #6b7280 !important;
  color: var(--color-light) !important;
}

.theme-dark .mat-select-arrow {
  color: var(--color-light) !important;
}

.theme-dark .mat-card,
.theme-dark span,
.theme-dark div .theme-dark p,
.theme-dark .btn,
.theme-dark .mat-icon,
.theme-dark .material-icons,
.theme-dark label {
  color: #e1e8ef !important;
}

.theme-dark svg text,
.theme-dark svg.material-icons {
  fill: #e1e8ef !important;
}

.theme-dark .btn,
.theme-dark .apexcharts-tooltip,
.theme-dark input,
.theme-dark .mat-paginator-outer-container,
.theme-dark .mat-menu-panel,
.theme-dark.mat-cell,
.theme-dark .cdk-cell,
.theme-dark .mat-input {
  background-color: #1d1717f6 !important;
  color: #e1e8ef !important;
  border-color: #000000 !important;
}

.theme-dark .apexcharts-tooltip-title,
.theme-dark .mat-drawer-container {
  background-color: #000 !important;
  color: #e1e8ef !important;
}

.theme-dark .mat-menu-panel {
  background-color: #000000 !important;
  color: #e1e8ef !important;
  border-color: #1d1717f6 !important;
}

.mat-menu-item {
  padding-top: 0.75rem;
  padding-bottom: 0.5rem;
}

.theme-dark .mat-menu-item {
  color: #e1e8ef !important;
}

.theme-dark .mat-divider {
  border: #333333 1px solid;
}

.theme-dark p,
.theme-dark h1,
.theme-dark h2,
.theme-dark h3,
.theme-dark h4,
.theme-dark h5,
.theme-dark h6 {
  color: #e1e8ef !important;
}

.theme-dark .waiting .mat-spinner svg circle {
  stroke: #152672 !important;
}

.theme-dark .img-box {
  border-color: #131313;
}

.img-box {
  border: 1px solid;
  border-radius: 50%;
}

.card-title {
  margin: 0px;
  padding: 0.5rem;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
}

.grad-line {
  margin: 0.5rem !important;
  display: block !important;
  height: 0.25rem !important;
  width: 100% !important;
}

.mat-menu-item .mat-icon {
  margin-right: 2px !important;
}

.lh-24 {
  line-height: 24px !important;
}

.lh-48 {
  line-height: 48px !important;
}

.flex-container {
  display: flex;
  flex-direction: row;
}

.flex-container .mat-menu-item {
  display: initial;
}

.text-green {
  color: green !important;
}

@media (min-width: 300px) {
  .flex-container .mat-icon {
    margin-right: 1px !important;
    padding: 0;
    width: 15px;
    height: 22px;
    font-size: 20px;
  }

  .flex-container .mat-menu-item span {
    overflow-x: auto;
  }

  .btn span {
    display: none;
  }

  .xs\:hidden {
    display: none !important;
  }

  .xs\:visible {
    display: block !important;
  }

  .xs\:block {
    display: block !important;
  }
}

@media (min-width: 640px) {
  .btn span,
  .flex-container .mat-menu-item span {
    display: inline-block;
  }

  .flex-container button span {
    display: inline-block;
  }

  .flex-container .mat-icon {
    font-size: 1.5rem;
    margin-right: 3px !important;
    width: 24px;
    height: 24px;
    font-size: 24px;
  }

  .sm\:hidden {
    display: none !important;
  }

  .sm\:visible,
  .sm\:block {
    display: block !important;
  }

  .sm\:flex {
    display: flex !important;
  }
}

.page-title h3 {
  display: flex;
  align-items: center;
  gap: 3;
  height: 100%;
}

/* .page-title {
  display: block;
  margin-bottom: 0 !important;
  padding: 0px !important;
  font-size: 1.5rem;
  line-height: 1rem;
  font-weight: 700;
} */

.basis-content {
  flex-basis: content;
  place-content: center;
}

.color-picker {
  display: block;
  position: fixed;
  left: calc(65% - 348px);
  top: 20%;
  height: 243px;
  width: 348px;
  padding: 10px;
  border: 2px solid;
  border-radius: 6px;
}

.ball {
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
  width: 24px;
  height: 24px;
  content: " ";
  border-radius: 50%;
}

td.current-leave::before {
  content: " ";
  background-image: url("/assets/chk.svg");
  color: #000;
  padding-right: 0.5em;
  width: 12px;
  height: 12px;
  display: inline-block;
}

.right-button {
  position: absolute;
  right: 2%;
  top: 2%;
  font-size: 0.7rem;
}

.right-button:hover {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}

.mat-toolbar .spacer {
  flex: 1 1 auto;
}

/*
.mat-icon-button {
  padding: 0 10px !important;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  line-height: 40px !important;
  border-radius: 3px !important;
}
*/

.expMenuBar .mat-menu-item {
  display: inline;
}

.expMenuBar .mat-menu-panel {
  padding-left: 1rem;
  padding-right: 1rem;
}

.mat-menu-content {
  width: 100%;
  padding-left: 10px;
}

.mat-menu-panel {
  min-width: 250px !important;
}

.mat-header-cell {
  font-size: 0.875rem !important;
  line-height: 1.25rem !important;
  font-weight: 700 !important;
}

.attn-table tr th,
.attn-table tr td {
  border: 1px solid;
}

ul.menu {
  font-size: 12px;
}

ul.menu li {
  list-style: none;
  margin-left: -15px;
  display: block;
  padding: 5px;
}

ul.menu li.header > span {
  font-weight: bold;
  text-transform: uppercase;
}

ul.menu li.header > span::before {
  margin-right: 5px;
}

.color-green {
  background: #fff !important;
  color: green !important;
}

.color-red {
  background: #fff !important;
  color: red !important;
}

.h-35 {
  height: 3.5rem;
}

.lh-0 {
  line-height: 0 !important;
}

.flex-container button .btn {
  display: flex !important;
}

input {
  max-width: 100% !important;
}

.row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.mat-form-field-infix,
.mat-form-field {
  max-width: 100% !important;
}

.f-80 {
  font-size: 80% !important;
}

.table {
  width: 100%;
  font-size: 80%;
}

.table thead tr,.table thead tr .mat-menu-ripple,.table thead tr .mat-menu-item,.table thead tr .mat-icon {
  color: var(--color-light);
}

.table thead tr .mat-form-field-infix input {
  color: var(--color-dark);
}

.theme-blue .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(35 82 132 / var(--tw-bg-opacity, 1));
}

.theme-green .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(25 54 45 / var(--tw-bg-opacity, 1));
}

.theme-slate .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}

.theme-red .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(153 27 27 / var(--tw-bg-opacity, 1));
}

.theme-orange .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(154 52 18 / var(--tw-bg-opacity, 1));
}

.theme-emerald .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(6 95 70 / var(--tw-bg-opacity, 1));
}

.theme-cyan .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(21 94 117 / var(--tw-bg-opacity, 1));
}

.theme-sky .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(7 89 133 / var(--tw-bg-opacity, 1));
}

.theme-indigo .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(55 48 163 / var(--tw-bg-opacity, 1));
}

.theme-violet .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(91 33 182 / var(--tw-bg-opacity, 1));
}

.theme-rose .table thead tr {
  --tw-bg-opacity: 1;
  background-color: rgb(159 18 57 / var(--tw-bg-opacity, 1));
}

.theme-dark .table thead tr {
  background-color: var(--color-800);
  color: var(--color-light);
}

.table tbody tr {
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-right-width: 1px;
}

.table tbody tr,.table tbody tr .mat-icon,.table tbody tr .mat-menu-item,.table tbody tr .mat-menu-ripple {
  color: var(--color-dark);
}

.table tbody tr .mat-form-field-infix input {
  color: var(--color-dark);
}

.theme-blue .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(141 207 236 / var(--tw-bg-opacity, 1));
}

.theme-green .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(141 185 178 / var(--tw-bg-opacity, 1));
}

.theme-slate .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}

.theme-red .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(254 226 226 / var(--tw-bg-opacity, 1));
}

.theme-orange .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(255 237 213 / var(--tw-bg-opacity, 1));
}

.theme-emerald .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}

.theme-cyan .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(207 250 254 / var(--tw-bg-opacity, 1));
}

.theme-sky .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(224 242 254 / var(--tw-bg-opacity, 1));
}

.theme-indigo .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(224 231 255 / var(--tw-bg-opacity, 1));
}

.theme-violet .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(237 233 254 / var(--tw-bg-opacity, 1));
}

.theme-rose .table tbody tr {
  --tw-bg-opacity: 1;
  background-color: rgb(255 228 230 / var(--tw-bg-opacity, 1));
}

.theme-dark .table tbody tr {
  background-color: var(--color-100);
  color: var(--color-light);
}


#printArea .table tbody tr {
  background-color: var(--silver);
  color: var(--black);
  background-color: var(--gray);
  color: var(--white);
}

.btn-sm {
  margin-left: 0.25rem;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  place-items: center;
  align-content: center;
  align-items: center;
  border-radius: 0.125rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  text-align: center;
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.btn-sm,.btn-sm .mat-icon,.btn-sm .mat-menu-item,.btn-sm .mat-menu-ripple {
  color: var(--color-dark);
}

.btn-sm .mat-form-field-infix input {
  color: var(--color-dark);
}

.theme-blue .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(88 175 221 / var(--tw-bg-opacity, 1));
}

.theme-green .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(71 140 128 / var(--tw-bg-opacity, 1));
}

.theme-slate .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}

.theme-red .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(252 165 165 / var(--tw-bg-opacity, 1));
}

.theme-orange .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(253 186 116 / var(--tw-bg-opacity, 1));
}

.theme-emerald .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(110 231 183 / var(--tw-bg-opacity, 1));
}

.theme-cyan .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(103 232 249 / var(--tw-bg-opacity, 1));
}

.theme-sky .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(125 211 252 / var(--tw-bg-opacity, 1));
}

.theme-indigo .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(165 180 252 / var(--tw-bg-opacity, 1));
}

.theme-violet .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(196 181 253 / var(--tw-bg-opacity, 1));
}

.theme-rose .btn-sm {
  --tw-bg-opacity: 1;
  background-color: rgb(253 164 175 / var(--tw-bg-opacity, 1));
}

.theme-dark .btn-sm {
  background-color: var(--color-300);
  color: var(--color-light);
}

.btn-sm {
  font-size: 80%;
}

.btn-sm:hover {
  --tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
  --tw-invert: invert(100%);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 500ms;
}

.mat-paginator {
  width: 100%;
  padding: 2px;
}

.request-filter input {
  border: 1px solid #ccc !important;
}

.mat-expansion-panel-header {
  font-size: 1rem;
}

.text-xs .mat-expansion-panel-header {
  font-size: 0.7rem;
}

.hidden {
  display: none !important;
}

.visible {
  display: initial;
}

input {
  background: white !important;
  color: black !important;
  border: 1px solid #ccc;
  padding-left: 5px;
  padding-right: 5px;
  border-radius: 5px;
}

.mw-125 {
  max-width: 125px !important;
}

.mw-150 {
  max-width: 150px !important;
}

.mw-175 {
  max-width: 175px !important;
}

.mw-200 {
  max-width: 200px !important;
}

.mw-225 {
  max-width: 225px !important;
}

.mw-250 {
  max-width: 250px !important;
}

.mw-275 {
  max-width: 275px !important;
}

.mw-300 {
  max-width: 300px !important;
}

.card-container a.card {
  display: inline-grid;
}

app-deshboard-user,
app-deshboard-hod {
  display: flex;
  flex-wrap: wrap;
}

.mat-drawer-container {
  background: var(--color-100) !important;
}

@media (min-width: 300px) {
  .card-container a.card {
    font-size: 10px;
    padding: 2px !important;
  }
}

@media (min-width: 640px) {
  .card-container a.card {
    font-size: 0.8rem;
    padding: 3px !important;
    margin-left: 5px;
  }
}

:root {
  --white: #ffffff;
  --silver: #eee;
  --gray: #ccc;
  --black: #000;
}

#printArea {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11px;
  background-color: var(--white);
  color: var(--black);
}

#printArea table td {
  background-color: var(--white);
  color: var(--black) !important;
}

#printArea .b-gray {
  border: 1px solid var(--gray);
}

#printArea .bg-gray,
#printArea .bg-100,
#printArea .bg-200 {
  background-color: var(--silver) !important;
  color: var(--black) !important;
}

#printArea table th,
#printArea .bg-100,
#printArea .mat-table th {
  background-color: var(--gray) !important;
  color: var(--white) !important;
}

#printArea td.current-leave {
  font-weight: bold;
}

#printArea .center {
  text-align: center;
  align-content: center;
  align-items: center;
  vertical-align: middle;
}

#printArea h3 {
  font-size: 1.5rem;
  font-weight: bold;
  text-transform: uppercase;
}

#printArea td.heading {
  background-color: var(--gray);
  color: var(--black);
  border: 1px solid var(--gray);
  padding-left: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
}

#printArea td.data {
  background-color: var(--white);
  color: var(--black);
  font-weight: normal;
  border: 1px solid var(--gray);
}

#printArea td.blank-line {
  background-color: var(--white);
  height: 20px;
  border: 0px solid var(--gray);
}

#printArea td.border-dotted {
  border-bottom: 1px solid var(--gray);
}

#printArea .text-2xl {
  font-size: 1.2rem;
}

#printArea td.current-leave::before {
  content: " ";
  background-image: url("/assets/chk.svg");
  color: #000;
  padding-right: 0.5em;
  width: 5px;
  height: 12px;
  display: inline-block;
}

#printArea .blank-line {
  height: 20px;
}

#printArea .small {
  font-size: 0.8rem;
}

#printArea .data-small {
  font-size: 0.8rem;
  background-color: var(--white);
  color: var(--black);
  font-weight: normal;
  border: 1px solid var(--gray);
}

#printArea .leave-types td.data-small {
  max-width: 75px;
}

@media (min-width: 640px) {
  .col-sm-1 {
    width: 8.333333%;
  }

  .col-sm-2 {
    width: 16.666667%;
  }

  .col-sm-3 {
    width: 25%;
  }

  .col-sm-4 {
    width: 33.333333%;
  }

  .col-sm-5 {
    width: 41.666667%;
  }

  .col-sm-6 {
    width: 50%;
  }

  .col-sm-7 {
    width: 58.333333%;
  }

  .col-sm-8 {
    width: 66.666667%;
  }

  .col-sm-9 {
    width: 75%;
  }

  .col-sm-10 {
    width: 83.333333%;
  }

  .col-sm-11 {
    width: 91.666667%;
  }

  .col-sm-12 {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .col-md-1 {
    width: 8.333333%;
  }

  .col-md-2 {
    width: 16.666667%;
  }

  .col-md-3 {
    width: 25%;
  }

  .col-md-4 {
    width: 33.333333%;
  }

  .col-md-5 {
    width: 41.666667%;
  }

  .col-md-6 {
    width: 50%;
  }

  .col-md-7 {
    width: 58.333333%;
  }

  .col-md-8 {
    width: 66.666667%;
  }

  .col-md-9 {
    width: 75%;
  }

  .col-md-10 {
    width: 83.333333%;
  }

  .col-md-11 {
    width: 91.666667%;
  }

  .col-md-12 {
    width: 100%;
  }
}

.img-box {
  padding: 5px;
}

.hover\:rounded-md:hover {
  border-radius: 0.375rem;
}

.hover\:bg-white:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.hover\:font-bold:hover {
  font-weight: 700;
}

.hover\:text-black:hover {
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-sm:hover {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.dark\:bg-black:is(.dark *) {
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.dark\:text-white:is(.dark *) {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

@media (min-width: 300px) {
  .xs\:block {
    display: block;
  }

  .xs\:hidden {
    display: none;
  }

  .xs\:w-1\/4 {
    width: 25%;
  }

  .xs\:w-3\/4 {
    width: 75%;
  }

  .xs\:w-full {
    width: 100%;
  }

  .xs\:flex-1 {
    flex: 1 1 0%;
  }

  .xs\:flex-row {
    flex-direction: row;
  }

  .xs\:flex-col {
    flex-direction: column;
  }

  .xs\:flex-wrap {
    flex-wrap: wrap;
  }

  .xs\:pt-8 {
    padding-top: 2rem;
  }

  .xs\:text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 640px) {
  .sm\:block {
    display: block;
  }

  .sm\:flex {
    display: flex;
  }

  .sm\:hidden {
    display: none;
  }

  .sm\:w-1\/12 {
    width: 8.333333%;
  }

  .sm\:w-1\/2 {
    width: 50%;
  }

  .sm\:w-1\/3 {
    width: 33.333333%;
  }

  .sm\:w-1\/4 {
    width: 25%;
  }

  .sm\:w-10\/12 {
    width: 83.333333%;
  }

  .sm\:w-2\/4 {
    width: 50%;
  }

  .sm\:w-3\/12 {
    width: 25%;
  }

  .sm\:w-3\/4 {
    width: 75%;
  }

  .sm\:w-4\/12 {
    width: 33.333333%;
  }

  .sm\:w-5\/12 {
    width: 41.666667%;
  }

  .sm\:w-8\/12 {
    width: 66.666667%;
  }

  .sm\:w-80 {
    width: 20rem;
  }

  .sm\:w-full {
    width: 100%;
  }

  .sm\:flex-1 {
    flex: 1 1 0%;
  }

  .sm\:flex-none {
    flex: none;
  }

  .sm\:flex-grow {
    flex-grow: 1;
  }

  .sm\:flex-row {
    flex-direction: row;
  }

  .sm\:flex-col {
    flex-direction: column;
  }

  .sm\:flex-wrap {
    flex-wrap: wrap;
  }

  .sm\:flex-nowrap {
    flex-wrap: nowrap;
  }

  .sm\:pt-0 {
    padding-top: 0px;
  }

  .sm\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .sm\:text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}

@media (min-width: 768px) {
  .md\:flex {
    display: flex;
  }

  .md\:hidden {
    display: none;
  }

  .md\:w-1\/2 {
    width: 50%;
  }

  .md\:w-1\/3 {
    width: 33.333333%;
  }

  .md\:w-2\/4 {
    width: 50%;
  }

  .md\:w-3\/4 {
    width: 75%;
  }

  .md\:w-full {
    width: 100%;
  }

  .md\:flex-row {
    flex-direction: row;
  }
}

@media print {
  .print\:block {
    display: block;
  }

  .print\:hidden {
    display: none;
  }
}
