@-webkit-keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{-webkit-box-sizing:border-box;box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{-ms-touch-action:none;touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{-ms-touch-action:none;touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;-webkit-transform:translateZ(0);transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){-webkit-animation:marching-ants 1s;animation:marching-ants 1s;background-image:-webkit-gradient(linear,left top, right top,color-stop(50%, #fff),color-stop(50%, #444)),-webkit-gradient(linear,left top, right top,color-stop(50%, #fff),color-stop(50%, #444)),-webkit-gradient(linear,left top, left bottom,color-stop(50%, #fff),color-stop(50%, #444)),-webkit-gradient(linear,left top, left bottom,color-stop(50%, #fff),color-stop(50%, #444));background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;-webkit-animation-play-state:running;animation-play-state:running;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;-webkit-transform:translate(50%,50%);transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(-50%);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(50%);transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);-webkit-transform:translateY(50%);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;-webkit-transform:translate(-50%);transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}
/* ============================================================
 * North Assemblies Style (NAS)
 * ============================================================
 * Extracted from the "Add Assembly to Estimate" page
 * (src/components/customer/estimating/AssemblyPicker.tsx)
 * because that screen is the canonical, easy-to-read reference
 * for assembly UI across the product.
 *
 * Use these tokens / classes in any assembly-related surface:
 *   • Add Assembly to Estimate dialog
 *   • Assembly Library page
 *   • AI Assembly Generator dialog
 *   • Assembly Recipe Builder
 *   • Assembly preview / composition tables
 *
 * NAS sits UNDER NVS + NTS — never override their tokens.
 * Always use semantic colours from index.css. No raw palette literals.
 * ============================================================ */

/* ---------- Typography (NTS roles, locked sizes) ---------- */

.nas-dialog-title {
    font-size: var(--font-card-title);
    line-height: 1.4;
    font-weight: var(--weight-heading);
    font-weight: 600;
}

/* 16px / 600 — dialog header  */

.nas-dialog-description {
    font-size: var(--font-small);
    line-height: 1.45;
    color: hsl(var(--muted-foreground));
}

/* 13px            — sub-line  */

.nas-section-title {
    font-size: var(--font-section);
    line-height: 1.35;
    font-weight: var(--weight-heading);
    font-weight: 600;
}

/* 14px / 600 — "Composition" */

.nas-section-hint {
    font-size: var(--font-small);
    line-height: 1.45;
    color: hsl(var(--muted-foreground));
}

/* "9 items"                  */

.nas-row-title {
    font-size: var(--font-body);
    line-height: 1.5;
    font-weight: 500;
}

/* 14px — assembly / item name */

.nas-row-meta {
    font-size: var(--font-small);
    line-height: 1.45;
    color: hsl(var(--muted-foreground));
}

/* unit · category · count     */

.nas-row-code {
    font-family: ui-monospace, SF Mono, SFMono-Regular, Cascadia Mono, Segoe UI Mono, Roboto Mono, Menlo, Consolas, Liberation Mono, monospace;
    font-size: var(--font-micro);
    line-height: 1.4;
    letter-spacing: 0.02em;
    color: hsl(var(--muted-foreground));
}

.nas-tab-label {
    font-size: var(--font-small);
    line-height: 1.45;
    font-weight: 500;
}

/* Pinned / Recent / Library   */

.nas-kpi-value {
    font-variant-numeric: tabular-nums slashed-zero;
    font-feature-settings: "tnum" 1, "zero" 1;
    font-size: var(--font-card-title);
    line-height: 1.4;
    font-weight: var(--weight-heading);
    font-weight: 600;
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  }

.nas-money {
    font-variant-numeric: tabular-nums slashed-zero;
    font-feature-settings: "tnum" 1, "zero" 1;
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  }

/* ---------- List rows (left panel) ---------- */

.nas-list > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.nas-list {
    padding: 0.5rem;
}

.nas-list-row {
    display: flex;
    align-items: stretch;
    overflow: hidden;
    border-radius: calc(var(--radius) - 2px);
    border-width: 1px;
    border-color: transparent;
    background-color: hsl(var(--background));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

@media print {
  .daily-report-section .nas-list-row {
    border-color: #ddd;
  }
}

.nas-list-row:hover {
    border-color: hsl(var(--accent-foreground) / 0.1);
    background-color: hsl(var(--accent));
}

.nas-list-row[data-selected="true"],
.nas-list-row.is-selected {
    border-color: hsl(var(--primary) / 0.4);
    background-color: hsl(var(--accent));
}

.nas-list-row-body {
    min-width: 0px;
    flex: 1 1 0%;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    text-align: left;
}

/* Category colour rail (8px wide, full-height left edge of every row) */

.nas-rail {
    width: 0.25rem;
    flex-shrink: 0;
}

/* ---------- Tabs (Pinned / Recent / Library) ---------- */

.nas-tab {
    display: inline-flex;
    flex: 1 1 0%;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    border-radius: calc(var(--radius) - 2px);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
    font-size: var(--font-small);
    line-height: 1.45;
    font-weight: 500;
    color: hsl(var(--muted-foreground));
}

.nas-tab:hover {
    background-color: hsl(var(--background) / 0.6);
    color: hsl(var(--foreground));
}

.nas-tab[aria-pressed="true"],
.nas-tab.is-active {
    border-width: 1px;
    background-color: hsl(var(--background));
    color: hsl(var(--foreground));
    --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);
}

@media print {
  .daily-report-section .nas-tab[aria-pressed="true"],.daily-report-section 
.nas-tab.is-active {
    border-color: #ddd;
  }
}

/* ---------- Composition / preview table ---------- */

.nas-table {
    width: 100%;
    font-size: var(--font-small);
    line-height: 1.45;
}

.nas-table thead {
    background-color: hsl(var(--muted) / 0.6);
    color: hsl(var(--muted-foreground));
}

.nas-table th {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
    text-align: left;
    font-size: var(--font-micro);
    line-height: 1.4;
    letter-spacing: 0.02em;
    font-weight: 500;
}

.nas-table th.is-num {
    text-align: right;
}

.nas-table tbody tr {
    border-top-width: 1px;
}

.nas-table td {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

.nas-table td.is-num {
    font-variant-numeric: tabular-nums slashed-zero;
    font-feature-settings: "tnum" 1, "zero" 1;
    text-align: right;
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  }

.nas-table td.is-total {
    font-variant-numeric: tabular-nums slashed-zero;
    font-feature-settings: "tnum" 1, "zero" 1;
    text-align: right;
    font-weight: 500;
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
  }

.nas-table td.is-code {
    font-family: ui-monospace, SF Mono, SFMono-Regular, Cascadia Mono, Segoe UI Mono, Roboto Mono, Menlo, Consolas, Liberation Mono, monospace;
    color: hsl(var(--muted-foreground));
}

.nas-table td.is-name {
    font-weight: 500;
}

/* ---------- Section header (icon + title + hint) ---------- */

.nas-section-header {
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.nas-section-header-left {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.nas-section-header-icon {
    color: hsl(var(--muted-foreground));
}

/* ---------- Empty / placeholder states ---------- */

.nas-empty {
    display: flex;
    flex: 1 1 0%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem;
    text-align: center;
    color: hsl(var(--muted-foreground));
}

.nas-empty-icon {
    margin-bottom: 0.75rem;
    height: 2.5rem;
    width: 2.5rem;
    opacity: 0.4;
}

.nas-empty-title {
    margin-bottom: 0.25rem;
    font-size: var(--font-body);
    line-height: 1.5;
    font-weight: 500;
    color: hsl(var(--foreground));
}

.nas-empty-body {
    font-size: var(--font-small);
    line-height: 1.45;
}

/* ---------- Footer / commit bar ---------- */

.nas-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    border-top-width: 1px;
    background-color: hsl(var(--muted) / 0.4);
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

.nas-footer-hint {
    font-size: var(--font-small);
    line-height: 1.45;
    color: hsl(var(--muted-foreground));
}

*, ::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(59 130 246 / 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(59 130 246 / 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 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, 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, SF Mono, SFMono-Regular, Cascadia Mono, Segoe UI Mono, Roboto Mono, Menlo, Consolas, Liberation Mono, 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::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

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;
}

:root {
    /* ═══════════════════════════════════════════════════════════════
       NORTH VISUAL SYSTEM (NVS) v1 — LIGHT
       Linear typographic discipline + Mercury financial restraint.
       Warm-tinted neutral ramp, single desaturated brand accent,
       paper surfaces, hairline borders, low-opacity warm shadows.
       Token NAMES preserved for backwards compatibility (579 files).
       ═══════════════════════════════════════════════════════════════ */

    /* Surfaces — calm cool-slate neutrals (locked design foundation).
       Warm hue 30 → cool hue ~220, very low chroma: precise financial
       feel, lets semantic colour pop. Names preserved; values re-pointed. */
    --background: 220 16% 98%;         /* canvas — faint cool, near white */
    --foreground: 220 20% 16%;         /* near-black ink, slight cool */

    --card: 0 0% 100%;                 /* pure surface lifts off the canvas */
    --card-foreground: 220 20% 16%;

    --popover: 0 0% 100%;
    --popover-foreground: 220 20% 16%;

    /* Brand — desaturated indigo. Earns its place; used sparingly.
       (Already matched the foundation — unchanged.) */
    --primary: 222 55% 42%;
    --primary-foreground: 0 0% 100%;

    /* Secondary — quiet cool-grey surface */
    --secondary: 220 14% 95%;
    --secondary-foreground: 220 16% 22%;

    /* Muted — section bands, quiet fills */
    --muted: 220 14% 95%;
    --muted-foreground: 220 10% 42%;

    /* Accent — subtle brand-tinted hover/active surface */
    --accent: 222 45% 94%;
    --accent-foreground: 222 45% 30%;

    /* Destructive — aligned to the muted danger tone */
    --destructive: 4 58% 47%;
    --destructive-foreground: 0 0% 100%;

    /* Hairlines — single-pixel borders do most of the work */
    --border: 220 14% 89%;
    --input: 220 14% 86%;
    --ring: 222 55% 42%;

    --radius: 0.5rem;

    /* Sidebar — DARK (Procore-grade). Near-black ink surface,
       white labels, brand orange active rail. */
    --sidebar-background: 220 22% 11%;          /* #14181F-ish near-black */
    --sidebar-foreground: 220 14% 88%;          /* near-white text */
    --sidebar-primary: 18 86% 54%;              /* construction orange */
    --sidebar-primary-foreground: 0 0% 100%;
    --sidebar-accent: 220 18% 17%;              /* hover surface */
    --sidebar-accent-foreground: 0 0% 100%;
    --sidebar-border: 220 18% 18%;              /* hairline on dark */
    --sidebar-ring: 18 86% 54%;

    /* Semantic status — one muted, document-grade family (locked
       foundation values). Solid = text/icon/strong pill; soft = tinted
       backgrounds; soft-foreground = text on soft. */
    --success: 152 44% 37%;
    --success-foreground: 0 0% 100%;
    --success-soft: 150 40% 95%;
    --success-soft-foreground: 152 50% 25%;

    --warning: 36 64% 44%;
    --warning-foreground: 0 0% 100%;
    --warning-soft: 40 72% 93%;
    --warning-soft-foreground: 30 60% 30%;

    --danger: 4 58% 47%;
    --danger-foreground: 0 0% 100%;
    --danger-soft: 6 62% 95%;
    --danger-soft-foreground: 4 60% 36%;

    --info: 205 48% 42%;
    --info-foreground: 0 0% 100%;
    --info-soft: 205 50% 95%;
    --info-soft-foreground: 205 55% 28%;

    /* Selected / nav-active — brand accent only, no gold */
    --selected-gold: 222 55% 42%;
    --selected-gold-foreground: 0 0% 100%;

    --nav-active: 222 55% 42%;
    --nav-active-bg: 222 50% 96%;
    --nav-active-hover: 222 55% 36%;

    /* ═══════════════════════════════════════════════════════════════
       NVS v2 — PROCORE-GRADE PALETTE (page-level)
       Construction orange brand + dark sidebar. Reusable across app.
       ═══════════════════════════════════════════════════════════════ */
    /* Legacy nvs-v2 accents RETIRED onto the locked system (token values
       only — names kept, so all ~144 consuming files conform instantly).
       The loud construction-orange "brand/CTA" → the one indigo brand. */
    --nvs-orange: 222 55% 42%;         /* → --primary (brand/CTA/active rail) */
    --nvs-orange-soft: 222 55% 42%;    /* → --primary (used at /15-/30 opacity) */
    --nvs-orange-glow: 222 70% 66%;    /* → bright indigo (active icon on dark) */
    --nvs-navy: 222 53% 20%;           /* #18264C — chart bars (cash in) */
    /* Dark hero-banner surface. Stays DARK in both modes (white text on
       top). Replaces decorative from-slate-900 banner gradients. */
    --hero: 222 39% 15%;
    --hero-foreground: 0 0% 100%;
    /* Health/score-ring status. ONE source of truth for every health-score
       ring arc + its percentage label. Vivid on the dark --hero banner;
       constant across light & dark modes (like --hero) so every score reads
       the same everywhere. ≥80 good · 40–79 watch · <40 bad. */
    --score-good: 152 60% 50%;
    --score-watch: 36 92% 56%;
    --score-bad: 0 78% 62%;
    --nvs-ink: 220 25% 9%;             /* #0F141C — primary text */
    --nvs-ink-soft: 220 18% 25%;       /* #34404C — secondary text */
    --nvs-muted: 220 8% 51%;           /* #78808C — meta text */
    --nvs-line: 220 13% 91%;           /* #E4E6EA — hairlines */
    --nvs-page: 220 17% 97%;           /* #F7F8FA — page bg */
    --nvs-card: 0 0% 100%;             /* #FFFFFF — card surface */

    /* NVS v2 status tones → locked semantic family (one meaning each). */
    --nvs-positive: 152 44% 37%;       /* → --success (money in / positive) */
    --nvs-monitor:  36 64% 44%;        /* → --warning (attention / due-soon) */
    --nvs-negative: 4 58% 47%;         /* → --danger  (money out / negative) */

    /* NVS v2 sidebar category accents — vivid, work on dark sidebar */
    --nvs-cat-accounts:    152 65% 52%; /* green */
    --nvs-cat-trust:       213 93% 68%; /* sky */
    --nvs-cat-commitments: 258 91% 76%; /* violet */
    --nvs-cat-costs:       25 95% 61%;  /* warm orange */
    --nvs-cat-purchasing:  43 96% 56%;  /* gold */
    --nvs-cat-payroll:     189 81% 53%; /* cyan */
    --nvs-cat-reports:     330 86% 71%; /* pink */

    /* Conversation / domain accents — desaturated set */
    --project: 222 55% 42%;
    --variation: 32 75% 42%;
    --defect: 0 62% 48%;
    --client-communication: 152 45% 36%;
    --subcontractor: 262 38% 50%;

    /* Priority */
    --priority-low: 152 45% 36%;
    --priority-medium: 32 75% 42%;
    --priority-high: 0 62% 48%;
    --priority-critical: 0 62% 48%;

    /* Cost Centre Hierarchy — NVS cool-slate depth ramp (one hue family,
       depth by lightness only; rail = single brand indigo fading w/ depth).
       Replaces the old 4-hue scheme. Top level = strongest anchor band;
       deeper sub-codes step progressively toward the white item field. */
    /* Legible value ladder (was too subtle: 92/95/96.8/97.8). Top level
       is a clear "section header" bar; each level a distinct step toward
       the white item field. One hue — depth read by value, not colour. */
    --cost-level-0-bg: 220 14% 86%;
    --cost-level-0-border: 222 55% 42%;
    --cost-level-1-bg: 220 12% 91%;
    --cost-level-1-border: 222 38% 58%;
    --cost-level-2-bg: 220 10% 95%;
    --cost-level-2-border: 222 26% 72%;
    --cost-level-3-bg: 220 8% 97.3%;
    --cost-level-3-border: 222 18% 82%;

    /* Cost Items — NO zebra. Single uniform white field; structure is
       carried by the bands above + a hairline divider + hover. (odd is
       kept equal to even so any legacy alternation is visually inert.) */
    --cost-item-row-even: 0 0% 100%;
    --cost-item-row-odd: 0 0% 100%;
    --cost-item-hover: 222 40% 96%;
    --cost-item-divider: 220 13% 92%;

    /* Selected / active row — OPAQUE (not an alpha tint) so it fully
       replaces whatever is underneath: white item rows AND the slate
       cost-code/sub-code bands read identically and unmistakably. Solid
       brand frame on top. */
    --row-active-bg: 222 46% 91%;
    --row-active-border: 222 55% 42%;

    /* Trade / cost-class chips — controlled categorical set (locked
       foundation). Only ever rendered as a small lettered chip. */
    --class-material: 24 48% 46%;      /* M — clay / earth */
    --class-labour: 222 28% 47%;       /* L — slate-indigo (ties to brand) */
    --class-plant: 168 34% 38%;        /* P — deep teal (machinery) */
    --class-subcontract: 286 30% 52%;  /* SC — muted violet (external) */

    /* Project context */
    --project-context-bg: 222 45% 98%;
    --project-context-accent: 222 55% 42%;
    --project-context-border: 222 25% 90%;

    /* Animation durations */
    --transition-fast: 120ms;
    --transition-base: 180ms;
    --transition-slow: 240ms;

    /* Dashboard health — quiet */
    --dashboard-healthy: 152 45% 36%;
    --dashboard-healthy-bg: 152 35% 95%;
    --dashboard-attention: 32 75% 42%;
    --dashboard-attention-bg: 38 70% 95%;
    --dashboard-urgent: 0 62% 48%;
    --dashboard-urgent-bg: 0 55% 96%;
    --dashboard-neutral: 222 55% 42%;
    --dashboard-neutral-bg: 222 50% 96%;

    /* Lead scoring — quiet */
    --lead-hot: 0 62% 48%;
    --lead-hot-bg: 0 55% 97%;
    --lead-warm: 32 75% 42%;
    --lead-warm-bg: 38 70% 95%;
    --lead-cool: 222 55% 42%;
    --lead-cool-bg: 222 50% 97%;
    --lead-cold: 220 10% 45%;
    --lead-cold-bg: 30 14% 96%;

    /* ─────────────────────────────────────────────────────────────
       Category / wayfinding palette (3rd colour role). Deliberately
       LOW chroma (S ≤ ~30 vs status' 45–65) and on hues that AVOID the
       reserved status/brand hues (brand 222, success 152, danger 4,
       warning 36, info 205) — so a category/section rail is never
       misread as a green/red/amber status or a brand signal. Used as
       quiet rails + faint -bg tints only.
       ───────────────────────────────────────────────────────────── */
    --cat-project: 248 24% 52%;        /* blue-violet (off brand-222) */
    --cat-project-bg: 248 22% 96%;
    --cat-project-border: 248 18% 87%;

    --cat-financial: 188 26% 42%;      /* calm teal (NOT success-green) */
    --cat-financial-bg: 188 22% 95%;
    --cat-financial-border: 188 20% 84%;

    --cat-procurement: 286 24% 54%;    /* muted violet */
    --cat-procurement-bg: 286 20% 96%;
    --cat-procurement-border: 286 18% 87%;

    --cat-estimating: 92 22% 44%;      /* muted olive (off success/warning) */
    --cat-estimating-bg: 92 20% 95%;
    --cat-estimating-border: 92 18% 84%;

    --cat-people: 322 22% 56%;         /* muted mauve */
    --cat-people-bg: 322 20% 96%;
    --cat-people-border: 322 18% 88%;

    --cat-safety: 22 30% 50%;          /* warm terracotta (NOT danger-red) */
    --cat-safety-bg: 22 28% 96%;
    --cat-safety-border: 22 24% 87%;

    --cat-utility: 220 10% 50%;        /* neutral slate */
    --cat-utility-bg: 220 10% 96%;
    --cat-utility-border: 220 10% 88%;

    /* Elevation — low-opacity warm shadows; borders do most of the work */
    --elev-flat: none;
    --elev-raised: 0 1px 2px hsl(220 25% 12% / 0.04);
    --elev-floating: 0 4px 16px hsl(220 25% 12% / 0.06);
    --elev-overlay: 0 12px 40px hsl(220 25% 12% / 0.12);

    /* Motion */
    --motion-instant: 80ms;
    --motion-quick: 120ms;
    --motion-base: 180ms;
    --motion-deliberate: 240ms;
    --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-spring: cubic-bezier(0.32, 0.72, 0, 1);

    /* Typography scale — preserved (NTS chapter of NVS) */
    --font-display: 1.75rem;
    --font-page-title: 1.25rem;
    --font-section: 1rem;
    --font-card-title: 0.9375rem;
    --font-body: 0.875rem;
    --font-small: 0.75rem;
    --font-micro: 0.6875rem;

    --weight-heading: 600;
    --weight-body-strong: 500;
    --weight-body: 400;

    --leading-heading: 1.25;
    --leading-body: 1.5;
  }

/* NTS — Numeric utility: tabular figures so digits align in columns
     (KPIs, currency cells, table totals, financial rollups). 'zero'
     gives a slashed/dotted zero so 0 can't be misread as O in dense
     cost/quantity data (finance-grade). font-feature-settings REPLACES
     (does not merge) the body rule, so 'zero' must be repeated here. */

.nts-numeric,
  .tabular-nums {
    font-variant-numeric: tabular-nums slashed-zero;
    font-feature-settings: "tnum" 1, "zero" 1;
  }

.dark {
    /* ═══════════════════════════════════════════════════════════════
       NVS v1 — DARK
       True paired ramp (not inverted). Surfaces lift with elevation,
       not borders. Brand desaturated for dark surfaces.
       ═══════════════════════════════════════════════════════════════ */

    --background: 220 18% 9%;
    --foreground: 220 12% 92%;

    --card: 220 16% 12%;
    --card-foreground: 220 12% 92%;

    --popover: 220 16% 12%;
    --popover-foreground: 220 12% 92%;

    --primary: 222 60% 62%;
    --primary-foreground: 220 25% 10%;

    --secondary: 220 14% 16%;
    --secondary-foreground: 220 12% 92%;

    --muted: 220 14% 16%;
    --muted-foreground: 220 10% 64%;

    --accent: 222 30% 20%;
    --accent-foreground: 222 60% 80%;

    --destructive: 4 58% 55%;
    --destructive-foreground: 0 0% 100%;

    --border: 220 14% 20%;
    --input: 220 14% 18%;
    --ring: 222 60% 62%;

    --sidebar-background: 220 18% 11%;
    --sidebar-foreground: 30 10% 86%;
    --sidebar-primary: 222 60% 62%;
    --sidebar-primary-foreground: 220 25% 10%;
    --sidebar-accent: 220 14% 18%;
    --sidebar-accent-foreground: 222 60% 80%;
    --sidebar-border: 220 14% 18%;
    --sidebar-ring: 222 60% 62%;

    /* Semantic status — dark, muted */
    --success: 152 50% 52%;
    --success-foreground: 152 30% 8%;
    --success-soft: 152 30% 16%;
    --success-soft-foreground: 152 55% 78%;

    --warning: 36 64% 58%;
    --warning-foreground: 36 30% 8%;
    --warning-soft: 38 45% 16%;
    --warning-soft-foreground: 34 75% 78%;

    --danger: 4 58% 58%;
    --danger-foreground: 4 30% 8%;
    --danger-soft: 6 40% 18%;
    --danger-soft-foreground: 4 70% 82%;

    --info: 205 48% 60%;
    --info-foreground: 205 30% 8%;
    --info-soft: 205 40% 18%;
    --info-soft-foreground: 205 65% 82%;

    --selected-gold: 222 60% 62%;
    --selected-gold-foreground: 220 25% 10%;

    --nav-active: 222 60% 62%;
    --nav-active-bg: 222 30% 20%;
    --nav-active-hover: 222 60% 70%;

    --project: 222 60% 62%;
    --variation: 32 70% 58%;
    --defect: 0 60% 58%;
    --client-communication: 152 50% 52%;
    --subcontractor: 262 45% 65%;

    --priority-low: 152 50% 52%;
    --priority-medium: 32 70% 58%;
    --priority-high: 0 60% 58%;
    --priority-critical: 0 60% 58%;

    /* Cost Centre Hierarchy — cool-slate dark ramp (mirrors light:
       one hue family, depth by lightness, single brand rail). Bands sit
       just above the dark item field so they lift; deeper steps settle
       back toward it. */
    /* Dark: same legible ladder — top level lifts clearly above the dark
       item field (~12% L); each level steps down toward it. */
    --cost-level-0-bg: 220 16% 24%;
    --cost-level-0-border: 222 55% 58%;
    --cost-level-1-bg: 220 15% 19.5%;
    --cost-level-1-border: 222 42% 50%;
    --cost-level-2-bg: 220 14% 16%;
    --cost-level-2-border: 222 30% 44%;
    --cost-level-3-bg: 220 13% 13.5%;
    --cost-level-3-border: 222 20% 38%;

    /* Cost Items — NO zebra (odd == even, uniform dark field). */
    --cost-item-row-even: 220 16% 12%;
    --cost-item-row-odd: 220 16% 12%;
    --cost-item-hover: 222 30% 18%;
    --cost-item-divider: 220 14% 18%;

    /* Selected / active row — opaque dark indigo (sits clearly above the
       dark item field AND the dark cost-code bands). */
    --row-active-bg: 222 38% 28%;
    --row-active-border: 222 60% 62%;

    /* Trade / cost-class chips — dark variants (lighter so white chip
       text stays legible on a dark field). */
    --class-material: 24 50% 58%;
    --class-labour: 222 40% 65%;
    --class-plant: 168 38% 52%;
    --class-subcontract: 286 38% 66%;

    --project-context-bg: 222 30% 14%;
    --project-context-accent: 222 60% 62%;
    --project-context-border: 222 25% 22%;

    --dashboard-healthy: 152 50% 52%;
    --dashboard-healthy-bg: 152 30% 14%;
    --dashboard-attention: 32 70% 58%;
    --dashboard-attention-bg: 32 45% 14%;
    --dashboard-urgent: 0 60% 58%;
    --dashboard-urgent-bg: 0 40% 16%;
    --dashboard-neutral: 222 60% 62%;
    --dashboard-neutral-bg: 222 30% 16%;

    --lead-hot: 0 60% 58%;
    --lead-hot-bg: 0 40% 16%;
    --lead-warm: 32 70% 58%;
    --lead-warm-bg: 32 45% 14%;
    --lead-cool: 222 60% 62%;
    --lead-cool-bg: 222 30% 16%;
    --lead-cold: 220 10% 56%;
    --lead-cold-bg: 220 14% 16%;

    /* Category palette — dark, lifted */
    /* Dark — same calm, status-distinct wayfinding palette (low chroma,
       hues off the reserved status/brand hues), lifted for dark surfaces. */
    --cat-project: 248 30% 70%;
    --cat-project-bg: 248 22% 17%;
    --cat-project-border: 248 24% 32%;

    --cat-financial: 188 30% 58%;
    --cat-financial-bg: 188 24% 14%;
    --cat-financial-border: 188 26% 28%;

    --cat-procurement: 286 30% 70%;
    --cat-procurement-bg: 286 22% 17%;
    --cat-procurement-border: 286 24% 32%;

    --cat-estimating: 92 26% 58%;
    --cat-estimating-bg: 92 22% 14%;
    --cat-estimating-border: 92 22% 28%;

    --cat-people: 322 28% 70%;
    --cat-people-bg: 322 22% 17%;
    --cat-people-border: 322 24% 32%;

    --cat-safety: 22 36% 62%;
    --cat-safety-bg: 22 28% 16%;
    --cat-safety-border: 22 30% 30%;

    --cat-utility: 220 12% 62%;
    --cat-utility-bg: 220 12% 16%;
    --cat-utility-border: 220 12% 28%;

    /* Elevation — dark mode */
    --elev-flat: none;
    --elev-raised: 0 1px 2px hsl(0 0% 0% / 0.40);
    --elev-floating: 0 4px 16px hsl(0 0% 0% / 0.50);
    --elev-overlay: 0 12px 40px hsl(0 0% 0% / 0.65);

    /* ═══════════════════════════════════════════════════════════════
       NVS surface + ink tokens — DARK
       Pages and components reference these directly via
       hsl(var(--nvs-*)). Without dark overrides they keep their
       light values and pages render white in dark mode.
       ═══════════════════════════════════════════════════════════════ */
    --nvs-page: 220 18% 9%;          /* matches --background */
    --nvs-card: 220 16% 12%;         /* matches --card */
    --nvs-line: 220 14% 20%;         /* matches --border */
    --nvs-ink: 220 12% 92%;           /* matches --foreground */
    --nvs-ink-soft: 220 10% 78%;     /* secondary text on dark */
    --nvs-muted: 220 10% 60%;        /* meta text on dark */
    --nvs-navy: 222 55% 70%;         /* lifted for dark chart bars */
    /* Hero stays dark in dark mode too (subtle lift off --background 9%). */
    --hero: 222 30% 13%;
    --hero-foreground: 0 0% 100%;
    /* Score-ring status — same vivid values as :root (constant across modes). */
    --score-good: 152 60% 50%;
    --score-watch: 36 92% 56%;
    --score-bad: 0 78% 62%;

    /* Legacy nvs-v2 status → locked semantic family (dark values). */
    --nvs-positive: 152 50% 52%;       /* → --success (dark) */
    --nvs-monitor:  36 64% 58%;        /* → --warning (dark) */
    --nvs-negative: 4 58% 58%;         /* → --danger  (dark) */
  }

* {
    border-color: hsl(var(--border));
}

body {
    background-color: hsl(var(--background));
    color: hsl(var(--foreground));
    /* NDS: tabular figures + slashed zero so numbers align AND 0 is
       unambiguous vs O (finance/estimating-grade). */
    font-feature-settings: 'tnum' 1, 'zero' 1, 'cv11' 1;
}

/* Remove spinner arrows from all number inputs globally */

input[type="number"]::-webkit-inner-spin-button,
  input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }

input[type="number"] {
    -moz-appearance: textfield;
    -webkit-appearance: textfield;
            appearance: textfield;
  }

.\!container {
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 2rem !important;
    padding-left: 2rem !important;
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-right: 2rem;
    padding-left: 2rem;
}

@media (min-width: 1400px) {

    .\!container {
        max-width: 1400px !important;
    }

    .container {
        max-width: 1400px;
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.pointer-events-none {
    pointer-events: none;
}

.pointer-events-auto {
    pointer-events: auto;
}

.\!visible {
    visibility: visible !important;
}

.visible {
    visibility: visible;
}

.invisible {
    visibility: hidden;
}

.collapse {
    visibility: collapse;
}

.static {
    position: static;
}

.fixed {
    position: fixed;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.sticky {
    position: sticky;
}

.inset-0 {
    inset: 0px;
}

.inset-2 {
    inset: 0.5rem;
}

.inset-4 {
    inset: 1rem;
}

.inset-x-0 {
    left: 0px;
    right: 0px;
}

.inset-x-3 {
    left: 0.75rem;
    right: 0.75rem;
}

.inset-y-0 {
    top: 0px;
    bottom: 0px;
}

.-bottom-0\.5 {
    bottom: -0.125rem;
}

.-bottom-1 {
    bottom: -0.25rem;
}

.-bottom-2 {
    bottom: -0.5rem;
}

.-bottom-6 {
    bottom: -1.5rem;
}

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

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

.-left-6 {
    left: -1.5rem;
}

.-left-\[21px\] {
    left: -21px;
}

.-left-\[25px\] {
    left: -25px;
}

.-left-\[9px\] {
    left: -9px;
}

.-left-px {
    left: -1px;
}

.-right-0\.5 {
    right: -0.125rem;
}

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

.-right-2 {
    right: -0.5rem;
}

.-right-3 {
    right: -0.75rem;
}

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

.-right-6 {
    right: -1.5rem;
}

.-right-px {
    right: -1px;
}

.-top-0\.5 {
    top: -0.125rem;
}

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

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

.-top-2\.5 {
    top: -0.625rem;
}

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

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

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

.-top-6 {
    top: -1.5rem;
}

.-top-7 {
    top: -1.75rem;
}

.bottom-0 {
    bottom: 0px;
}

.bottom-1 {
    bottom: 0.25rem;
}

.bottom-10 {
    bottom: 2.5rem;
}

.bottom-2 {
    bottom: 0.5rem;
}

.bottom-20 {
    bottom: 5rem;
}

.bottom-3 {
    bottom: 0.75rem;
}

.bottom-4 {
    bottom: 1rem;
}

.bottom-6 {
    bottom: 1.5rem;
}

.bottom-full {
    bottom: 100%;
}

.left-0 {
    left: 0px;
}

.left-0\.5 {
    left: 0.125rem;
}

.left-1 {
    left: 0.25rem;
}

.left-1\.5 {
    left: 0.375rem;
}

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

.left-14 {
    left: 3.5rem;
}

.left-16 {
    left: 4rem;
}

.left-2 {
    left: 0.5rem;
}

.left-2\.5 {
    left: 0.625rem;
}

.left-3 {
    left: 0.75rem;
}

.left-4 {
    left: 1rem;
}

.left-5 {
    left: 1.25rem;
}

.left-6 {
    left: 1.5rem;
}

.left-\[11px\] {
    left: 11px;
}

.left-\[15px\] {
    left: 15px;
}

.left-\[17px\] {
    left: 17px;
}

.left-\[32px\] {
    left: 32px;
}

.left-\[50\%\] {
    left: 50%;
}

.left-\[9px\] {
    left: 9px;
}

.left-full {
    left: 100%;
}

.right-0 {
    right: 0px;
}

.right-0\.5 {
    right: 0.125rem;
}

.right-1 {
    right: 0.25rem;
}

.right-1\.5 {
    right: 0.375rem;
}

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

.right-10 {
    right: 2.5rem;
}

.right-12 {
    right: 3rem;
}

.right-2 {
    right: 0.5rem;
}

.right-2\.5 {
    right: 0.625rem;
}

.right-3 {
    right: 0.75rem;
}

.right-4 {
    right: 1rem;
}

.right-5 {
    right: 1.25rem;
}

.right-6 {
    right: 1.5rem;
}

.right-\[25\%\] {
    right: 25%;
}

.top-0 {
    top: 0px;
}

.top-1 {
    top: 0.25rem;
}

.top-1\.5 {
    top: 0.375rem;
}

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

.top-10 {
    top: 2.5rem;
}

.top-12 {
    top: 3rem;
}

.top-16 {
    top: 4rem;
}

.top-2 {
    top: 0.5rem;
}

.top-2\.5 {
    top: 0.625rem;
}

.top-20 {
    top: 5rem;
}

.top-3 {
    top: 0.75rem;
}

.top-3\.5 {
    top: 0.875rem;
}

.top-4 {
    top: 1rem;
}

.top-5 {
    top: 1.25rem;
}

.top-6 {
    top: 1.5rem;
}

.top-8 {
    top: 2rem;
}

.top-\[36px\] {
    top: 36px;
}

.top-\[49px\] {
    top: 49px;
}

.top-\[50\%\] {
    top: 50%;
}

.top-full {
    top: 100%;
}

.\!isolate {
    isolation: isolate !important;
}

.isolate {
    isolation: isolate;
}

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

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

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

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

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

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

.z-\[1000\] {
    z-index: 1000;
}

.z-\[100\] {
    z-index: 100;
}

.z-\[15\] {
    z-index: 15;
}

.z-\[45\] {
    z-index: 45;
}

.z-\[5\] {
    z-index: 5;
}

.z-\[60\] {
    z-index: 60;
}

.z-\[9999\] {
    z-index: 9999;
}

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

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

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

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

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

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

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

.col-span-full {
    grid-column: 1 / -1;
}

.m-0 {
    margin: 0px;
}

.m-2 {
    margin: 0.5rem;
}

.m-4 {
    margin: 1rem;
}

.-mx-0\.5 {
    margin-left: -0.125rem;
    margin-right: -0.125rem;
}

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

.-mx-1\.5 {
    margin-left: -0.375rem;
    margin-right: -0.375rem;
}

.-mx-2 {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}

.-mx-3 {
    margin-left: -0.75rem;
    margin-right: -0.75rem;
}

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

.-mx-6 {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
}

.-my-0\.5 {
    margin-top: -0.125rem;
    margin-bottom: -0.125rem;
}

.mx-0\.5 {
    margin-left: 0.125rem;
    margin-right: 0.125rem;
}

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

.mx-1\.5 {
    margin-left: 0.375rem;
    margin-right: 0.375rem;
}

.mx-2 {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.mx-3\.5 {
    margin-left: 0.875rem;
    margin-right: 0.875rem;
}

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

.mx-6 {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.my-0\.5 {
    margin-top: 0.125rem;
    margin-bottom: 0.125rem;
}

.my-1 {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.my-1\.5 {
    margin-top: 0.375rem;
    margin-bottom: 0.375rem;
}

.my-2 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.my-3 {
    margin-top: 0.75rem;
    margin-bottom: 0.75rem;
}

.my-4 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.\!mt-0 {
    margin-top: 0px !important;
}

.-mb-6 {
    margin-bottom: -1.5rem;
}

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

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

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

.-ml-2\.5 {
    margin-left: -0.625rem;
}

.-ml-3 {
    margin-left: -0.75rem;
}

.-ml-3\.5 {
    margin-left: -0.875rem;
}

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

.-mr-2 {
    margin-right: -0.5rem;
}

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

.-mt-0\.5 {
    margin-top: -0.125rem;
}

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

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

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

.-mt-6 {
    margin-top: -1.5rem;
}

.-mt-7 {
    margin-top: -1.75rem;
}

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

.mb-0\.5 {
    margin-bottom: 0.125rem;
}

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

.mb-1\.5 {
    margin-bottom: 0.375rem;
}

.mb-2 {
    margin-bottom: 0.5rem;
}

.mb-2\.5 {
    margin-bottom: 0.625rem;
}

.mb-3 {
    margin-bottom: 0.75rem;
}

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

.mb-5 {
    margin-bottom: 1.25rem;
}

.mb-6 {
    margin-bottom: 1.5rem;
}

.mb-8 {
    margin-bottom: 2rem;
}

.ml-0\.5 {
    margin-left: 0.125rem;
}

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

.ml-1\.5 {
    margin-left: 0.375rem;
}

.ml-10 {
    margin-left: 2.5rem;
}

.ml-11 {
    margin-left: 2.75rem;
}

.ml-12 {
    margin-left: 3rem;
}

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

.ml-3 {
    margin-left: 0.75rem;
}

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

.ml-5 {
    margin-left: 1.25rem;
}

.ml-6 {
    margin-left: 1.5rem;
}

.ml-7 {
    margin-left: 1.75rem;
}

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

.ml-\[3\.25rem\] {
    margin-left: 3.25rem;
}

.ml-auto {
    margin-left: auto;
}

.mr-0\.5 {
    margin-right: 0.125rem;
}

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

.mr-1\.5 {
    margin-right: 0.375rem;
}

.mr-2 {
    margin-right: 0.5rem;
}

.mr-3 {
    margin-right: 0.75rem;
}

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

.mr-6 {
    margin-right: 1.5rem;
}

.mr-auto {
    margin-right: auto;
}

.mt-0 {
    margin-top: 0px;
}

.mt-0\.5 {
    margin-top: 0.125rem;
}

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

.mt-1\.5 {
    margin-top: 0.375rem;
}

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

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

.mt-2\.5 {
    margin-top: 0.625rem;
}

.mt-24 {
    margin-top: 6rem;
}

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

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

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

.mt-6 {
    margin-top: 1.5rem;
}

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

.mt-\[3px\] {
    margin-top: 3px;
}

.mt-auto {
    margin-top: auto;
}

.line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.line-clamp-4 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.\!table {
    display: table !important;
}

.table {
    display: table;
}

.table-row {
    display: table-row;
}

.grid {
    display: grid;
}

.contents {
    display: contents;
}

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

.hidden {
    display: none;
}

.aspect-\[4\/3\] {
    aspect-ratio: 4/3;
}

.aspect-\[8\.5\/11\] {
    aspect-ratio: 8.5/11;
}

.aspect-square {
    aspect-ratio: 1 / 1;
}

.aspect-video {
    aspect-ratio: 16 / 9;
}

.size-4 {
    width: 1rem;
    height: 1rem;
}

.h-0\.5 {
    height: 0.125rem;
}

.h-1 {
    height: 0.25rem;
}

.h-1\.5 {
    height: 0.375rem;
}

.h-10 {
    height: 2.5rem;
}

.h-11 {
    height: 2.75rem;
}

.h-12 {
    height: 3rem;
}

.h-14 {
    height: 3.5rem;
}

.h-16 {
    height: 4rem;
}

.h-2 {
    height: 0.5rem;
}

.h-2\.5 {
    height: 0.625rem;
}

.h-20 {
    height: 5rem;
}

.h-24 {
    height: 6rem;
}

.h-28 {
    height: 7rem;
}

.h-3 {
    height: 0.75rem;
}

.h-3\.5 {
    height: 0.875rem;
}

.h-32 {
    height: 8rem;
}

.h-36 {
    height: 9rem;
}

.h-4 {
    height: 1rem;
}

.h-40 {
    height: 10rem;
}

.h-44 {
    height: 11rem;
}

.h-48 {
    height: 12rem;
}

.h-5 {
    height: 1.25rem;
}

.h-52 {
    height: 13rem;
}

.h-6 {
    height: 1.5rem;
}

.h-60 {
    height: 15rem;
}

.h-64 {
    height: 16rem;
}

.h-7 {
    height: 1.75rem;
}

.h-72 {
    height: 18rem;
}

.h-8 {
    height: 2rem;
}

.h-80 {
    height: 20rem;
}

.h-9 {
    height: 2.25rem;
}

.h-96 {
    height: 24rem;
}

.h-\[1\.5px\] {
    height: 1.5px;
}

.h-\[100dvh\] {
    height: 100dvh;
}

.h-\[100px\] {
    height: 100px;
}

.h-\[120px\] {
    height: 120px;
}

.h-\[140px\] {
    height: 140px;
}

.h-\[160px\] {
    height: 160px;
}

.h-\[180px\] {
    height: 180px;
}

.h-\[1px\] {
    height: 1px;
}

.h-\[200px\] {
    height: 200px;
}

.h-\[20px\] {
    height: 20px;
}

.h-\[220px\] {
    height: 220px;
}

.h-\[240px\] {
    height: 240px;
}

.h-\[24px\] {
    height: 24px;
}

.h-\[250px\] {
    height: 250px;
}

.h-\[260px\] {
    height: 260px;
}

.h-\[280px\] {
    height: 280px;
}

.h-\[28px\] {
    height: 28px;
}

.h-\[300px\] {
    height: 300px;
}

.h-\[320px\] {
    height: 320px;
}

.h-\[340px\] {
    height: 340px;
}

.h-\[350px\] {
    height: 350px;
}

.h-\[360px\] {
    height: 360px;
}

.h-\[380px\] {
    height: 380px;
}

.h-\[3px\] {
    height: 3px;
}

.h-\[400px\] {
    height: 400px;
}

.h-\[40px\] {
    height: 40px;
}

.h-\[40vh\] {
    height: 40vh;
}

.h-\[420px\] {
    height: 420px;
}

.h-\[42vh\] {
    height: 42vh;
}

.h-\[450px\] {
    height: 450px;
}

.h-\[45vh\] {
    height: 45vh;
}

.h-\[480px\] {
    height: 480px;
}

.h-\[4px\] {
    height: 4px;
}

.h-\[500px\] {
    height: 500px;
}

.h-\[50vh\] {
    height: 50vh;
}

.h-\[540px\] {
    height: 540px;
}

.h-\[55vh\] {
    height: 55vh;
}

.h-\[58vh\] {
    height: 58vh;
}

.h-\[5px\] {
    height: 5px;
}

.h-\[600px\] {
    height: 600px;
}

.h-\[60px\] {
    height: 60px;
}

.h-\[60vh\] {
    height: 60vh;
}

.h-\[6px\] {
    height: 6px;
}

.h-\[70vh\] {
    height: 70vh;
}

.h-\[72px\] {
    height: 72px;
}

.h-\[75vh\] {
    height: 75vh;
}

.h-\[80vh\] {
    height: 80vh;
}

.h-\[85vh\] {
    height: 85vh;
}

.h-\[88px\] {
    height: 88px;
}

.h-\[90vh\] {
    height: 90vh;
}

.h-\[92vh\] {
    height: 92vh;
}

.h-\[94vh\] {
    height: 94vh;
}

.h-\[95vh\] {
    height: 95vh;
}

.h-\[calc\(100vh-120px\)\] {
    height: calc(100vh - 120px);
}

.h-\[calc\(100vh-240px\)\] {
    height: calc(100vh - 240px);
}

.h-\[calc\(100vh-5rem\)\] {
    height: calc(100vh - 5rem);
}

.h-\[calc\(100vh-64px\)\] {
    height: calc(100vh - 64px);
}

.h-\[calc\(100vh-8rem\)\] {
    height: calc(100vh - 8rem);
}

.h-\[calc\(85vh-180px\)\] {
    height: calc(85vh - 180px);
}

.h-\[calc\(85vh-80px\)\] {
    height: calc(85vh - 80px);
}

.h-\[calc\(90vh-100px\)\] {
    height: calc(90vh - 100px);
}

.h-\[calc\(90vh-260px\)\] {
    height: calc(90vh - 260px);
}

.h-\[min\(60vh\2c 560px\)\] {
    height: min(60vh,560px);
}

.h-\[var\(--radix-select-trigger-height\)\] {
    height: var(--radix-select-trigger-height);
}

.h-auto {
    height: auto;
}

.h-full {
    height: 100%;
}

.h-px {
    height: 1px;
}

.h-screen {
    height: 100vh;
}

.h-svh {
    height: 100svh;
}

.\!max-h-\[90vh\] {
    max-height: 90vh !important;
}

.max-h-24 {
    max-height: 6rem;
}

.max-h-32 {
    max-height: 8rem;
}

.max-h-36 {
    max-height: 9rem;
}

.max-h-40 {
    max-height: 10rem;
}

.max-h-48 {
    max-height: 12rem;
}

.max-h-56 {
    max-height: 14rem;
}

.max-h-60 {
    max-height: 15rem;
}

.max-h-64 {
    max-height: 16rem;
}

.max-h-72 {
    max-height: 18rem;
}

.max-h-80 {
    max-height: 20rem;
}

.max-h-96 {
    max-height: 24rem;
}

.max-h-\[120px\] {
    max-height: 120px;
}

.max-h-\[150px\] {
    max-height: 150px;
}

.max-h-\[200px\] {
    max-height: 200px;
}

.max-h-\[240px\] {
    max-height: 240px;
}

.max-h-\[250px\] {
    max-height: 250px;
}

.max-h-\[260px\] {
    max-height: 260px;
}

.max-h-\[280px\] {
    max-height: 280px;
}

.max-h-\[300px\] {
    max-height: 300px;
}

.max-h-\[320px\] {
    max-height: 320px;
}

.max-h-\[340px\] {
    max-height: 340px;
}

.max-h-\[350px\] {
    max-height: 350px;
}

.max-h-\[360px\] {
    max-height: 360px;
}

.max-h-\[380px\] {
    max-height: 380px;
}

.max-h-\[400px\] {
    max-height: 400px;
}

.max-h-\[40vh\] {
    max-height: 40vh;
}

.max-h-\[420px\] {
    max-height: 420px;
}

.max-h-\[440px\] {
    max-height: 440px;
}

.max-h-\[45vh\] {
    max-height: 45vh;
}

.max-h-\[480px\] {
    max-height: 480px;
}

.max-h-\[500px\] {
    max-height: 500px;
}

.max-h-\[50vh\] {
    max-height: 50vh;
}

.max-h-\[55vh\] {
    max-height: 55vh;
}

.max-h-\[600px\] {
    max-height: 600px;
}

.max-h-\[60vh\] {
    max-height: 60vh;
}

.max-h-\[62vh\] {
    max-height: 62vh;
}

.max-h-\[65vh\] {
    max-height: 65vh;
}

.max-h-\[700px\] {
    max-height: 700px;
}

.max-h-\[70vh\] {
    max-height: 70vh;
}

.max-h-\[75vh\] {
    max-height: 75vh;
}

.max-h-\[80px\] {
    max-height: 80px;
}

.max-h-\[80vh\] {
    max-height: 80vh;
}

.max-h-\[85vh\] {
    max-height: 85vh;
}

.max-h-\[88vh\] {
    max-height: 88vh;
}

.max-h-\[90vh\] {
    max-height: 90vh;
}

.max-h-\[92vh\] {
    max-height: 92vh;
}

.max-h-\[95vh\] {
    max-height: 95vh;
}

.max-h-\[calc\(100vh-120px\)\] {
    max-height: calc(100vh - 120px);
}

.max-h-\[calc\(100vh-200px\)\] {
    max-height: calc(100vh - 200px);
}

.max-h-\[calc\(100vh-280px\)\] {
    max-height: calc(100vh - 280px);
}

.max-h-\[calc\(100vh-360px\)\] {
    max-height: calc(100vh - 360px);
}

.max-h-\[calc\(100vh-6rem\)\] {
    max-height: calc(100vh - 6rem);
}

.max-h-\[calc\(100vh-8px\)\] {
    max-height: calc(100vh - 8px);
}

.max-h-\[calc\(80vh-60px\)\] {
    max-height: calc(80vh - 60px);
}

.max-h-\[calc\(85vh-100px\)\] {
    max-height: calc(85vh - 100px);
}

.max-h-\[calc\(85vh-180px\)\] {
    max-height: calc(85vh - 180px);
}

.max-h-\[calc\(90vh-200px\)\] {
    max-height: calc(90vh - 200px);
}

.max-h-\[calc\(90vh-320px\)\] {
    max-height: calc(90vh - 320px);
}

.max-h-\[calc\(92vh-9rem\)\] {
    max-height: calc(92vh - 9rem);
}

.max-h-\[min\(70vh\2c 460px\)\] {
    max-height: min(70vh,460px);
}

.max-h-full {
    max-height: 100%;
}

.max-h-screen {
    max-height: 100vh;
}

.\!min-h-\[50vh\] {
    min-height: 50vh !important;
}

.min-h-0 {
    min-height: 0px;
}

.min-h-11 {
    min-height: 2.75rem;
}

.min-h-28 {
    min-height: 7rem;
}

.min-h-32 {
    min-height: 8rem;
}

.min-h-48 {
    min-height: 12rem;
}

.min-h-6 {
    min-height: 1.5rem;
}

.min-h-8 {
    min-height: 2rem;
}

.min-h-96 {
    min-height: 24rem;
}

.min-h-\[100px\] {
    min-height: 100px;
}

.min-h-\[120px\] {
    min-height: 120px;
}

.min-h-\[140px\] {
    min-height: 140px;
}

.min-h-\[200px\] {
    min-height: 200px;
}

.min-h-\[20px\] {
    min-height: 20px;
}

.min-h-\[240px\] {
    min-height: 240px;
}

.min-h-\[24px\] {
    min-height: 24px;
}

.min-h-\[260px\] {
    min-height: 260px;
}

.min-h-\[280px\] {
    min-height: 280px;
}

.min-h-\[28px\] {
    min-height: 28px;
}

.min-h-\[297mm\] {
    min-height: 297mm;
}

.min-h-\[300px\] {
    min-height: 300px;
}

.min-h-\[320px\] {
    min-height: 320px;
}

.min-h-\[32px\] {
    min-height: 32px;
}

.min-h-\[36px\] {
    min-height: 36px;
}

.min-h-\[400px\] {
    min-height: 400px;
}

.min-h-\[40px\] {
    min-height: 40px;
}

.min-h-\[44px\] {
    min-height: 44px;
}

.min-h-\[460px\] {
    min-height: 460px;
}

.min-h-\[48px\] {
    min-height: 48px;
}

.min-h-\[500px\] {
    min-height: 500px;
}

.min-h-\[50px\] {
    min-height: 50px;
}

.min-h-\[56px\] {
    min-height: 56px;
}

.min-h-\[600px\] {
    min-height: 600px;
}

.min-h-\[60px\] {
    min-height: 60px;
}

.min-h-\[60vh\] {
    min-height: 60vh;
}

.min-h-\[70px\] {
    min-height: 70px;
}

.min-h-\[72px\] {
    min-height: 72px;
}

.min-h-\[80px\] {
    min-height: 80px;
}

.min-h-\[90px\] {
    min-height: 90px;
}

.min-h-\[calc\(100vh-3rem\)\] {
    min-height: calc(100vh - 3rem);
}

.min-h-full {
    min-height: 100%;
}

.min-h-screen {
    min-height: 100vh;
}

.min-h-svh {
    min-height: 100svh;
}

.\!w-\[90vw\] {
    width: 90vw !important;
}

.w-0 {
    width: 0px;
}

.w-0\.5 {
    width: 0.125rem;
}

.w-1 {
    width: 0.25rem;
}

.w-1\.5 {
    width: 0.375rem;
}

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

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

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

.w-10 {
    width: 2.5rem;
}

.w-11 {
    width: 2.75rem;
}

.w-12 {
    width: 3rem;
}

.w-14 {
    width: 3.5rem;
}

.w-16 {
    width: 4rem;
}

.w-2 {
    width: 0.5rem;
}

.w-2\.5 {
    width: 0.625rem;
}

.w-2\/3 {
    width: 66.666667%;
}

.w-20 {
    width: 5rem;
}

.w-24 {
    width: 6rem;
}

.w-28 {
    width: 7rem;
}

.w-3 {
    width: 0.75rem;
}

.w-3\.5 {
    width: 0.875rem;
}

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

.w-32 {
    width: 8rem;
}

.w-36 {
    width: 9rem;
}

.w-4 {
    width: 1rem;
}

.w-4\/6 {
    width: 66.666667%;
}

.w-40 {
    width: 10rem;
}

.w-44 {
    width: 11rem;
}

.w-48 {
    width: 12rem;
}

.w-5 {
    width: 1.25rem;
}

.w-5\/6 {
    width: 83.333333%;
}

.w-52 {
    width: 13rem;
}

.w-56 {
    width: 14rem;
}

.w-6 {
    width: 1.5rem;
}

.w-60 {
    width: 15rem;
}

.w-64 {
    width: 16rem;
}

.w-7 {
    width: 1.75rem;
}

.w-72 {
    width: 18rem;
}

.w-8 {
    width: 2rem;
}

.w-80 {
    width: 20rem;
}

.w-9 {
    width: 2.25rem;
}

.w-96 {
    width: 24rem;
}

.w-\[--radix-popover-trigger-width\] {
    width: var(--radix-popover-trigger-width);
}

.w-\[--sidebar-width\] {
    width: var(--sidebar-width);
}

.w-\[10\%\] {
    width: 10%;
}

.w-\[100px\] {
    width: 100px;
}

.w-\[100vw\] {
    width: 100vw;
}

.w-\[1100px\] {
    width: 1100px;
}

.w-\[110px\] {
    width: 110px;
}

.w-\[12\%\] {
    width: 12%;
}

.w-\[120px\] {
    width: 120px;
}

.w-\[13\%\] {
    width: 13%;
}

.w-\[130px\] {
    width: 130px;
}

.w-\[14\%\] {
    width: 14%;
}

.w-\[140px\] {
    width: 140px;
}

.w-\[15\%\] {
    width: 15%;
}

.w-\[150px\] {
    width: 150px;
}

.w-\[160px\] {
    width: 160px;
}

.w-\[170px\] {
    width: 170px;
}

.w-\[180px\] {
    width: 180px;
}

.w-\[18px\] {
    width: 18px;
}

.w-\[190px\] {
    width: 190px;
}

.w-\[1px\] {
    width: 1px;
}

.w-\[20\%\] {
    width: 20%;
}

.w-\[200px\] {
    width: 200px;
}

.w-\[220px\] {
    width: 220px;
}

.w-\[22px\] {
    width: 22px;
}

.w-\[240px\] {
    width: 240px;
}

.w-\[250px\] {
    width: 250px;
}

.w-\[260px\] {
    width: 260px;
}

.w-\[280px\] {
    width: 280px;
}

.w-\[28px\] {
    width: 28px;
}

.w-\[30\%\] {
    width: 30%;
}

.w-\[300px\] {
    width: 300px;
}

.w-\[30px\] {
    width: 30px;
}

.w-\[320px\] {
    width: 320px;
}

.w-\[32px\] {
    width: 32px;
}

.w-\[34\%\] {
    width: 34%;
}

.w-\[340px\] {
    width: 340px;
}

.w-\[35\%\] {
    width: 35%;
}

.w-\[350px\] {
    width: 350px;
}

.w-\[360px\] {
    width: 360px;
}

.w-\[36px\] {
    width: 36px;
}

.w-\[380px\] {
    width: 380px;
}

.w-\[4\%\] {
    width: 4%;
}

.w-\[400px\] {
    width: 400px;
}

.w-\[40px\] {
    width: 40px;
}

.w-\[42\%\] {
    width: 42%;
}

.w-\[420px\] {
    width: 420px;
}

.w-\[440px\] {
    width: 440px;
}

.w-\[45px\] {
    width: 45px;
}

.w-\[460px\] {
    width: 460px;
}

.w-\[480px\] {
    width: 480px;
}

.w-\[48px\] {
    width: 48px;
}

.w-\[500px\] {
    width: 500px;
}

.w-\[50px\] {
    width: 50px;
}

.w-\[520px\] {
    width: 520px;
}

.w-\[52px\] {
    width: 52px;
}

.w-\[56px\] {
    width: 56px;
}

.w-\[60px\] {
    width: 60px;
}

.w-\[640px\] {
    width: 640px;
}

.w-\[70px\] {
    width: 70px;
}

.w-\[72px\] {
    width: 72px;
}

.w-\[78px\] {
    width: 78px;
}

.w-\[8\%\] {
    width: 8%;
}

.w-\[80px\] {
    width: 80px;
}

.w-\[88px\] {
    width: 88px;
}

.w-\[90px\] {
    width: 90px;
}

.w-\[90vw\] {
    width: 90vw;
}

.w-\[95vw\] {
    width: 95vw;
}

.w-\[96vw\] {
    width: 96vw;
}

.w-\[98vw\] {
    width: 98vw;
}

.w-\[calc\(100\%-3rem\)\] {
    width: calc(100% - 3rem);
}

.w-\[calc\(100vw-2rem\)\] {
    width: calc(100vw - 2rem);
}

.w-\[min\(1152px\2c 95vw\)\] {
    width: min(1152px,95vw);
}

.w-\[min\(420px\2c 90vw\)\] {
    width: min(420px,90vw);
}

.w-\[var\(--radix-popover-trigger-width\)\] {
    width: var(--radix-popover-trigger-width);
}

.w-auto {
    width: auto;
}

.w-fit {
    width: -moz-fit-content;
    width: fit-content;
}

.w-full {
    width: 100%;
}

.w-max {
    width: -moz-max-content;
    width: max-content;
}

.w-px {
    width: 1px;
}

.min-w-0 {
    min-width: 0px;
}

.min-w-12 {
    min-width: 3rem;
}

.min-w-16 {
    min-width: 4rem;
}

.min-w-20 {
    min-width: 5rem;
}

.min-w-32 {
    min-width: 8rem;
}

.min-w-4 {
    min-width: 1rem;
}

.min-w-5 {
    min-width: 1.25rem;
}

.min-w-64 {
    min-width: 16rem;
}

.min-w-72 {
    min-width: 18rem;
}

.min-w-\[1\.75rem\] {
    min-width: 1.75rem;
}

.min-w-\[100px\] {
    min-width: 100px;
}

.min-w-\[110px\] {
    min-width: 110px;
}

.min-w-\[120px\] {
    min-width: 120px;
}

.min-w-\[12px\] {
    min-width: 12px;
}

.min-w-\[12rem\] {
    min-width: 12rem;
}

.min-w-\[132px\] {
    min-width: 132px;
}

.min-w-\[1380px\] {
    min-width: 1380px;
}

.min-w-\[140px\] {
    min-width: 140px;
}

.min-w-\[14px\] {
    min-width: 14px;
}

.min-w-\[14rem\] {
    min-width: 14rem;
}

.min-w-\[150px\] {
    min-width: 150px;
}

.min-w-\[160px\] {
    min-width: 160px;
}

.min-w-\[16px\] {
    min-width: 16px;
}

.min-w-\[170px\] {
    min-width: 170px;
}

.min-w-\[180px\] {
    min-width: 180px;
}

.min-w-\[18px\] {
    min-width: 18px;
}

.min-w-\[200px\] {
    min-width: 200px;
}

.min-w-\[20px\] {
    min-width: 20px;
}

.min-w-\[220px\] {
    min-width: 220px;
}

.min-w-\[240px\] {
    min-width: 240px;
}

.min-w-\[24px\] {
    min-width: 24px;
}

.min-w-\[260px\] {
    min-width: 260px;
}

.min-w-\[280px\] {
    min-width: 280px;
}

.min-w-\[28px\] {
    min-width: 28px;
}

.min-w-\[320px\] {
    min-width: 320px;
}

.min-w-\[32px\] {
    min-width: 32px;
}

.min-w-\[3ch\] {
    min-width: 3ch;
}

.min-w-\[40px\] {
    min-width: 40px;
}

.min-w-\[44px\] {
    min-width: 44px;
}

.min-w-\[48px\] {
    min-width: 48px;
}

.min-w-\[4rem\] {
    min-width: 4rem;
}

.min-w-\[50px\] {
    min-width: 50px;
}

.min-w-\[520px\] {
    min-width: 520px;
}

.min-w-\[56px\] {
    min-width: 56px;
}

.min-w-\[600px\] {
    min-width: 600px;
}

.min-w-\[60px\] {
    min-width: 60px;
}

.min-w-\[64px\] {
    min-width: 64px;
}

.min-w-\[700px\] {
    min-width: 700px;
}

.min-w-\[72px\] {
    min-width: 72px;
}

.min-w-\[780px\] {
    min-width: 780px;
}

.min-w-\[80px\] {
    min-width: 80px;
}

.min-w-\[8rem\] {
    min-width: 8rem;
}

.min-w-\[900px\] {
    min-width: 900px;
}

.min-w-\[90px\] {
    min-width: 90px;
}

.min-w-\[var\(--radix-select-trigger-width\)\] {
    min-width: var(--radix-select-trigger-width);
}

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

.min-w-max {
    min-width: -moz-max-content;
    min-width: max-content;
}

.\!max-w-4xl {
    max-width: 56rem !important;
}

.max-w-24 {
    max-width: 6rem;
}

.max-w-2xl {
    max-width: 42rem;
}

.max-w-3xl {
    max-width: 48rem;
}

.max-w-48 {
    max-width: 12rem;
}

.max-w-4xl {
    max-width: 56rem;
}

.max-w-5xl {
    max-width: 64rem;
}

.max-w-6xl {
    max-width: 72rem;
}

.max-w-7xl {
    max-width: 80rem;
}

.max-w-\[--skeleton-width\] {
    max-width: var(--skeleton-width);
}

.max-w-\[100px\] {
    max-width: 100px;
}

.max-w-\[110px\] {
    max-width: 110px;
}

.max-w-\[112px\] {
    max-width: 112px;
}

.max-w-\[1180px\] {
    max-width: 1180px;
}

.max-w-\[120px\] {
    max-width: 120px;
}

.max-w-\[1400px\] {
    max-width: 1400px;
}

.max-w-\[140px\] {
    max-width: 140px;
}

.max-w-\[1440px\] {
    max-width: 1440px;
}

.max-w-\[1480px\] {
    max-width: 1480px;
}

.max-w-\[150px\] {
    max-width: 150px;
}

.max-w-\[1600px\] {
    max-width: 1600px;
}

.max-w-\[160px\] {
    max-width: 160px;
}

.max-w-\[180px\] {
    max-width: 180px;
}

.max-w-\[18rem\] {
    max-width: 18rem;
}

.max-w-\[200px\] {
    max-width: 200px;
}

.max-w-\[220px\] {
    max-width: 220px;
}

.max-w-\[240px\] {
    max-width: 240px;
}

.max-w-\[250px\] {
    max-width: 250px;
}

.max-w-\[260px\] {
    max-width: 260px;
}

.max-w-\[280px\] {
    max-width: 280px;
}

.max-w-\[28ch\] {
    max-width: 28ch;
}

.max-w-\[28px\] {
    max-width: 28px;
}

.max-w-\[300px\] {
    max-width: 300px;
}

.max-w-\[320px\] {
    max-width: 320px;
}

.max-w-\[360px\] {
    max-width: 360px;
}

.max-w-\[36px\] {
    max-width: 36px;
}

.max-w-\[400px\] {
    max-width: 400px;
}

.max-w-\[420px\] {
    max-width: 420px;
}

.max-w-\[44ch\] {
    max-width: 44ch;
}

.max-w-\[480px\] {
    max-width: 480px;
}

.max-w-\[60\%\] {
    max-width: 60%;
}

.max-w-\[640px\] {
    max-width: 640px;
}

.max-w-\[72px\] {
    max-width: 72px;
}

.max-w-\[760px\] {
    max-width: 760px;
}

.max-w-\[80\%\] {
    max-width: 80%;
}

.max-w-\[80px\] {
    max-width: 80px;
}

.max-w-\[85\%\] {
    max-width: 85%;
}

.max-w-\[900px\] {
    max-width: 900px;
}

.max-w-\[90vw\] {
    max-width: 90vw;
}

.max-w-\[95vw\] {
    max-width: 95vw;
}

.max-w-\[98vw\] {
    max-width: 98vw;
}

.max-w-\[calc\(100\%-380px\)\] {
    max-width: calc(100% - 380px);
}

.max-w-\[min\(1400px\2c 98vw\)\] {
    max-width: min(1400px,98vw);
}

.max-w-\[min\(1500px\2c 98vw\)\] {
    max-width: min(1500px,98vw);
}

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

.max-w-lg {
    max-width: 32rem;
}

.max-w-md {
    max-width: 28rem;
}

.max-w-none {
    max-width: none;
}

.max-w-screen-2xl {
    max-width: 1536px;
}

.max-w-screen-xl {
    max-width: 1280px;
}

.max-w-sm {
    max-width: 24rem;
}

.max-w-xl {
    max-width: 36rem;
}

.max-w-xs {
    max-width: 20rem;
}

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

.flex-\[3\] {
    flex: 3;
}

.flex-none {
    flex: none;
}

.flex-shrink-0 {
    flex-shrink: 0;
}

.shrink {
    flex-shrink: 1;
}

.shrink-0 {
    flex-shrink: 0;
}

.grow {
    flex-grow: 1;
}

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

.caption-bottom {
    caption-side: bottom;
}

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

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

.border-spacing-0 {
    --tw-border-spacing-x: 0px;
    --tw-border-spacing-y: 0px;
    border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
}

.-translate-x-1\/2 {
    --tw-translate-x: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-x-px {
    --tw-translate-x: -1px;
    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));
}

.-translate-y-1\/2 {
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-\[calc\(100\%\+8px\)\] {
    --tw-translate-y: calc(calc(100% + 8px) * -1);
    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));
}

.translate-x-0 {
    --tw-translate-x: 0px;
    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));
}

.translate-x-1\/2 {
    --tw-translate-x: 50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.translate-x-full {
    --tw-translate-x: 100%;
    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));
}

.translate-x-px {
    --tw-translate-x: 1px;
    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));
}

.translate-y-1\/2 {
    --tw-translate-y: 50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.-rotate-45 {
    --tw-rotate: -45deg;
    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));
}

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

.rotate-12 {
    --tw-rotate: 12deg;
    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));
}

.rotate-180 {
    --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));
}

.rotate-2 {
    --tw-rotate: 2deg;
    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));
}

.rotate-45 {
    --tw-rotate: 45deg;
    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));
}

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

.scale-105 {
    --tw-scale-x: 1.05;
    --tw-scale-y: 1.05;
    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));
}

.scale-110 {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    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));
}

.scale-125 {
    --tw-scale-x: 1.25;
    --tw-scale-y: 1.25;
    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));
}

.scale-75 {
    --tw-scale-x: .75;
    --tw-scale-y: .75;
    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));
}

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

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

.animate-\[dash_1\.5s_linear_infinite\] {
    animation: dash 1.5s linear infinite;
}

@keyframes accordion-down {

    from {
        height: 0;
    }

    to {
        height: var(--radix-accordion-content-height);
    }
}

.animate-accordion-down {
    animation: accordion-down 0.2s ease-out;
}

@keyframes bounce {

    0%, 100% {
        transform: translateY(-25%);
        animation-timing-function: cubic-bezier(0.8,0,1,1);
    }

    50% {
        transform: none;
        animation-timing-function: cubic-bezier(0,0,0.2,1);
    }
}

.animate-bounce {
    animation: bounce 1s infinite;
}

@keyframes ping {

    75%, 100% {
        transform: scale(2);
        opacity: 0;
    }
}

.animate-ping {
    animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}

@keyframes pulse {

    50% {
        opacity: .5;
    }
}

.animate-pulse {
    animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse-soft {

    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

.animate-pulse-soft {
    animation: pulse-soft 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes spin {

    to {
        transform: rotate(360deg);
    }
}

.animate-spin {
    animation: spin 1s linear infinite;
}

@keyframes urgency-pulse {

    0%, 100% {
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4);
    }

    50% {
        box-shadow: 0 0 0 8px rgba(239, 68, 68, 0);
    }
}

.animate-urgency-pulse {
    animation: urgency-pulse 2s infinite;
}

.cursor-col-resize {
    cursor: col-resize;
}

.cursor-copy {
    cursor: copy;
}

.cursor-crosshair {
    cursor: crosshair;
}

.cursor-default {
    cursor: default;
}

.cursor-ew-resize {
    cursor: ew-resize;
}

.cursor-grab {
    cursor: grab;
}

.cursor-grabbing {
    cursor: grabbing;
}

.cursor-help {
    cursor: help;
}

.cursor-move {
    cursor: move;
}

.cursor-not-allowed {
    cursor: not-allowed;
}

.cursor-pointer {
    cursor: pointer;
}

.cursor-row-resize {
    cursor: row-resize;
}

.cursor-text {
    cursor: text;
}

.cursor-wait {
    cursor: wait;
}

.touch-none {
    touch-action: none;
}

.select-none {
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
}

.select-all {
    -webkit-user-select: all;
       -moz-user-select: all;
            user-select: all;
}

.resize-none {
    resize: none;
}

.resize-y {
    resize: vertical;
}

.resize {
    resize: both;
}

.list-inside {
    list-style-position: inside;
}

.list-decimal {
    list-style-type: decimal;
}

.list-disc {
    list-style-type: disc;
}

.list-none {
    list-style-type: none;
}

.columns-1 {
    -moz-columns: 1;
         columns: 1;
}

.break-inside-avoid {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
}

.auto-rows-fr {
    grid-auto-rows: minmax(0, 1fr);
}

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

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

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

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

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

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

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

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

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

.grid-cols-\[1\.5fr\2c 1fr\2c 80px\2c 60px\] {
    grid-template-columns: 1.5fr 1fr 80px 60px;
}

.grid-cols-\[100px_1\.4fr_1fr_1fr_90px_90px_90px_90px_100px_36px\] {
    grid-template-columns: 100px 1.4fr 1fr 1fr 90px 90px 90px 90px 100px 36px;
}

.grid-cols-\[100px_120px_90px_minmax\(180px\2c 1fr\)_minmax\(160px\2c 1fr\)\] {
    grid-template-columns: 100px 120px 90px minmax(180px,1fr) minmax(160px,1fr);
}

.grid-cols-\[100px_1fr_90px_90px_70px\] {
    grid-template-columns: 100px 1fr 90px 90px 70px;
}

.grid-cols-\[120px_1fr\] {
    grid-template-columns: 120px 1fr;
}

.grid-cols-\[120px_1fr_120px_32px\] {
    grid-template-columns: 120px 1fr 120px 32px;
}

.grid-cols-\[140px\2c 1fr\] {
    grid-template-columns: 140px 1fr;
}

.grid-cols-\[140px_1fr\] {
    grid-template-columns: 140px 1fr;
}

.grid-cols-\[140px_1fr_140px_140px_120px_auto\] {
    grid-template-columns: 140px 1fr 140px 140px 120px auto;
}

.grid-cols-\[160px_1fr\] {
    grid-template-columns: 160px 1fr;
}

.grid-cols-\[180px_1fr_28px_1fr\] {
    grid-template-columns: 180px 1fr 28px 1fr;
}

.grid-cols-\[180px_repeat\(7\2c 1fr\)\] {
    grid-template-columns: 180px repeat(7,1fr);
}

.grid-cols-\[1fr\2c 1fr\2c 100px\2c 80px\2c 40px\] {
    grid-template-columns: 1fr 1fr 100px 80px 40px;
}

.grid-cols-\[1fr_100px\] {
    grid-template-columns: 1fr 100px;
}

.grid-cols-\[1fr_100px_100px_90px_32px\] {
    grid-template-columns: 1fr 100px 100px 90px 32px;
}

.grid-cols-\[1fr_120px\] {
    grid-template-columns: 1fr 120px;
}

.grid-cols-\[1fr_120px_160px_160px_140px\] {
    grid-template-columns: 1fr 120px 160px 160px 140px;
}

.grid-cols-\[1fr_120px_32px\] {
    grid-template-columns: 1fr 120px 32px;
}

.grid-cols-\[1fr_120px_80px_100px_80px_40px\] {
    grid-template-columns: 1fr 120px 80px 100px 80px 40px;
}

.grid-cols-\[1fr_140px_auto\] {
    grid-template-columns: 1fr 140px auto;
}

.grid-cols-\[1fr_180px_auto\] {
    grid-template-columns: 1fr 180px auto;
}

.grid-cols-\[1fr_18rem_12rem_5rem\] {
    grid-template-columns: 1fr 18rem 12rem 5rem;
}

.grid-cols-\[1fr_1fr_120px_120px_36px\] {
    grid-template-columns: 1fr 1fr 120px 120px 36px;
}

.grid-cols-\[1fr_1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr 1fr auto;
}

.grid-cols-\[1fr_1fr_80px\] {
    grid-template-columns: 1fr 1fr 80px;
}

.grid-cols-\[1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr auto;
}

.grid-cols-\[1fr_1fr_auto_auto_auto\] {
    grid-template-columns: 1fr 1fr auto auto auto;
}

.grid-cols-\[1fr_200px_32px\] {
    grid-template-columns: 1fr 200px 32px;
}

.grid-cols-\[1fr_260px\] {
    grid-template-columns: 1fr 260px;
}

.grid-cols-\[1fr_60px_100px_80px_80px_100px_90px_100px_120px_40px\] {
    grid-template-columns: 1fr 60px 100px 80px 80px 100px 90px 100px 120px 40px;
}

.grid-cols-\[1fr_60px_60px_60px_100px\] {
    grid-template-columns: 1fr 60px 60px 60px 100px;
}

.grid-cols-\[1fr_60px_80px_80px_80px_90px_90px_100px_32px\] {
    grid-template-columns: 1fr 60px 80px 80px 80px 90px 90px 100px 32px;
}

.grid-cols-\[1fr_70px_60px_90px_90px_32px\] {
    grid-template-columns: 1fr 70px 60px 90px 90px 32px;
}

.grid-cols-\[1fr_80px\] {
    grid-template-columns: 1fr 80px;
}

.grid-cols-\[1fr_80px_80px_60px\] {
    grid-template-columns: 1fr 80px 80px 60px;
}

.grid-cols-\[1fr_90px_90px_90px_90px\] {
    grid-template-columns: 1fr 90px 90px 90px 90px;
}

.grid-cols-\[1fr_auto_auto_auto\] {
    grid-template-columns: 1fr auto auto auto;
}

.grid-cols-\[1fr_repeat\(4\2c minmax\(0\2c 92px\)\)\] {
    grid-template-columns: 1fr repeat(4,minmax(0,92px));
}

.grid-cols-\[2\.5rem_1fr_18rem_12rem_5rem\] {
    grid-template-columns: 2.5rem 1fr 18rem 12rem 5rem;
}

.grid-cols-\[28px_140px_minmax\(180px\2c 1\.4fr\)_minmax\(140px\2c 1fr\)_120px_120px_140px_64px\] {
    grid-template-columns: 28px 140px minmax(180px,1.4fr) minmax(140px,1fr) 120px 120px 140px 64px;
}

.grid-cols-\[28px_8px_120px_44px_minmax\(0\2c 1fr\)_60px_70px_90px_100px_110px_160px_60px\] {
    grid-template-columns: 28px 8px 120px 44px minmax(0,1fr) 60px 70px 90px 100px 110px 160px 60px;
}

.grid-cols-\[30px_minmax\(150px\2c 1fr\)_120px_130px_96px_104px_92px_92px_112px\] {
    grid-template-columns: 30px minmax(150px,1fr) 120px 130px 96px 104px 92px 92px 112px;
}

.grid-cols-\[32px_1fr_100px_80px_80px_100px_100px_160px_80px\] {
    grid-template-columns: 32px 1fr 100px 80px 80px 100px 100px 160px 80px;
}

.grid-cols-\[32px_80px_1fr_100px_100px_80px\] {
    grid-template-columns: 32px 80px 1fr 100px 100px 80px;
}

.grid-cols-\[32px_80px_1fr_80px_100px_80px\] {
    grid-template-columns: 32px 80px 1fr 80px 100px 80px;
}

.grid-cols-\[32px_minmax\(240px\2c 1\.4fr\)_72px_92px_96px_92px_92px_72px_120px_36px_200px_40px\] {
    grid-template-columns: 32px minmax(240px,1.4fr) 72px 92px 96px 92px 92px 72px 120px 36px 200px 40px;
}

.grid-cols-\[36px_100px_150px_1fr_140px_120px_120px\] {
    grid-template-columns: 36px 100px 150px 1fr 140px 120px 120px;
}

.grid-cols-\[40px_1fr_120px_80px_70px_110px_100px_110px_40px\] {
    grid-template-columns: 40px 1fr 120px 80px 70px 110px 100px 110px 40px;
}

.grid-cols-\[40px_1fr_120px_80px_70px_110px_110px_40px\] {
    grid-template-columns: 40px 1fr 120px 80px 70px 110px 110px 40px;
}

.grid-cols-\[56px_repeat\(7\2c 1fr\)\] {
    grid-template-columns: 56px repeat(7,1fr);
}

.grid-cols-\[80px_1fr\] {
    grid-template-columns: 80px 1fr;
}

.grid-cols-\[auto_2fr_auto_auto_auto_auto_auto_auto_auto_auto\] {
    grid-template-columns: auto 2fr auto auto auto auto auto auto auto auto;
}

.grid-cols-\[auto_auto_1fr_auto_auto_auto_auto_auto\] {
    grid-template-columns: auto auto 1fr auto auto auto auto auto;
}

.grid-cols-\[auto_repeat\(5\2c 1fr\)\] {
    grid-template-columns: auto repeat(5,1fr);
}

.grid-cols-\[minmax\(0\2c 1fr\)_60px_80px\] {
    grid-template-columns: minmax(0,1fr) 60px 80px;
}

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

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

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

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

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

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

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

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

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

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

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

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

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

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

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

.gap-0 {
    gap: 0px;
}

.gap-0\.5 {
    gap: 0.125rem;
}

.gap-1 {
    gap: 0.25rem;
}

.gap-1\.5 {
    gap: 0.375rem;
}

.gap-16 {
    gap: 4rem;
}

.gap-2 {
    gap: 0.5rem;
}

.gap-2\.5 {
    gap: 0.625rem;
}

.gap-3 {
    gap: 0.75rem;
}

.gap-4 {
    gap: 1rem;
}

.gap-5 {
    gap: 1.25rem;
}

.gap-6 {
    gap: 1.5rem;
}

.gap-8 {
    gap: 2rem;
}

.gap-px {
    gap: 1px;
}

.gap-x-10 {
    -moz-column-gap: 2.5rem;
         column-gap: 2.5rem;
}

.gap-x-2 {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
}

.gap-x-3 {
    -moz-column-gap: 0.75rem;
         column-gap: 0.75rem;
}

.gap-x-4 {
    -moz-column-gap: 1rem;
         column-gap: 1rem;
}

.gap-x-5 {
    -moz-column-gap: 1.25rem;
         column-gap: 1.25rem;
}

.gap-x-6 {
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
}

.gap-x-8 {
    -moz-column-gap: 2rem;
         column-gap: 2rem;
}

.gap-y-0 {
    row-gap: 0px;
}

.gap-y-0\.5 {
    row-gap: 0.125rem;
}

.gap-y-1 {
    row-gap: 0.25rem;
}

.gap-y-1\.5 {
    row-gap: 0.375rem;
}

.gap-y-2 {
    row-gap: 0.5rem;
}

.gap-y-3 {
    row-gap: 0.75rem;
}

.-space-x-1\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(-0.375rem * var(--tw-space-x-reverse));
    margin-left: calc(-0.375rem * calc(1 - var(--tw-space-x-reverse)));
}

.-space-x-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(-0.5rem * var(--tw-space-x-reverse));
    margin-left: calc(-0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-0 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0px * var(--tw-space-x-reverse));
    margin-left: calc(0px * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-0\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.125rem * var(--tw-space-x-reverse));
    margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-1 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.25rem * var(--tw-space-x-reverse));
    margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-1\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.375rem * var(--tw-space-x-reverse));
    margin-left: calc(0.375rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.5rem * var(--tw-space-x-reverse));
    margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-3 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(0.75rem * var(--tw-space-x-reverse));
    margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-right: calc(1.5rem * var(--tw-space-x-reverse));
    margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-0 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse));
}

.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.125rem * var(--tw-space-y-reverse));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}

.space-y-10 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(2.5rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}

.space-y-px > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1px * var(--tw-space-y-reverse));
}

.divide-x > :not([hidden]) ~ :not([hidden]) {
    --tw-divide-x-reverse: 0;
    border-right-width: calc(1px * var(--tw-divide-x-reverse));
    border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
}

.divide-y > :not([hidden]) ~ :not([hidden]) {
    --tw-divide-y-reverse: 0;
    border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-border > :not([hidden]) ~ :not([hidden]) {
    border-color: hsl(var(--border));
}

.divide-border\/50 > :not([hidden]) ~ :not([hidden]) {
    border-color: hsl(var(--border) / 0.5);
}

.divide-border\/60 > :not([hidden]) ~ :not([hidden]) {
    border-color: hsl(var(--border) / 0.6);
}

.self-start {
    align-self: flex-start;
}

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

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

.self-stretch {
    align-self: stretch;
}

.overflow-auto {
    overflow: auto;
}

.overflow-hidden {
    overflow: hidden;
}

.overflow-visible {
    overflow: visible;
}

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

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

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

.overflow-y-hidden {
    overflow-y: hidden;
}

.overflow-y-visible {
    overflow-y: visible;
}

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

.overscroll-contain {
    overscroll-behavior: contain;
}

.scroll-smooth {
    scroll-behavior: smooth;
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.whitespace-normal {
    white-space: normal;
}

.whitespace-nowrap {
    white-space: nowrap;
}

.whitespace-pre-line {
    white-space: pre-line;
}

.whitespace-pre-wrap {
    white-space: pre-wrap;
}

.break-words {
    overflow-wrap: break-word;
}

.break-all {
    word-break: break-all;
}

.rounded {
    border-radius: 0.25rem;
}

.rounded-2xl {
    border-radius: 1rem;
}

.rounded-\[1px\] {
    border-radius: 1px;
}

.rounded-\[2px\] {
    border-radius: 2px;
}

.rounded-\[3px\] {
    border-radius: 3px;
}

.rounded-\[5px\] {
    border-radius: 5px;
}

.rounded-\[inherit\] {
    border-radius: inherit;
}

.rounded-full {
    border-radius: 9999px;
}

.rounded-lg {
    border-radius: var(--radius);
}

.rounded-md {
    border-radius: calc(var(--radius) - 2px);
}

.rounded-none {
    border-radius: 0px;
}

.rounded-sm {
    border-radius: calc(var(--radius) - 4px);
}

.rounded-xl {
    border-radius: 0.75rem;
}

.rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.rounded-b-lg {
    border-bottom-right-radius: var(--radius);
    border-bottom-left-radius: var(--radius);
}

.rounded-b-sm {
    border-bottom-right-radius: calc(var(--radius) - 4px);
    border-bottom-left-radius: calc(var(--radius) - 4px);
}

.rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
}

.rounded-l-\[10px\] {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.rounded-l-lg {
    border-top-left-radius: var(--radius);
    border-bottom-left-radius: var(--radius);
}

.rounded-l-md {
    border-top-left-radius: calc(var(--radius) - 2px);
    border-bottom-left-radius: calc(var(--radius) - 2px);
}

.rounded-l-none {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}

.rounded-l-xl {
    border-top-left-radius: 0.75rem;
    border-bottom-left-radius: 0.75rem;
}

.rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.rounded-r-md {
    border-top-right-radius: calc(var(--radius) - 2px);
    border-bottom-right-radius: calc(var(--radius) - 2px);
}

.rounded-r-none {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}

.rounded-r-xl {
    border-top-right-radius: 0.75rem;
    border-bottom-right-radius: 0.75rem;
}

.rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
}

.rounded-t-2xl {
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
}

.rounded-t-\[10px\] {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.rounded-t-lg {
    border-top-left-radius: var(--radius);
    border-top-right-radius: var(--radius);
}

.rounded-t-sm {
    border-top-left-radius: calc(var(--radius) - 4px);
    border-top-right-radius: calc(var(--radius) - 4px);
}

.rounded-t-xl {
    border-top-left-radius: 0.75rem;
    border-top-right-radius: 0.75rem;
}

.rounded-bl {
    border-bottom-left-radius: 0.25rem;
}

.border {
    border-width: 1px;
}

.border-0 {
    border-width: 0px;
}

.border-2 {
    border-width: 2px;
}

.border-4 {
    border-width: 4px;
}

.border-\[1\.5px\] {
    border-width: 1.5px;
}

.border-x {
    border-left-width: 1px;
    border-right-width: 1px;
}

.border-x-0 {
    border-left-width: 0px;
    border-right-width: 0px;
}

.border-y {
    border-top-width: 1px;
    border-bottom-width: 1px;
}

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

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

.border-l {
    border-left-width: 1px;
}

.border-l-0 {
    border-left-width: 0px;
}

.border-l-2 {
    border-left-width: 2px;
}

.border-l-4 {
    border-left-width: 4px;
}

.border-l-\[3px\] {
    border-left-width: 3px;
}

.border-r {
    border-right-width: 1px;
}

.border-r-0 {
    border-right-width: 0px;
}

.border-r-2 {
    border-right-width: 2px;
}

.border-t {
    border-top-width: 1px;
}

.border-t-0 {
    border-top-width: 0px;
}

.border-t-2 {
    border-top-width: 2px;
}

.border-t-4 {
    border-top-width: 4px;
}

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

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

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

.border-\[--color-border\] {
    border-color: var(--color-border);
}

.border-\[hsl\(var\(--cat-financial-border\)\)\] {
    border-color: hsl(var(--cat-financial-border));
}

.border-\[hsl\(var\(--cat-financial-border\)\)\]\/20 {
    border-color: hsl(var(--cat-financial-border) / 0.2);
}

.border-\[hsl\(var\(--cat-financial-border\)\)\]\/60 {
    border-color: hsl(var(--cat-financial-border) / 0.6);
}

.border-\[hsl\(var\(--cat-procurement-border\)\)\] {
    border-color: hsl(var(--cat-procurement-border));
}

.border-\[hsl\(var\(--cat-procurement-border\)\)\]\/20 {
    border-color: hsl(var(--cat-procurement-border) / 0.2);
}

.border-\[hsl\(var\(--cat-procurement-border\)\)\]\/30 {
    border-color: hsl(var(--cat-procurement-border) / 0.3);
}

.border-\[hsl\(var\(--cat-procurement-border\)\)\]\/50 {
    border-color: hsl(var(--cat-procurement-border) / 0.5);
}

.border-\[hsl\(var\(--cat-procurement-border\)\)\]\/60 {
    border-color: hsl(var(--cat-procurement-border) / 0.6);
}

.border-\[hsl\(var\(--danger\)\)\] {
    border-color: hsl(var(--danger));
}

.border-\[hsl\(var\(--danger\)\)\]\/20 {
    border-color: hsl(var(--danger) / 0.2);
}

.border-\[hsl\(var\(--danger\)\)\]\/30 {
    border-color: hsl(var(--danger) / 0.3);
}

.border-\[hsl\(var\(--danger\)\)\]\/40 {
    border-color: hsl(var(--danger) / 0.4);
}

.border-\[hsl\(var\(--danger\)\)\]\/45 {
    border-color: hsl(var(--danger) / 0.45);
}

.border-\[hsl\(var\(--danger\)\)\]\/50 {
    border-color: hsl(var(--danger) / 0.5);
}

.border-\[hsl\(var\(--danger\)\)\]\/60 {
    border-color: hsl(var(--danger) / 0.6);
}

.border-\[hsl\(var\(--danger\)\)\]\/80 {
    border-color: hsl(var(--danger) / 0.8);
}

.border-\[hsl\(var\(--danger-soft-foreground\)\)\] {
    border-color: hsl(var(--danger-soft-foreground));
}

.border-\[hsl\(var\(--destructive\)\/0\.4\)\] {
    border-color: hsl(var(--destructive)/0.4);
}

.border-\[hsl\(var\(--destructive\)\/0\.5\)\] {
    border-color: hsl(var(--destructive)/0.5);
}

.border-\[hsl\(var\(--info\)\)\] {
    border-color: hsl(var(--info));
}

.border-\[hsl\(var\(--info\)\)\]\/20 {
    border-color: hsl(var(--info) / 0.2);
}

.border-\[hsl\(var\(--info\)\)\]\/30 {
    border-color: hsl(var(--info) / 0.3);
}

.border-\[hsl\(var\(--info\)\)\]\/40 {
    border-color: hsl(var(--info) / 0.4);
}

.border-\[hsl\(var\(--info\)\)\]\/45 {
    border-color: hsl(var(--info) / 0.45);
}

.border-\[hsl\(var\(--info\)\)\]\/50 {
    border-color: hsl(var(--info) / 0.5);
}

.border-\[hsl\(var\(--info\)\)\]\/60 {
    border-color: hsl(var(--info) / 0.6);
}

.border-\[hsl\(var\(--info\)\)\]\/80 {
    border-color: hsl(var(--info) / 0.8);
}

.border-\[hsl\(var\(--nvs-brand\)\/0\.25\)\] {
    border-color: hsl(var(--nvs-brand)/0.25);
}

.border-\[hsl\(var\(--nvs-line\)\)\] {
    border-color: hsl(var(--nvs-line));
}

.border-\[hsl\(var\(--nvs-monitor\)\/0\.25\)\] {
    border-color: hsl(var(--nvs-monitor)/0.25);
}

.border-\[hsl\(var\(--nvs-monitor\)\/0\.4\)\] {
    border-color: hsl(var(--nvs-monitor)/0.4);
}

.border-\[hsl\(var\(--nvs-negative\)\)\] {
    border-color: hsl(var(--nvs-negative));
}

.border-\[hsl\(var\(--nvs-negative\)\/0\.25\)\] {
    border-color: hsl(var(--nvs-negative)/0.25);
}

.border-\[hsl\(var\(--nvs-negative\)\/0\.4\)\] {
    border-color: hsl(var(--nvs-negative)/0.4);
}

.border-\[hsl\(var\(--nvs-orange\)\)\] {
    border-color: hsl(var(--nvs-orange));
}

.border-\[hsl\(var\(--nvs-orange\)\/0\.4\)\] {
    border-color: hsl(var(--nvs-orange)/0.4);
}

.border-\[hsl\(var\(--nvs-positive\)\)\] {
    border-color: hsl(var(--nvs-positive));
}

.border-\[hsl\(var\(--nvs-positive\)\/0\.25\)\] {
    border-color: hsl(var(--nvs-positive)/0.25);
}

.border-\[hsl\(var\(--nvs-positive\)\/0\.3\)\] {
    border-color: hsl(var(--nvs-positive)/0.3);
}

.border-\[hsl\(var\(--nvs-positive\)\/0\.4\)\] {
    border-color: hsl(var(--nvs-positive)/0.4);
}

.border-\[hsl\(var\(--nvs-positive\)\/0\.5\)\] {
    border-color: hsl(var(--nvs-positive)/0.5);
}

.border-\[hsl\(var\(--score-bad\)\)\]\/45 {
    border-color: hsl(var(--score-bad) / 0.45);
}

.border-\[hsl\(var\(--score-good\)\)\]\/45 {
    border-color: hsl(var(--score-good) / 0.45);
}

.border-\[hsl\(var\(--score-watch\)\)\]\/40 {
    border-color: hsl(var(--score-watch) / 0.4);
}

.border-\[hsl\(var\(--score-watch\)\)\]\/45 {
    border-color: hsl(var(--score-watch) / 0.45);
}

.border-\[hsl\(var\(--success\)\)\] {
    border-color: hsl(var(--success));
}

.border-\[hsl\(var\(--success\)\)\]\/10 {
    border-color: hsl(var(--success) / 0.1);
}

.border-\[hsl\(var\(--success\)\)\]\/20 {
    border-color: hsl(var(--success) / 0.2);
}

.border-\[hsl\(var\(--success\)\)\]\/30 {
    border-color: hsl(var(--success) / 0.3);
}

.border-\[hsl\(var\(--success\)\)\]\/40 {
    border-color: hsl(var(--success) / 0.4);
}

.border-\[hsl\(var\(--success\)\)\]\/50 {
    border-color: hsl(var(--success) / 0.5);
}

.border-\[hsl\(var\(--success\)\)\]\/60 {
    border-color: hsl(var(--success) / 0.6);
}

.border-\[hsl\(var\(--success\)\)\]\/80 {
    border-color: hsl(var(--success) / 0.8);
}

.border-\[hsl\(var\(--success\)\/0\.4\)\] {
    border-color: hsl(var(--success)/0.4);
}

.border-\[hsl\(var\(--success-soft-foreground\)\)\] {
    border-color: hsl(var(--success-soft-foreground));
}

.border-\[hsl\(var\(--warning\)\)\] {
    border-color: hsl(var(--warning));
}

.border-\[hsl\(var\(--warning\)\)\]\/20 {
    border-color: hsl(var(--warning) / 0.2);
}

.border-\[hsl\(var\(--warning\)\)\]\/30 {
    border-color: hsl(var(--warning) / 0.3);
}

.border-\[hsl\(var\(--warning\)\)\]\/40 {
    border-color: hsl(var(--warning) / 0.4);
}

.border-\[hsl\(var\(--warning\)\)\]\/45 {
    border-color: hsl(var(--warning) / 0.45);
}

.border-\[hsl\(var\(--warning\)\)\]\/50 {
    border-color: hsl(var(--warning) / 0.5);
}

.border-\[hsl\(var\(--warning\)\)\]\/60 {
    border-color: hsl(var(--warning) / 0.6);
}

.border-\[hsl\(var\(--warning\)\)\]\/80 {
    border-color: hsl(var(--warning) / 0.8);
}

.border-\[hsl\(var\(--warning\)\/0\.35\)\] {
    border-color: hsl(var(--warning)/0.35);
}

.border-\[hsl\(var\(--warning\)\/0\.4\)\] {
    border-color: hsl(var(--warning)/0.4);
}

.border-\[hsl\(var\(--warning-soft-foreground\)\)\] {
    border-color: hsl(var(--warning-soft-foreground));
}

.border-accent {
    border-color: hsl(var(--accent));
}

.border-accent\/20 {
    border-color: hsl(var(--accent) / 0.2);
}

.border-accent\/30 {
    border-color: hsl(var(--accent) / 0.3);
}

.border-accent\/40 {
    border-color: hsl(var(--accent) / 0.4);
}

.border-amber-400 {
    --tw-border-opacity: 1;
    border-color: rgb(251 191 36 / var(--tw-border-opacity, 1));
}

.border-amber-500\/40 {
    border-color: rgb(245 158 11 / 0.4);
}

.border-background {
    border-color: hsl(var(--background));
}

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

.border-border {
    border-color: hsl(var(--border));
}

.border-border\/20 {
    border-color: hsl(var(--border) / 0.2);
}

.border-border\/30 {
    border-color: hsl(var(--border) / 0.3);
}

.border-border\/40 {
    border-color: hsl(var(--border) / 0.4);
}

.border-border\/50 {
    border-color: hsl(var(--border) / 0.5);
}

.border-border\/60 {
    border-color: hsl(var(--border) / 0.6);
}

.border-border\/70 {
    border-color: hsl(var(--border) / 0.7);
}

.border-border\/80 {
    border-color: hsl(var(--border) / 0.8);
}

.border-cat-estimating-border {
    border-color: hsl(var(--cat-estimating-border));
}

.border-cat-financial-border {
    border-color: hsl(var(--cat-financial-border));
}

.border-cat-people-border {
    border-color: hsl(var(--cat-people-border));
}

.border-cat-procurement-border {
    border-color: hsl(var(--cat-procurement-border));
}

.border-cat-project-border {
    border-color: hsl(var(--cat-project-border));
}

.border-cat-safety-border {
    border-color: hsl(var(--cat-safety-border));
}

.border-cat-utility-border {
    border-color: hsl(var(--cat-utility-border));
}

.border-current {
    border-color: currentColor;
}

.border-danger {
    border-color: hsl(var(--danger));
}

.border-danger\/20 {
    border-color: hsl(var(--danger) / 0.2);
}

.border-danger\/30 {
    border-color: hsl(var(--danger) / 0.3);
}

.border-destructive {
    border-color: hsl(var(--destructive));
}

.border-destructive\/10 {
    border-color: hsl(var(--destructive) / 0.1);
}

.border-destructive\/15 {
    border-color: hsl(var(--destructive) / 0.15);
}

.border-destructive\/20 {
    border-color: hsl(var(--destructive) / 0.2);
}

.border-destructive\/25 {
    border-color: hsl(var(--destructive) / 0.25);
}

.border-destructive\/30 {
    border-color: hsl(var(--destructive) / 0.3);
}

.border-destructive\/40 {
    border-color: hsl(var(--destructive) / 0.4);
}

.border-destructive\/50 {
    border-color: hsl(var(--destructive) / 0.5);
}

.border-destructive\/60 {
    border-color: hsl(var(--destructive) / 0.6);
}

.border-foreground {
    border-color: hsl(var(--foreground));
}

.border-foreground\/20 {
    border-color: hsl(var(--foreground) / 0.2);
}

.border-green-600\/40 {
    border-color: rgb(22 163 74 / 0.4);
}

.border-info\/20 {
    border-color: hsl(var(--info) / 0.2);
}

.border-info\/30 {
    border-color: hsl(var(--info) / 0.3);
}

.border-input {
    border-color: hsl(var(--input));
}

.border-lead-cold {
    border-color: hsl(var(--lead-cold));
}

.border-lead-cool {
    border-color: hsl(var(--lead-cool));
}

.border-lead-hot {
    border-color: hsl(var(--lead-hot));
}

.border-lead-warm {
    border-color: hsl(var(--lead-warm));
}

.border-muted {
    border-color: hsl(var(--muted));
}

.border-muted-foreground {
    border-color: hsl(var(--muted-foreground));
}

.border-muted-foreground\/10 {
    border-color: hsl(var(--muted-foreground) / 0.1);
}

.border-muted-foreground\/20 {
    border-color: hsl(var(--muted-foreground) / 0.2);
}

.border-muted-foreground\/25 {
    border-color: hsl(var(--muted-foreground) / 0.25);
}

.border-muted-foreground\/30 {
    border-color: hsl(var(--muted-foreground) / 0.3);
}

.border-muted-foreground\/40 {
    border-color: hsl(var(--muted-foreground) / 0.4);
}

.border-muted-foreground\/50 {
    border-color: hsl(var(--muted-foreground) / 0.5);
}

.border-primary {
    border-color: hsl(var(--primary));
}

.border-primary-foreground\/20 {
    border-color: hsl(var(--primary-foreground) / 0.2);
}

.border-primary-foreground\/30 {
    border-color: hsl(var(--primary-foreground) / 0.3);
}

.border-primary\/10 {
    border-color: hsl(var(--primary) / 0.1);
}

.border-primary\/15 {
    border-color: hsl(var(--primary) / 0.15);
}

.border-primary\/20 {
    border-color: hsl(var(--primary) / 0.2);
}

.border-primary\/30 {
    border-color: hsl(var(--primary) / 0.3);
}

.border-primary\/40 {
    border-color: hsl(var(--primary) / 0.4);
}

.border-primary\/50 {
    border-color: hsl(var(--primary) / 0.5);
}

.border-primary\/60 {
    border-color: hsl(var(--primary) / 0.6);
}

.border-priority-critical\/30 {
    border-color: hsl(var(--priority-critical) / 0.3);
}

.border-priority-high\/30 {
    border-color: hsl(var(--priority-high) / 0.3);
}

.border-priority-low\/30 {
    border-color: hsl(var(--priority-low) / 0.3);
}

.border-priority-medium\/30 {
    border-color: hsl(var(--priority-medium) / 0.3);
}

.border-secondary {
    border-color: hsl(var(--secondary));
}

.border-secondary\/20 {
    border-color: hsl(var(--secondary) / 0.2);
}

.border-sidebar-border {
    border-color: hsl(var(--sidebar-border));
}

.border-success {
    border-color: hsl(var(--success));
}

.border-success\/20 {
    border-color: hsl(var(--success) / 0.2);
}

.border-success\/30 {
    border-color: hsl(var(--success) / 0.3);
}

.border-success\/40 {
    border-color: hsl(var(--success) / 0.4);
}

.border-success\/50 {
    border-color: hsl(var(--success) / 0.5);
}

.border-transparent {
    border-color: transparent;
}

.border-warning {
    border-color: hsl(var(--warning));
}

.border-warning\/20 {
    border-color: hsl(var(--warning) / 0.2);
}

.border-warning\/30 {
    border-color: hsl(var(--warning) / 0.3);
}

.border-warning\/40 {
    border-color: hsl(var(--warning) / 0.4);
}

.border-warning\/50 {
    border-color: hsl(var(--warning) / 0.5);
}

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

.border-white\/10 {
    border-color: rgb(255 255 255 / 0.1);
}

.border-white\/15 {
    border-color: rgb(255 255 255 / 0.15);
}

.border-white\/20 {
    border-color: rgb(255 255 255 / 0.2);
}

.border-white\/25 {
    border-color: rgb(255 255 255 / 0.25);
}

.border-white\/30 {
    border-color: rgb(255 255 255 / 0.3);
}

.border-y-primary\/15 {
    border-top-color: hsl(var(--primary) / 0.15);
    border-bottom-color: hsl(var(--primary) / 0.15);
}

.border-b-\[hsl\(var\(--cost-item-divider\)\)\] {
    border-bottom-color: hsl(var(--cost-item-divider));
}

.border-b-primary\/30 {
    border-bottom-color: hsl(var(--primary) / 0.3);
}

.border-l-\[hsl\(var\(--cat-estimating\)\)\] {
    border-left-color: hsl(var(--cat-estimating));
}

.border-l-\[hsl\(var\(--cat-estimating-border\)\)\] {
    border-left-color: hsl(var(--cat-estimating-border));
}

.border-l-\[hsl\(var\(--cat-financial\)\)\] {
    border-left-color: hsl(var(--cat-financial));
}

.border-l-\[hsl\(var\(--cat-people\)\)\] {
    border-left-color: hsl(var(--cat-people));
}

.border-l-\[hsl\(var\(--cat-people-border\)\)\] {
    border-left-color: hsl(var(--cat-people-border));
}

.border-l-\[hsl\(var\(--cat-procurement\)\)\] {
    border-left-color: hsl(var(--cat-procurement));
}

.border-l-\[hsl\(var\(--cat-procurement-border\)\)\] {
    border-left-color: hsl(var(--cat-procurement-border));
}

.border-l-\[hsl\(var\(--cat-project\)\)\] {
    border-left-color: hsl(var(--cat-project));
}

.border-l-\[hsl\(var\(--cat-project-border\)\)\] {
    border-left-color: hsl(var(--cat-project-border));
}

.border-l-\[hsl\(var\(--cat-safety\)\)\] {
    border-left-color: hsl(var(--cat-safety));
}

.border-l-\[hsl\(var\(--cat-safety-border\)\)\] {
    border-left-color: hsl(var(--cat-safety-border));
}

.border-l-\[hsl\(var\(--cat-utility\)\)\] {
    border-left-color: hsl(var(--cat-utility));
}

.border-l-\[hsl\(var\(--cat-utility-border\)\)\] {
    border-left-color: hsl(var(--cat-utility-border));
}

.border-l-\[hsl\(var\(--cost-item-divider\)\)\] {
    border-left-color: hsl(var(--cost-item-divider));
}

.border-l-\[hsl\(var\(--cost-level-0-border\)\)\] {
    border-left-color: hsl(var(--cost-level-0-border));
}

.border-l-\[hsl\(var\(--cost-level-1-border\)\)\] {
    border-left-color: hsl(var(--cost-level-1-border));
}

.border-l-\[hsl\(var\(--cost-level-2-border\)\)\] {
    border-left-color: hsl(var(--cost-level-2-border));
}

.border-l-\[hsl\(var\(--cost-level-3-border\)\)\] {
    border-left-color: hsl(var(--cost-level-3-border));
}

.border-l-\[hsl\(var\(--danger\)\)\] {
    border-left-color: hsl(var(--danger));
}

.border-l-\[hsl\(var\(--nvs-orange\)\)\] {
    border-left-color: hsl(var(--nvs-orange));
}

.border-l-\[hsl\(var\(--success\)\)\] {
    border-left-color: hsl(var(--success));
}

.border-l-amber-500 {
    --tw-border-opacity: 1;
    border-left-color: rgb(245 158 11 / var(--tw-border-opacity, 1));
}

.border-l-blue-500 {
    --tw-border-opacity: 1;
    border-left-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

.border-l-border {
    border-left-color: hsl(var(--border));
}

.border-l-border\/50 {
    border-left-color: hsl(var(--border) / 0.5);
}

.border-l-destructive {
    border-left-color: hsl(var(--destructive));
}

.border-l-destructive\/50 {
    border-left-color: hsl(var(--destructive) / 0.5);
}

.border-l-emerald-400\/40 {
    border-left-color: rgb(52 211 153 / 0.4);
}

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

.border-l-green-500 {
    --tw-border-opacity: 1;
    border-left-color: rgb(34 197 94 / var(--tw-border-opacity, 1));
}

.border-l-info\/50 {
    border-left-color: hsl(var(--info) / 0.5);
}

.border-l-muted {
    border-left-color: hsl(var(--muted));
}

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

.border-l-primary {
    border-left-color: hsl(var(--primary));
}

.border-l-primary\/20 {
    border-left-color: hsl(var(--primary) / 0.2);
}

.border-l-primary\/40 {
    border-left-color: hsl(var(--primary) / 0.4);
}

.border-l-primary\/50 {
    border-left-color: hsl(var(--primary) / 0.5);
}

.border-l-purple-500 {
    --tw-border-opacity: 1;
    border-left-color: rgb(168 85 247 / var(--tw-border-opacity, 1));
}

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

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

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

.border-l-slate-300\/60 {
    border-left-color: rgb(203 213 225 / 0.6);
}

.border-l-slate-400 {
    --tw-border-opacity: 1;
    border-left-color: rgb(148 163 184 / var(--tw-border-opacity, 1));
}

.border-l-success {
    border-left-color: hsl(var(--success));
}

.border-l-success\/50 {
    border-left-color: hsl(var(--success) / 0.5);
}

.border-l-transparent {
    border-left-color: transparent;
}

.border-l-violet-400\/50 {
    border-left-color: rgb(167 139 250 / 0.5);
}

.border-l-warning {
    border-left-color: hsl(var(--warning));
}

.border-l-warning\/50 {
    border-left-color: hsl(var(--warning) / 0.5);
}

.border-l-yellow-500 {
    --tw-border-opacity: 1;
    border-left-color: rgb(234 179 8 / var(--tw-border-opacity, 1));
}

.border-r-transparent {
    border-right-color: transparent;
}

.border-t-blue-500 {
    --tw-border-opacity: 1;
    border-top-color: rgb(59 130 246 / var(--tw-border-opacity, 1));
}

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

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

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

.border-t-muted-foreground {
    border-top-color: hsl(var(--muted-foreground));
}

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

.border-t-primary {
    border-top-color: hsl(var(--primary));
}

.border-t-primary\/20 {
    border-top-color: hsl(var(--primary) / 0.2);
}

.border-t-purple-500 {
    --tw-border-opacity: 1;
    border-top-color: rgb(168 85 247 / var(--tw-border-opacity, 1));
}

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

.border-t-transparent {
    border-top-color: transparent;
}

.border-opacity-60 {
    --tw-border-opacity: 0.6;
}

.\!bg-\[hsl\(var\(--nvs-orange\)\/0\.08\)\] {
    background-color: hsl(var(--nvs-orange)/0.08) !important;
}

.bg-\[\#00a4ef\]\/10 {
    background-color: rgb(0 164 239 / 0.1);
}

.bg-\[\#22c55e\] {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}

.bg-\[\#3b82f6\] {
    --tw-bg-opacity: 1;
    background-color: rgb(59 130 246 / var(--tw-bg-opacity, 1));
}

.bg-\[\#ea4335\]\/10 {
    background-color: rgb(234 67 53 / 0.1);
}

.bg-\[\#ef4444\] {
    --tw-bg-opacity: 1;
    background-color: rgb(239 68 68 / var(--tw-bg-opacity, 1));
}

.bg-\[\#f59e0b\] {
    --tw-bg-opacity: 1;
    background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}

.bg-\[--color-bg\] {
    background-color: var(--color-bg);
}

.bg-\[hsl\(\.\.\.\)\] {
    background-color: hsl(...);
}

.bg-\[hsl\(var\(--cat-estimating\)\)\] {
    background-color: hsl(var(--cat-estimating));
}

.bg-\[hsl\(var\(--cat-financial\)\)\] {
    background-color: hsl(var(--cat-financial));
}

.bg-\[hsl\(var\(--cat-financial-bg\)\)\] {
    background-color: hsl(var(--cat-financial-bg));
}

.bg-\[hsl\(var\(--cat-financial-bg\)\)\]\/10 {
    background-color: hsl(var(--cat-financial-bg) / 0.1);
}

.bg-\[hsl\(var\(--cat-financial-bg\)\)\]\/15 {
    background-color: hsl(var(--cat-financial-bg) / 0.15);
}

.bg-\[hsl\(var\(--cat-financial-bg\)\)\]\/20 {
    background-color: hsl(var(--cat-financial-bg) / 0.2);
}

.bg-\[hsl\(var\(--cat-financial-bg\)\)\]\/40 {
    background-color: hsl(var(--cat-financial-bg) / 0.4);
}

.bg-\[hsl\(var\(--cat-people\)\)\] {
    background-color: hsl(var(--cat-people));
}

.bg-\[hsl\(var\(--cat-people-bg\)\)\] {
    background-color: hsl(var(--cat-people-bg));
}

.bg-\[hsl\(var\(--cat-procurement\)\)\] {
    background-color: hsl(var(--cat-procurement));
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\] {
    background-color: hsl(var(--cat-procurement-bg));
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/10 {
    background-color: hsl(var(--cat-procurement-bg) / 0.1);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/15 {
    background-color: hsl(var(--cat-procurement-bg) / 0.15);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/20 {
    background-color: hsl(var(--cat-procurement-bg) / 0.2);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/30 {
    background-color: hsl(var(--cat-procurement-bg) / 0.3);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/40 {
    background-color: hsl(var(--cat-procurement-bg) / 0.4);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/5 {
    background-color: hsl(var(--cat-procurement-bg) / 0.05);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/50 {
    background-color: hsl(var(--cat-procurement-bg) / 0.5);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/60 {
    background-color: hsl(var(--cat-procurement-bg) / 0.6);
}

.bg-\[hsl\(var\(--cat-procurement-bg\)\)\]\/80 {
    background-color: hsl(var(--cat-procurement-bg) / 0.8);
}

.bg-\[hsl\(var\(--cat-project\)\)\] {
    background-color: hsl(var(--cat-project));
}

.bg-\[hsl\(var\(--cat-safety\)\)\] {
    background-color: hsl(var(--cat-safety));
}

.bg-\[hsl\(var\(--cat-utility\)\)\] {
    background-color: hsl(var(--cat-utility));
}

.bg-\[hsl\(var\(--class-labour\)\)\] {
    background-color: hsl(var(--class-labour));
}

.bg-\[hsl\(var\(--class-material\)\)\] {
    background-color: hsl(var(--class-material));
}

.bg-\[hsl\(var\(--class-plant\)\)\] {
    background-color: hsl(var(--class-plant));
}

.bg-\[hsl\(var\(--class-subcontract\)\)\] {
    background-color: hsl(var(--class-subcontract));
}

.bg-\[hsl\(var\(--cost-item-row-even\)\)\] {
    background-color: hsl(var(--cost-item-row-even));
}

.bg-\[hsl\(var\(--cost-level-0-bg\)\)\] {
    background-color: hsl(var(--cost-level-0-bg));
}

.bg-\[hsl\(var\(--cost-level-1-bg\)\)\] {
    background-color: hsl(var(--cost-level-1-bg));
}

.bg-\[hsl\(var\(--cost-level-2-bg\)\)\] {
    background-color: hsl(var(--cost-level-2-bg));
}

.bg-\[hsl\(var\(--cost-level-3-bg\)\)\] {
    background-color: hsl(var(--cost-level-3-bg));
}

.bg-\[hsl\(var\(--danger\)\)\] {
    background-color: hsl(var(--danger));
}

.bg-\[hsl\(var\(--danger\)\)\]\/10 {
    background-color: hsl(var(--danger) / 0.1);
}

.bg-\[hsl\(var\(--danger\)\)\]\/15 {
    background-color: hsl(var(--danger) / 0.15);
}

.bg-\[hsl\(var\(--danger\)\)\]\/20 {
    background-color: hsl(var(--danger) / 0.2);
}

.bg-\[hsl\(var\(--danger\)\)\]\/25 {
    background-color: hsl(var(--danger) / 0.25);
}

.bg-\[hsl\(var\(--danger\)\)\]\/5 {
    background-color: hsl(var(--danger) / 0.05);
}

.bg-\[hsl\(var\(--danger\)\)\]\/80 {
    background-color: hsl(var(--danger) / 0.8);
}

.bg-\[hsl\(var\(--danger-soft\)\)\] {
    background-color: hsl(var(--danger-soft));
}

.bg-\[hsl\(var\(--danger-soft\)\)\]\/40 {
    background-color: hsl(var(--danger-soft) / 0.4);
}

.bg-\[hsl\(var\(--danger-soft\)\)\]\/50 {
    background-color: hsl(var(--danger-soft) / 0.5);
}

.bg-\[hsl\(var\(--danger-soft\)\)\]\/70 {
    background-color: hsl(var(--danger-soft) / 0.7);
}

.bg-\[hsl\(var\(--danger-soft\)\)\]\/80 {
    background-color: hsl(var(--danger-soft) / 0.8);
}

.bg-\[hsl\(var\(--destructive\)\/0\.06\)\] {
    background-color: hsl(var(--destructive)/0.06);
}

.bg-\[hsl\(var\(--hero\)\)\] {
    background-color: hsl(var(--hero));
}

.bg-\[hsl\(var\(--info\)\)\] {
    background-color: hsl(var(--info));
}

.bg-\[hsl\(var\(--info\)\)\]\/10 {
    background-color: hsl(var(--info) / 0.1);
}

.bg-\[hsl\(var\(--info\)\)\]\/15 {
    background-color: hsl(var(--info) / 0.15);
}

.bg-\[hsl\(var\(--info\)\)\]\/20 {
    background-color: hsl(var(--info) / 0.2);
}

.bg-\[hsl\(var\(--info\)\)\]\/25 {
    background-color: hsl(var(--info) / 0.25);
}

.bg-\[hsl\(var\(--info\)\)\]\/30 {
    background-color: hsl(var(--info) / 0.3);
}

.bg-\[hsl\(var\(--info\)\)\]\/5 {
    background-color: hsl(var(--info) / 0.05);
}

.bg-\[hsl\(var\(--info\)\)\]\/80 {
    background-color: hsl(var(--info) / 0.8);
}

.bg-\[hsl\(var\(--info-soft\)\)\] {
    background-color: hsl(var(--info-soft));
}

.bg-\[hsl\(var\(--info-soft\)\)\]\/40 {
    background-color: hsl(var(--info-soft) / 0.4);
}

.bg-\[hsl\(var\(--info-soft\)\)\]\/50 {
    background-color: hsl(var(--info-soft) / 0.5);
}

.bg-\[hsl\(var\(--info-soft\)\)\]\/60 {
    background-color: hsl(var(--info-soft) / 0.6);
}

.bg-\[hsl\(var\(--info-soft\)\)\]\/70 {
    background-color: hsl(var(--info-soft) / 0.7);
}

.bg-\[hsl\(var\(--nvs-bg\)\)\] {
    background-color: hsl(var(--nvs-bg));
}

.bg-\[hsl\(var\(--nvs-brand\)\/0\.08\)\] {
    background-color: hsl(var(--nvs-brand)/0.08);
}

.bg-\[hsl\(var\(--nvs-brand\)\/0\.12\)\] {
    background-color: hsl(var(--nvs-brand)/0.12);
}

.bg-\[hsl\(var\(--nvs-card\)\)\] {
    background-color: hsl(var(--nvs-card));
}

.bg-\[hsl\(var\(--nvs-ink\)\)\] {
    background-color: hsl(var(--nvs-ink));
}

.bg-\[hsl\(var\(--nvs-line\)\)\] {
    background-color: hsl(var(--nvs-line));
}

.bg-\[hsl\(var\(--nvs-monitor\)\)\] {
    background-color: hsl(var(--nvs-monitor));
}

.bg-\[hsl\(var\(--nvs-monitor\)\/0\.08\)\] {
    background-color: hsl(var(--nvs-monitor)/0.08);
}

.bg-\[hsl\(var\(--nvs-monitor\)\/0\.12\)\] {
    background-color: hsl(var(--nvs-monitor)/0.12);
}

.bg-\[hsl\(var\(--nvs-monitor\)\/0\.15\)\] {
    background-color: hsl(var(--nvs-monitor)/0.15);
}

.bg-\[hsl\(var\(--nvs-muted\)\)\] {
    background-color: hsl(var(--nvs-muted));
}

.bg-\[hsl\(var\(--nvs-negative\)\)\] {
    background-color: hsl(var(--nvs-negative));
}

.bg-\[hsl\(var\(--nvs-negative\)\/0\.08\)\] {
    background-color: hsl(var(--nvs-negative)/0.08);
}

.bg-\[hsl\(var\(--nvs-negative\)\/0\.12\)\] {
    background-color: hsl(var(--nvs-negative)/0.12);
}

.bg-\[hsl\(var\(--nvs-negative\)\/0\.15\)\] {
    background-color: hsl(var(--nvs-negative)/0.15);
}

.bg-\[hsl\(var\(--nvs-orange\)\)\] {
    background-color: hsl(var(--nvs-orange));
}

.bg-\[hsl\(var\(--nvs-orange\)\/0\.12\)\] {
    background-color: hsl(var(--nvs-orange)/0.12);
}

.bg-\[hsl\(var\(--nvs-orange\)\/0\.28\)\] {
    background-color: hsl(var(--nvs-orange)/0.28);
}

.bg-\[hsl\(var\(--nvs-orange\)\/0\.30\)\] {
    background-color: hsl(var(--nvs-orange)/0.30);
}

.bg-\[hsl\(var\(--nvs-page\)\)\] {
    background-color: hsl(var(--nvs-page));
}

.bg-\[hsl\(var\(--nvs-positive\)\)\] {
    background-color: hsl(var(--nvs-positive));
}

.bg-\[hsl\(var\(--nvs-positive\)\/0\.06\)\] {
    background-color: hsl(var(--nvs-positive)/0.06);
}

.bg-\[hsl\(var\(--nvs-positive\)\/0\.08\)\] {
    background-color: hsl(var(--nvs-positive)/0.08);
}

.bg-\[hsl\(var\(--nvs-positive\)\/0\.10\)\] {
    background-color: hsl(var(--nvs-positive)/0.10);
}

.bg-\[hsl\(var\(--nvs-positive\)\/0\.12\)\] {
    background-color: hsl(var(--nvs-positive)/0.12);
}

.bg-\[hsl\(var\(--nvs-positive\)\/0\.15\)\] {
    background-color: hsl(var(--nvs-positive)/0.15);
}

.bg-\[hsl\(var\(--score-bad\)\)\] {
    background-color: hsl(var(--score-bad));
}

.bg-\[hsl\(var\(--score-bad\)\)\]\/20 {
    background-color: hsl(var(--score-bad) / 0.2);
}

.bg-\[hsl\(var\(--score-good\)\)\] {
    background-color: hsl(var(--score-good));
}

.bg-\[hsl\(var\(--score-good\)\)\]\/20 {
    background-color: hsl(var(--score-good) / 0.2);
}

.bg-\[hsl\(var\(--score-watch\)\)\] {
    background-color: hsl(var(--score-watch));
}

.bg-\[hsl\(var\(--score-watch\)\)\]\/15 {
    background-color: hsl(var(--score-watch) / 0.15);
}

.bg-\[hsl\(var\(--score-watch\)\)\]\/20 {
    background-color: hsl(var(--score-watch) / 0.2);
}

.bg-\[hsl\(var\(--success\)\)\] {
    background-color: hsl(var(--success));
}

.bg-\[hsl\(var\(--success\)\)\]\/10 {
    background-color: hsl(var(--success) / 0.1);
}

.bg-\[hsl\(var\(--success\)\)\]\/15 {
    background-color: hsl(var(--success) / 0.15);
}

.bg-\[hsl\(var\(--success\)\)\]\/20 {
    background-color: hsl(var(--success) / 0.2);
}

.bg-\[hsl\(var\(--success\)\)\]\/5 {
    background-color: hsl(var(--success) / 0.05);
}

.bg-\[hsl\(var\(--success\)\)\]\/70 {
    background-color: hsl(var(--success) / 0.7);
}

.bg-\[hsl\(var\(--success\)\)\]\/80 {
    background-color: hsl(var(--success) / 0.8);
}

.bg-\[hsl\(var\(--success\)\)\]\/90 {
    background-color: hsl(var(--success) / 0.9);
}

.bg-\[hsl\(var\(--success\)\/0\.15\)\] {
    background-color: hsl(var(--success)/0.15);
}

.bg-\[hsl\(var\(--success-soft\)\)\] {
    background-color: hsl(var(--success-soft));
}

.bg-\[hsl\(var\(--success-soft\)\)\]\/40 {
    background-color: hsl(var(--success-soft) / 0.4);
}

.bg-\[hsl\(var\(--success-soft\)\)\]\/50 {
    background-color: hsl(var(--success-soft) / 0.5);
}

.bg-\[hsl\(var\(--success-soft\)\)\]\/60 {
    background-color: hsl(var(--success-soft) / 0.6);
}

.bg-\[hsl\(var\(--success-soft\)\)\]\/70 {
    background-color: hsl(var(--success-soft) / 0.7);
}

.bg-\[hsl\(var\(--success-soft\)\)\]\/80 {
    background-color: hsl(var(--success-soft) / 0.8);
}

.bg-\[hsl\(var\(--warning\)\)\] {
    background-color: hsl(var(--warning));
}

.bg-\[hsl\(var\(--warning\)\)\]\/10 {
    background-color: hsl(var(--warning) / 0.1);
}

.bg-\[hsl\(var\(--warning\)\)\]\/15 {
    background-color: hsl(var(--warning) / 0.15);
}

.bg-\[hsl\(var\(--warning\)\)\]\/20 {
    background-color: hsl(var(--warning) / 0.2);
}

.bg-\[hsl\(var\(--warning\)\)\]\/25 {
    background-color: hsl(var(--warning) / 0.25);
}

.bg-\[hsl\(var\(--warning\)\)\]\/30 {
    background-color: hsl(var(--warning) / 0.3);
}

.bg-\[hsl\(var\(--warning\)\)\]\/5 {
    background-color: hsl(var(--warning) / 0.05);
}

.bg-\[hsl\(var\(--warning\)\)\]\/60 {
    background-color: hsl(var(--warning) / 0.6);
}

.bg-\[hsl\(var\(--warning\)\)\]\/80 {
    background-color: hsl(var(--warning) / 0.8);
}

.bg-\[hsl\(var\(--warning\)\)\]\/90 {
    background-color: hsl(var(--warning) / 0.9);
}

.bg-\[hsl\(var\(--warning\)\/0\.12\)\] {
    background-color: hsl(var(--warning)/0.12);
}

.bg-\[hsl\(var\(--warning\)\/0\.15\)\] {
    background-color: hsl(var(--warning)/0.15);
}

.bg-\[hsl\(var\(--warning-soft\)\)\] {
    background-color: hsl(var(--warning-soft));
}

.bg-\[hsl\(var\(--warning-soft\)\)\]\/30 {
    background-color: hsl(var(--warning-soft) / 0.3);
}

.bg-\[hsl\(var\(--warning-soft\)\)\]\/40 {
    background-color: hsl(var(--warning-soft) / 0.4);
}

.bg-\[hsl\(var\(--warning-soft\)\)\]\/50 {
    background-color: hsl(var(--warning-soft) / 0.5);
}

.bg-\[hsl\(var\(--warning-soft\)\)\]\/60 {
    background-color: hsl(var(--warning-soft) / 0.6);
}

.bg-accent {
    background-color: hsl(var(--accent));
}

.bg-accent-foreground {
    background-color: hsl(var(--accent-foreground));
}

.bg-accent\/10 {
    background-color: hsl(var(--accent) / 0.1);
}

.bg-accent\/20 {
    background-color: hsl(var(--accent) / 0.2);
}

.bg-accent\/30 {
    background-color: hsl(var(--accent) / 0.3);
}

.bg-accent\/40 {
    background-color: hsl(var(--accent) / 0.4);
}

.bg-accent\/5 {
    background-color: hsl(var(--accent) / 0.05);
}

.bg-accent\/50 {
    background-color: hsl(var(--accent) / 0.5);
}

.bg-accent\/60 {
    background-color: hsl(var(--accent) / 0.6);
}

.bg-accent\/80 {
    background-color: hsl(var(--accent) / 0.8);
}

.bg-amber-50 {
    --tw-bg-opacity: 1;
    background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}

.bg-amber-500\/10 {
    background-color: rgb(245 158 11 / 0.1);
}

.bg-amber-500\/20 {
    background-color: rgb(245 158 11 / 0.2);
}

.bg-background {
    background-color: hsl(var(--background));
}

.bg-background\/20 {
    background-color: hsl(var(--background) / 0.2);
}

.bg-background\/30 {
    background-color: hsl(var(--background) / 0.3);
}

.bg-background\/40 {
    background-color: hsl(var(--background) / 0.4);
}

.bg-background\/50 {
    background-color: hsl(var(--background) / 0.5);
}

.bg-background\/60 {
    background-color: hsl(var(--background) / 0.6);
}

.bg-background\/70 {
    background-color: hsl(var(--background) / 0.7);
}

.bg-background\/80 {
    background-color: hsl(var(--background) / 0.8);
}

.bg-background\/90 {
    background-color: hsl(var(--background) / 0.9);
}

.bg-background\/95 {
    background-color: hsl(var(--background) / 0.95);
}

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

.bg-black\/0 {
    background-color: rgb(0 0 0 / 0);
}

.bg-black\/10 {
    background-color: rgb(0 0 0 / 0.1);
}

.bg-black\/30 {
    background-color: rgb(0 0 0 / 0.3);
}

.bg-black\/40 {
    background-color: rgb(0 0 0 / 0.4);
}

.bg-black\/5 {
    background-color: rgb(0 0 0 / 0.05);
}

.bg-black\/50 {
    background-color: rgb(0 0 0 / 0.5);
}

.bg-black\/60 {
    background-color: rgb(0 0 0 / 0.6);
}

.bg-black\/70 {
    background-color: rgb(0 0 0 / 0.7);
}

.bg-black\/80 {
    background-color: rgb(0 0 0 / 0.8);
}

.bg-black\/95 {
    background-color: rgb(0 0 0 / 0.95);
}

.bg-blue-500\/5 {
    background-color: rgb(59 130 246 / 0.05);
}

.bg-border {
    background-color: hsl(var(--border));
}

.bg-card {
    background-color: hsl(var(--card));
}

.bg-card\/50 {
    background-color: hsl(var(--card) / 0.5);
}

.bg-card\/60 {
    background-color: hsl(var(--card) / 0.6);
}

.bg-card\/95 {
    background-color: hsl(var(--card) / 0.95);
}

.bg-cat-estimating {
    background-color: hsl(var(--cat-estimating));
}

.bg-cat-estimating-bg {
    background-color: hsl(var(--cat-estimating-bg));
}

.bg-cat-financial {
    background-color: hsl(var(--cat-financial));
}

.bg-cat-financial-bg {
    background-color: hsl(var(--cat-financial-bg));
}

.bg-cat-people {
    background-color: hsl(var(--cat-people));
}

.bg-cat-people-bg {
    background-color: hsl(var(--cat-people-bg));
}

.bg-cat-procurement {
    background-color: hsl(var(--cat-procurement));
}

.bg-cat-procurement-bg {
    background-color: hsl(var(--cat-procurement-bg));
}

.bg-cat-project {
    background-color: hsl(var(--cat-project));
}

.bg-cat-project-bg {
    background-color: hsl(var(--cat-project-bg));
}

.bg-cat-safety {
    background-color: hsl(var(--cat-safety));
}

.bg-cat-safety-bg {
    background-color: hsl(var(--cat-safety-bg));
}

.bg-cat-utility {
    background-color: hsl(var(--cat-utility));
}

.bg-cat-utility-bg {
    background-color: hsl(var(--cat-utility-bg));
}

.bg-current {
    background-color: currentColor;
}

.bg-danger {
    background-color: hsl(var(--danger));
}

.bg-danger-soft {
    background-color: hsl(var(--danger-soft));
}

.bg-danger-soft\/40 {
    background-color: hsl(var(--danger-soft) / 0.4);
}

.bg-destructive {
    background-color: hsl(var(--destructive));
}

.bg-destructive-foreground {
    background-color: hsl(var(--destructive-foreground));
}

.bg-destructive\/10 {
    background-color: hsl(var(--destructive) / 0.1);
}

.bg-destructive\/15 {
    background-color: hsl(var(--destructive) / 0.15);
}

.bg-destructive\/20 {
    background-color: hsl(var(--destructive) / 0.2);
}

.bg-destructive\/30 {
    background-color: hsl(var(--destructive) / 0.3);
}

.bg-destructive\/5 {
    background-color: hsl(var(--destructive) / 0.05);
}

.bg-destructive\/50 {
    background-color: hsl(var(--destructive) / 0.5);
}

.bg-destructive\/60 {
    background-color: hsl(var(--destructive) / 0.6);
}

.bg-destructive\/70 {
    background-color: hsl(var(--destructive) / 0.7);
}

.bg-destructive\/80 {
    background-color: hsl(var(--destructive) / 0.8);
}

.bg-destructive\/\[0\.04\] {
    background-color: hsl(var(--destructive) / 0.04);
}

.bg-destructive\/\[0\.08\] {
    background-color: hsl(var(--destructive) / 0.08);
}

.bg-emerald-500\/15 {
    background-color: rgb(16 185 129 / 0.15);
}

.bg-emerald-500\/20 {
    background-color: rgb(16 185 129 / 0.2);
}

.bg-foreground {
    background-color: hsl(var(--foreground));
}

.bg-foreground\/10 {
    background-color: hsl(var(--foreground) / 0.1);
}

.bg-foreground\/15 {
    background-color: hsl(var(--foreground) / 0.15);
}

.bg-foreground\/30 {
    background-color: hsl(var(--foreground) / 0.3);
}

.bg-foreground\/45 {
    background-color: hsl(var(--foreground) / 0.45);
}

.bg-foreground\/65 {
    background-color: hsl(var(--foreground) / 0.65);
}

.bg-foreground\/70 {
    background-color: hsl(var(--foreground) / 0.7);
}

.bg-foreground\/80 {
    background-color: hsl(var(--foreground) / 0.8);
}

.bg-foreground\/85 {
    background-color: hsl(var(--foreground) / 0.85);
}

.bg-info {
    background-color: hsl(var(--info));
}

.bg-info-soft {
    background-color: hsl(var(--info-soft));
}

.bg-info-soft\/40 {
    background-color: hsl(var(--info-soft) / 0.4);
}

.bg-info\/10 {
    background-color: hsl(var(--info) / 0.1);
}

.bg-info\/20 {
    background-color: hsl(var(--info) / 0.2);
}

.bg-info\/60 {
    background-color: hsl(var(--info) / 0.6);
}

.bg-info\/\[0\.04\] {
    background-color: hsl(var(--info) / 0.04);
}

.bg-info\/\[0\.08\] {
    background-color: hsl(var(--info) / 0.08);
}

.bg-lead-cold-bg {
    background-color: hsl(var(--lead-cold-bg));
}

.bg-lead-cool-bg {
    background-color: hsl(var(--lead-cool-bg));
}

.bg-lead-hot-bg {
    background-color: hsl(var(--lead-hot-bg));
}

.bg-lead-warm-bg {
    background-color: hsl(var(--lead-warm-bg));
}

.bg-muted {
    background-color: hsl(var(--muted));
}

.bg-muted-foreground {
    background-color: hsl(var(--muted-foreground));
}

.bg-muted-foreground\/10 {
    background-color: hsl(var(--muted-foreground) / 0.1);
}

.bg-muted-foreground\/20 {
    background-color: hsl(var(--muted-foreground) / 0.2);
}

.bg-muted-foreground\/30 {
    background-color: hsl(var(--muted-foreground) / 0.3);
}

.bg-muted-foreground\/40 {
    background-color: hsl(var(--muted-foreground) / 0.4);
}

.bg-muted-foreground\/50 {
    background-color: hsl(var(--muted-foreground) / 0.5);
}

.bg-muted-foreground\/60 {
    background-color: hsl(var(--muted-foreground) / 0.6);
}

.bg-muted-foreground\/70 {
    background-color: hsl(var(--muted-foreground) / 0.7);
}

.bg-muted-foreground\/80 {
    background-color: hsl(var(--muted-foreground) / 0.8);
}

.bg-muted\/10 {
    background-color: hsl(var(--muted) / 0.1);
}

.bg-muted\/20 {
    background-color: hsl(var(--muted) / 0.2);
}

.bg-muted\/25 {
    background-color: hsl(var(--muted) / 0.25);
}

.bg-muted\/30 {
    background-color: hsl(var(--muted) / 0.3);
}

.bg-muted\/35 {
    background-color: hsl(var(--muted) / 0.35);
}

.bg-muted\/40 {
    background-color: hsl(var(--muted) / 0.4);
}

.bg-muted\/5 {
    background-color: hsl(var(--muted) / 0.05);
}

.bg-muted\/50 {
    background-color: hsl(var(--muted) / 0.5);
}

.bg-muted\/60 {
    background-color: hsl(var(--muted) / 0.6);
}

.bg-muted\/70 {
    background-color: hsl(var(--muted) / 0.7);
}

.bg-muted\/80 {
    background-color: hsl(var(--muted) / 0.8);
}

.bg-muted\/90 {
    background-color: hsl(var(--muted) / 0.9);
}

.bg-muted\/95 {
    background-color: hsl(var(--muted) / 0.95);
}

.bg-popover {
    background-color: hsl(var(--popover));
}

.bg-popover\/95 {
    background-color: hsl(var(--popover) / 0.95);
}

.bg-primary {
    background-color: hsl(var(--primary));
}

.bg-primary-foreground {
    background-color: hsl(var(--primary-foreground));
}

.bg-primary-foreground\/10 {
    background-color: hsl(var(--primary-foreground) / 0.1);
}

.bg-primary-foreground\/20 {
    background-color: hsl(var(--primary-foreground) / 0.2);
}

.bg-primary-foreground\/30 {
    background-color: hsl(var(--primary-foreground) / 0.3);
}

.bg-primary\/10 {
    background-color: hsl(var(--primary) / 0.1);
}

.bg-primary\/15 {
    background-color: hsl(var(--primary) / 0.15);
}

.bg-primary\/20 {
    background-color: hsl(var(--primary) / 0.2);
}

.bg-primary\/25 {
    background-color: hsl(var(--primary) / 0.25);
}

.bg-primary\/30 {
    background-color: hsl(var(--primary) / 0.3);
}

.bg-primary\/40 {
    background-color: hsl(var(--primary) / 0.4);
}

.bg-primary\/45 {
    background-color: hsl(var(--primary) / 0.45);
}

.bg-primary\/5 {
    background-color: hsl(var(--primary) / 0.05);
}

.bg-primary\/50 {
    background-color: hsl(var(--primary) / 0.5);
}

.bg-primary\/60 {
    background-color: hsl(var(--primary) / 0.6);
}

.bg-primary\/65 {
    background-color: hsl(var(--primary) / 0.65);
}

.bg-primary\/70 {
    background-color: hsl(var(--primary) / 0.7);
}

.bg-primary\/80 {
    background-color: hsl(var(--primary) / 0.8);
}

.bg-primary\/85 {
    background-color: hsl(var(--primary) / 0.85);
}

.bg-primary\/\[0\.02\] {
    background-color: hsl(var(--primary) / 0.02);
}

.bg-primary\/\[0\.03\] {
    background-color: hsl(var(--primary) / 0.03);
}

.bg-primary\/\[0\.04\] {
    background-color: hsl(var(--primary) / 0.04);
}

.bg-primary\/\[0\.06\] {
    background-color: hsl(var(--primary) / 0.06);
}

.bg-primary\/\[0\.08\] {
    background-color: hsl(var(--primary) / 0.08);
}

.bg-priority-critical\/20 {
    background-color: hsl(var(--priority-critical) / 0.2);
}

.bg-priority-high\/20 {
    background-color: hsl(var(--priority-high) / 0.2);
}

.bg-priority-low\/20 {
    background-color: hsl(var(--priority-low) / 0.2);
}

.bg-priority-medium\/20 {
    background-color: hsl(var(--priority-medium) / 0.2);
}

.bg-red-500\/20 {
    background-color: rgb(239 68 68 / 0.2);
}

.bg-secondary {
    background-color: hsl(var(--secondary));
}

.bg-secondary\/50 {
    background-color: hsl(var(--secondary) / 0.5);
}

.bg-sidebar {
    background-color: hsl(var(--sidebar-background));
}

.bg-sidebar-accent {
    background-color: hsl(var(--sidebar-accent));
}

.bg-sidebar-accent\/30 {
    background-color: hsl(var(--sidebar-accent) / 0.3);
}

.bg-sidebar-border {
    background-color: hsl(var(--sidebar-border));
}

.bg-sky-500\/20 {
    background-color: rgb(14 165 233 / 0.2);
}

.bg-slate-100\/25 {
    background-color: rgb(241 245 249 / 0.25);
}

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

.bg-success {
    background-color: hsl(var(--success));
}

.bg-success-soft {
    background-color: hsl(var(--success-soft));
}

.bg-success-soft\/40 {
    background-color: hsl(var(--success-soft) / 0.4);
}

.bg-success\/10 {
    background-color: hsl(var(--success) / 0.1);
}

.bg-success\/15 {
    background-color: hsl(var(--success) / 0.15);
}

.bg-success\/20 {
    background-color: hsl(var(--success) / 0.2);
}

.bg-success\/30 {
    background-color: hsl(var(--success) / 0.3);
}

.bg-success\/5 {
    background-color: hsl(var(--success) / 0.05);
}

.bg-success\/60 {
    background-color: hsl(var(--success) / 0.6);
}

.bg-success\/80 {
    background-color: hsl(var(--success) / 0.8);
}

.bg-success\/\[0\.04\] {
    background-color: hsl(var(--success) / 0.04);
}

.bg-success\/\[0\.08\] {
    background-color: hsl(var(--success) / 0.08);
}

.bg-transparent {
    background-color: transparent;
}

.bg-warning {
    background-color: hsl(var(--warning));
}

.bg-warning-soft {
    background-color: hsl(var(--warning-soft));
}

.bg-warning-soft\/30 {
    background-color: hsl(var(--warning-soft) / 0.3);
}

.bg-warning-soft\/40 {
    background-color: hsl(var(--warning-soft) / 0.4);
}

.bg-warning\/10 {
    background-color: hsl(var(--warning) / 0.1);
}

.bg-warning\/15 {
    background-color: hsl(var(--warning) / 0.15);
}

.bg-warning\/20 {
    background-color: hsl(var(--warning) / 0.2);
}

.bg-warning\/30 {
    background-color: hsl(var(--warning) / 0.3);
}

.bg-warning\/5 {
    background-color: hsl(var(--warning) / 0.05);
}

.bg-warning\/50 {
    background-color: hsl(var(--warning) / 0.5);
}

.bg-warning\/60 {
    background-color: hsl(var(--warning) / 0.6);
}

.bg-warning\/\[0\.04\] {
    background-color: hsl(var(--warning) / 0.04);
}

.bg-warning\/\[0\.08\] {
    background-color: hsl(var(--warning) / 0.08);
}

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

.bg-white\/10 {
    background-color: rgb(255 255 255 / 0.1);
}

.bg-white\/20 {
    background-color: rgb(255 255 255 / 0.2);
}

.bg-white\/50 {
    background-color: rgb(255 255 255 / 0.5);
}

.bg-white\/60 {
    background-color: rgb(255 255 255 / 0.6);
}

.bg-white\/80 {
    background-color: rgb(255 255 255 / 0.8);
}

.bg-white\/90 {
    background-color: rgb(255 255 255 / 0.9);
}

.bg-gradient-to-b {
    background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}

.bg-gradient-to-br {
    background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}

.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.bg-gradient-to-t {
    background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.from-background\/80 {
    --tw-gradient-from: hsl(var(--background) / 0.8) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--background) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/60 {
    --tw-gradient-from: rgb(0 0 0 / 0.6) var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/70 {
    --tw-gradient-from: rgb(0 0 0 / 0.7) var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/80 {
    --tw-gradient-from: rgb(0 0 0 / 0.8) var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-card {
    --tw-gradient-from: hsl(var(--card)) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--card) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-destructive\/10 {
    --tw-gradient-from: hsl(var(--destructive) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--destructive) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-info\/10 {
    --tw-gradient-from: hsl(var(--info) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--info) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-muted\/30 {
    --tw-gradient-from: hsl(var(--muted) / 0.3) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-muted\/50 {
    --tw-gradient-from: hsl(var(--muted) / 0.5) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary {
    --tw-gradient-from: hsl(var(--primary)) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/10 {
    --tw-gradient-from: hsl(var(--primary) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/20 {
    --tw-gradient-from: hsl(var(--primary) / 0.2) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/30 {
    --tw-gradient-from: hsl(var(--primary) / 0.3) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-primary\/5 {
    --tw-gradient-from: hsl(var(--primary) / 0.05) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-secondary\/10 {
    --tw-gradient-from: hsl(var(--secondary) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-sidebar {
    --tw-gradient-from: hsl(var(--sidebar-background)) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--sidebar-background) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-success\/10 {
    --tw-gradient-from: hsl(var(--success) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--success) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-success\/5 {
    --tw-gradient-from: hsl(var(--success) / 0.05) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--success) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-warning\/10 {
    --tw-gradient-from: hsl(var(--warning) / 0.1) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--warning) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-warning\/5 {
    --tw-gradient-from: hsl(var(--warning) / 0.05) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--warning) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.via-\[hsl\(var\(--nvs-orange\)\/0\.10\)\] {
    --tw-gradient-to: hsl(var(--nvs-orange) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--nvs-orange)/0.10) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-background\/80 {
    --tw-gradient-to: hsl(var(--background) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--background) / 0.8) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-primary {
    --tw-gradient-to: hsl(var(--primary) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-primary\/5 {
    --tw-gradient-to: hsl(var(--primary) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / 0.05) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-sidebar-accent {
    --tw-gradient-to: hsl(var(--sidebar-accent) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--sidebar-accent)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-transparent {
    --tw-gradient-to: rgb(0 0 0 / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.to-background {
    --tw-gradient-to: hsl(var(--background)) var(--tw-gradient-to-position);
}

.to-card\/50 {
    --tw-gradient-to: hsl(var(--card) / 0.5) var(--tw-gradient-to-position);
}

.to-card\/80 {
    --tw-gradient-to: hsl(var(--card) / 0.8) var(--tw-gradient-to-position);
}

.to-destructive\/5 {
    --tw-gradient-to: hsl(var(--destructive) / 0.05) var(--tw-gradient-to-position);
}

.to-info\/5 {
    --tw-gradient-to: hsl(var(--info) / 0.05) var(--tw-gradient-to-position);
}

.to-muted {
    --tw-gradient-to: hsl(var(--muted)) var(--tw-gradient-to-position);
}

.to-muted\/30 {
    --tw-gradient-to: hsl(var(--muted) / 0.3) var(--tw-gradient-to-position);
}

.to-primary\/10 {
    --tw-gradient-to: hsl(var(--primary) / 0.1) var(--tw-gradient-to-position);
}

.to-primary\/40 {
    --tw-gradient-to: hsl(var(--primary) / 0.4) var(--tw-gradient-to-position);
}

.to-primary\/5 {
    --tw-gradient-to: hsl(var(--primary) / 0.05) var(--tw-gradient-to-position);
}

.to-primary\/50 {
    --tw-gradient-to: hsl(var(--primary) / 0.5) var(--tw-gradient-to-position);
}

.to-primary\/60 {
    --tw-gradient-to: hsl(var(--primary) / 0.6) var(--tw-gradient-to-position);
}

.to-primary\/70 {
    --tw-gradient-to: hsl(var(--primary) / 0.7) var(--tw-gradient-to-position);
}

.to-primary\/80 {
    --tw-gradient-to: hsl(var(--primary) / 0.8) var(--tw-gradient-to-position);
}

.to-primary\/85 {
    --tw-gradient-to: hsl(var(--primary) / 0.85) var(--tw-gradient-to-position);
}

.to-primary\/90 {
    --tw-gradient-to: hsl(var(--primary) / 0.9) var(--tw-gradient-to-position);
}

.to-secondary\/5 {
    --tw-gradient-to: hsl(var(--secondary) / 0.05) var(--tw-gradient-to-position);
}

.to-sidebar {
    --tw-gradient-to: hsl(var(--sidebar-background)) var(--tw-gradient-to-position);
}

.to-success\/5 {
    --tw-gradient-to: hsl(var(--success) / 0.05) var(--tw-gradient-to-position);
}

.to-transparent {
    --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.to-warning\/5 {
    --tw-gradient-to: hsl(var(--warning) / 0.05) var(--tw-gradient-to-position);
}

.bg-cover {
    background-size: cover;
}

.bg-clip-text {
    -webkit-background-clip: text;
            background-clip: text;
}

.bg-center {
    background-position: center;
}

.fill-\[hsl\(var\(--nvs-orange\)\)\] {
    fill: hsl(var(--nvs-orange));
}

.fill-\[hsl\(var\(--warning\)\)\] {
    fill: hsl(var(--warning));
}

.fill-current {
    fill: currentColor;
}

.fill-foreground {
    fill: hsl(var(--foreground));
}

.fill-muted-foreground {
    fill: hsl(var(--muted-foreground));
}

.fill-primary {
    fill: hsl(var(--primary));
}

.fill-primary\/20 {
    fill: hsl(var(--primary) / 0.2);
}

.stroke-\[hsl\(var\(--danger\)\)\] {
    stroke: hsl(var(--danger));
}

.stroke-\[hsl\(var\(--info\)\)\] {
    stroke: hsl(var(--info));
}

.stroke-\[hsl\(var\(--score-bad\)\)\] {
    stroke: hsl(var(--score-bad));
}

.stroke-\[hsl\(var\(--score-good\)\)\] {
    stroke: hsl(var(--score-good));
}

.stroke-\[hsl\(var\(--score-watch\)\)\] {
    stroke: hsl(var(--score-watch));
}

.stroke-\[hsl\(var\(--success\)\)\] {
    stroke: hsl(var(--success));
}

.stroke-\[hsl\(var\(--warning\)\)\] {
    stroke: hsl(var(--warning));
}

.stroke-border {
    stroke: hsl(var(--border));
}

.stroke-border\/30 {
    stroke: hsl(var(--border) / 0.3);
}

.stroke-muted {
    stroke: hsl(var(--muted));
}

.stroke-muted-foreground {
    stroke: hsl(var(--muted-foreground));
}

.stroke-\[2\.5\] {
    stroke-width: 2.5;
}

.object-contain {
    -o-object-fit: contain;
       object-fit: contain;
}

.object-cover {
    -o-object-fit: cover;
       object-fit: cover;
}

.p-0 {
    padding: 0px;
}

.p-0\.5 {
    padding: 0.125rem;
}

.p-1 {
    padding: 0.25rem;
}

.p-1\.5 {
    padding: 0.375rem;
}

.p-10 {
    padding: 2.5rem;
}

.p-12 {
    padding: 3rem;
}

.p-2 {
    padding: 0.5rem;
}

.p-2\.5 {
    padding: 0.625rem;
}

.p-3 {
    padding: 0.75rem;
}

.p-3\.5 {
    padding: 0.875rem;
}

.p-4 {
    padding: 1rem;
}

.p-5 {
    padding: 1.25rem;
}

.p-6 {
    padding: 1.5rem;
}

.p-8 {
    padding: 2rem;
}

.p-\[1px\] {
    padding: 1px;
}

.\!px-1\.5 {
    padding-left: 0.375rem !important;
    padding-right: 0.375rem !important;
}

.\!py-0 {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
}

.px-0 {
    padding-left: 0px;
    padding-right: 0px;
}

.px-0\.5 {
    padding-left: 0.125rem;
    padding-right: 0.125rem;
}

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

.px-1\.5 {
    padding-left: 0.375rem;
    padding-right: 0.375rem;
}

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

.px-2\.5 {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
}

.px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

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

.px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

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

.py-0 {
    padding-top: 0px;
    padding-bottom: 0px;
}

.py-0\.5 {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

.py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.py-1\.5 {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

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

.py-2\.5 {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

.py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

.py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.py-3\.5 {
    padding-top: 0.875rem;
    padding-bottom: 0.875rem;
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

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

.py-px {
    padding-top: 1px;
    padding-bottom: 1px;
}

.pb-0 {
    padding-bottom: 0px;
}

.pb-0\.5 {
    padding-bottom: 0.125rem;
}

.pb-1 {
    padding-bottom: 0.25rem;
}

.pb-1\.5 {
    padding-bottom: 0.375rem;
}

.pb-12 {
    padding-bottom: 3rem;
}

.pb-14 {
    padding-bottom: 3.5rem;
}

.pb-2 {
    padding-bottom: 0.5rem;
}

.pb-24 {
    padding-bottom: 6rem;
}

.pb-3 {
    padding-bottom: 0.75rem;
}

.pb-4 {
    padding-bottom: 1rem;
}

.pb-5 {
    padding-bottom: 1.25rem;
}

.pb-6 {
    padding-bottom: 1.5rem;
}

.pb-8 {
    padding-bottom: 2rem;
}

.pl-0\.5 {
    padding-left: 0.125rem;
}

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

.pl-1\.5 {
    padding-left: 0.375rem;
}

.pl-10 {
    padding-left: 2.5rem;
}

.pl-11 {
    padding-left: 2.75rem;
}

.pl-12 {
    padding-left: 3rem;
}

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

.pl-2 {
    padding-left: 0.5rem;
}

.pl-2\.5 {
    padding-left: 0.625rem;
}

.pl-3 {
    padding-left: 0.75rem;
}

.pl-3\.5 {
    padding-left: 0.875rem;
}

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

.pl-5 {
    padding-left: 1.25rem;
}

.pl-6 {
    padding-left: 1.5rem;
}

.pl-7 {
    padding-left: 1.75rem;
}

.pl-8 {
    padding-left: 2rem;
}

.pl-9 {
    padding-left: 2.25rem;
}

.pl-\[3\.75rem\] {
    padding-left: 3.75rem;
}

.pl-\[38px\] {
    padding-left: 38px;
}

.pl-\[52px\] {
    padding-left: 52px;
}

.pl-\[56px\] {
    padding-left: 56px;
}

.pl-\[68px\] {
    padding-left: 68px;
}

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

.pr-1\.5 {
    padding-right: 0.375rem;
}

.pr-10 {
    padding-right: 2.5rem;
}

.pr-12 {
    padding-right: 3rem;
}

.pr-14 {
    padding-right: 3.5rem;
}

.pr-2 {
    padding-right: 0.5rem;
}

.pr-2\.5 {
    padding-right: 0.625rem;
}

.pr-20 {
    padding-right: 5rem;
}

.pr-24 {
    padding-right: 6rem;
}

.pr-3 {
    padding-right: 0.75rem;
}

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

.pr-5 {
    padding-right: 1.25rem;
}

.pr-6 {
    padding-right: 1.5rem;
}

.pr-7 {
    padding-right: 1.75rem;
}

.pr-8 {
    padding-right: 2rem;
}

.pr-9 {
    padding-right: 2.25rem;
}

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

.pt-0\.5 {
    padding-top: 0.125rem;
}

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

.pt-1\.5 {
    padding-top: 0.375rem;
}

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

.pt-2 {
    padding-top: 0.5rem;
}

.pt-2\.5 {
    padding-top: 0.625rem;
}

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

.pt-3\.5 {
    padding-top: 0.875rem;
}

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

.pt-5 {
    padding-top: 1.25rem;
}

.pt-6 {
    padding-top: 1.5rem;
}

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

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

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

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

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

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

.font-\[\'Inter\'\2c sans-serif\] {
    font-family: 'Inter',sans-serif;
}

.font-mono {
    font-family: ui-monospace, SF Mono, SFMono-Regular, Cascadia Mono, Segoe UI Mono, Roboto Mono, Menlo, Consolas, Liberation Mono, monospace;
}

.font-sans {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
}

.text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
}

.text-\[0\.8rem\] {
    font-size: 0.8rem;
}

.text-\[10px\] {
    font-size: 10px;
}

.text-\[11px\] {
    font-size: 11px;
}

.text-\[12px\] {
    font-size: 12px;
}

.text-\[13px\] {
    font-size: 13px;
}

.text-\[15px\] {
    font-size: 15px;
}

.text-\[17px\] {
    font-size: 17px;
}

.text-\[22px\] {
    font-size: 22px;
}

.text-\[28px\] {
    font-size: 28px;
}

.text-\[7px\] {
    font-size: 7px;
}

.text-\[8px\] {
    font-size: 8px;
}

.text-\[9px\] {
    font-size: 9px;
}

.text-base {
    font-size: 1rem;
    line-height: 1.5rem;
}

.text-ds-body {
    font-size: var(--font-body);
    line-height: 1.5;
}

.text-ds-card-title {
    font-size: var(--font-card-title);
    line-height: 1.4;
    font-weight: var(--weight-heading);
}

.text-ds-display {
    font-size: var(--font-display);
    line-height: 1.2;
    font-weight: var(--weight-heading);
}

.text-ds-eyebrow {
    font-size: var(--font-small);
    line-height: 1.4;
    letter-spacing: 0.06em;
    font-weight: 600;
}

.text-ds-micro {
    font-size: var(--font-micro);
    line-height: 1.4;
    letter-spacing: 0.02em;
}

.text-ds-page-title {
    font-size: var(--font-page-title);
    line-height: 1.25;
    font-weight: var(--weight-heading);
}

.text-ds-section {
    font-size: var(--font-section);
    line-height: 1.35;
    font-weight: var(--weight-heading);
}

.text-ds-small {
    font-size: var(--font-small);
    line-height: 1.45;
}

.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
}

.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-extrabold {
    font-weight: 800;
}

.font-medium {
    font-weight: 500;
}

.font-normal {
    font-weight: 400;
}

.font-semibold {
    font-weight: 600;
}

.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.capitalize {
    text-transform: capitalize;
}

.normal-case {
    text-transform: none;
}

.italic {
    font-style: italic;
}

.tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}

.leading-4 {
    line-height: 1rem;
}

.leading-5 {
    line-height: 1.25rem;
}

.leading-6 {
    line-height: 1.5rem;
}

.leading-none {
    line-height: 1;
}

.leading-relaxed {
    line-height: 1.625;
}

.leading-snug {
    line-height: 1.375;
}

.leading-tight {
    line-height: 1.25;
}

.tracking-\[3px\] {
    letter-spacing: 3px;
}

.tracking-normal {
    letter-spacing: 0em;
}

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

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

.tracking-wider {
    letter-spacing: 0.05em;
}

.tracking-widest {
    letter-spacing: 0.1em;
}

.text-\[hsl\(var\(--brand\)\)\] {
    color: hsl(var(--brand));
}

.text-\[hsl\(var\(--cat-estimating\)\)\] {
    color: hsl(var(--cat-estimating));
}

.text-\[hsl\(var\(--cat-financial\)\)\] {
    color: hsl(var(--cat-financial));
}

.text-\[hsl\(var\(--cat-people\)\)\] {
    color: hsl(var(--cat-people));
}

.text-\[hsl\(var\(--cat-procurement\)\)\] {
    color: hsl(var(--cat-procurement));
}

.text-\[hsl\(var\(--cat-procurement\)\)\]\/60 {
    color: hsl(var(--cat-procurement) / 0.6);
}

.text-\[hsl\(var\(--cat-project\)\)\] {
    color: hsl(var(--cat-project));
}

.text-\[hsl\(var\(--cat-safety\)\)\] {
    color: hsl(var(--cat-safety));
}

.text-\[hsl\(var\(--cat-utility\)\)\] {
    color: hsl(var(--cat-utility));
}

.text-\[hsl\(var\(--danger\)\)\] {
    color: hsl(var(--danger));
}

.text-\[hsl\(var\(--danger\)\)\]\/80 {
    color: hsl(var(--danger) / 0.8);
}

.text-\[hsl\(var\(--danger-foreground\)\)\] {
    color: hsl(var(--danger-foreground));
}

.text-\[hsl\(var\(--destructive\)\)\] {
    color: hsl(var(--destructive));
}

.text-\[hsl\(var\(--hero-foreground\)\)\] {
    color: hsl(var(--hero-foreground));
}

.text-\[hsl\(var\(--hero-foreground\)\)\]\/40 {
    color: hsl(var(--hero-foreground) / 0.4);
}

.text-\[hsl\(var\(--hero-foreground\)\)\]\/70 {
    color: hsl(var(--hero-foreground) / 0.7);
}

.text-\[hsl\(var\(--hero-foreground\)\)\]\/75 {
    color: hsl(var(--hero-foreground) / 0.75);
}

.text-\[hsl\(var\(--hero-foreground\)\)\]\/80 {
    color: hsl(var(--hero-foreground) / 0.8);
}

.text-\[hsl\(var\(--hero-foreground\)\)\]\/90 {
    color: hsl(var(--hero-foreground) / 0.9);
}

.text-\[hsl\(var\(--info\)\)\] {
    color: hsl(var(--info));
}

.text-\[hsl\(var\(--info\)\)\]\/60 {
    color: hsl(var(--info) / 0.6);
}

.text-\[hsl\(var\(--info\)\)\]\/80 {
    color: hsl(var(--info) / 0.8);
}

.text-\[hsl\(var\(--info-foreground\)\)\] {
    color: hsl(var(--info-foreground));
}

.text-\[hsl\(var\(--nvs-brand\)\)\] {
    color: hsl(var(--nvs-brand));
}

.text-\[hsl\(var\(--nvs-ink\)\)\] {
    color: hsl(var(--nvs-ink));
}

.text-\[hsl\(var\(--nvs-ink-soft\)\)\] {
    color: hsl(var(--nvs-ink-soft));
}

.text-\[hsl\(var\(--nvs-monitor\)\)\] {
    color: hsl(var(--nvs-monitor));
}

.text-\[hsl\(var\(--nvs-monitor\2c 35_85\%_45\%\)\)\] {
    color: hsl(var(--nvs-monitor,35 85% 45%));
}

.text-\[hsl\(var\(--nvs-muted\)\)\] {
    color: hsl(var(--nvs-muted));
}

.text-\[hsl\(var\(--nvs-negative\)\)\] {
    color: hsl(var(--nvs-negative));
}

.text-\[hsl\(var\(--nvs-negative\)\)\]\/50 {
    color: hsl(var(--nvs-negative) / 0.5);
}

.text-\[hsl\(var\(--nvs-orange\)\)\] {
    color: hsl(var(--nvs-orange));
}

.text-\[hsl\(var\(--nvs-orange-glow\)\)\] {
    color: hsl(var(--nvs-orange-glow));
}

.text-\[hsl\(var\(--nvs-positive\)\)\] {
    color: hsl(var(--nvs-positive));
}

.text-\[hsl\(var\(--nvs-positive\)\)\]\/50 {
    color: hsl(var(--nvs-positive) / 0.5);
}

.text-\[hsl\(var\(--nvs-positive\2c 145_45\%_35\%\)\)\] {
    color: hsl(var(--nvs-positive,145 45% 35%));
}

.text-\[hsl\(var\(--primary\)\)\] {
    color: hsl(var(--primary));
}

.text-\[hsl\(var\(--score-bad\)\)\] {
    color: hsl(var(--score-bad));
}

.text-\[hsl\(var\(--score-good\)\)\] {
    color: hsl(var(--score-good));
}

.text-\[hsl\(var\(--score-watch\)\)\] {
    color: hsl(var(--score-watch));
}

.text-\[hsl\(var\(--success\)\)\] {
    color: hsl(var(--success));
}

.text-\[hsl\(var\(--success\)\)\]\/60 {
    color: hsl(var(--success) / 0.6);
}

.text-\[hsl\(var\(--success\)\)\]\/80 {
    color: hsl(var(--success) / 0.8);
}

.text-\[hsl\(var\(--success\)\)\]\/90 {
    color: hsl(var(--success) / 0.9);
}

.text-\[hsl\(var\(--success-foreground\)\)\] {
    color: hsl(var(--success-foreground));
}

.text-\[hsl\(var\(--warning\)\)\] {
    color: hsl(var(--warning));
}

.text-\[hsl\(var\(--warning\)\)\]\/60 {
    color: hsl(var(--warning) / 0.6);
}

.text-\[hsl\(var\(--warning\)\)\]\/70 {
    color: hsl(var(--warning) / 0.7);
}

.text-\[hsl\(var\(--warning\)\)\]\/80 {
    color: hsl(var(--warning) / 0.8);
}

.text-\[hsl\(var\(--warning\)\)\]\/90 {
    color: hsl(var(--warning) / 0.9);
}

.text-\[hsl\(var\(--warning-foreground\)\)\] {
    color: hsl(var(--warning-foreground));
}

.text-accent {
    color: hsl(var(--accent));
}

.text-accent-foreground {
    color: hsl(var(--accent-foreground));
}

.text-accent-foreground\/80 {
    color: hsl(var(--accent-foreground) / 0.8);
}

.text-amber-100 {
    --tw-text-opacity: 1;
    color: rgb(254 243 199 / var(--tw-text-opacity, 1));
}

.text-amber-600 {
    --tw-text-opacity: 1;
    color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.text-amber-700 {
    --tw-text-opacity: 1;
    color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}

.text-background {
    color: hsl(var(--background));
}

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

.text-blue-600 {
    --tw-text-opacity: 1;
    color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}

.text-border {
    color: hsl(var(--border));
}

.text-card-foreground {
    color: hsl(var(--card-foreground));
}

.text-cat-estimating {
    color: hsl(var(--cat-estimating));
}

.text-cat-financial {
    color: hsl(var(--cat-financial));
}

.text-cat-people {
    color: hsl(var(--cat-people));
}

.text-cat-procurement {
    color: hsl(var(--cat-procurement));
}

.text-cat-project {
    color: hsl(var(--cat-project));
}

.text-cat-safety {
    color: hsl(var(--cat-safety));
}

.text-cat-utility {
    color: hsl(var(--cat-utility));
}

.text-current {
    color: currentColor;
}

.text-danger {
    color: hsl(var(--danger));
}

.text-danger-foreground {
    color: hsl(var(--danger-foreground));
}

.text-danger-soft-foreground {
    color: hsl(var(--danger-soft-foreground));
}

.text-danger-soft-foreground\/70 {
    color: hsl(var(--danger-soft-foreground) / 0.7);
}

.text-danger-soft-foreground\/80 {
    color: hsl(var(--danger-soft-foreground) / 0.8);
}

.text-destructive {
    color: hsl(var(--destructive));
}

.text-destructive-foreground {
    color: hsl(var(--destructive-foreground));
}

.text-destructive\/30 {
    color: hsl(var(--destructive) / 0.3);
}

.text-destructive\/50 {
    color: hsl(var(--destructive) / 0.5);
}

.text-destructive\/60 {
    color: hsl(var(--destructive) / 0.6);
}

.text-destructive\/70 {
    color: hsl(var(--destructive) / 0.7);
}

.text-destructive\/80 {
    color: hsl(var(--destructive) / 0.8);
}

.text-destructive\/90 {
    color: hsl(var(--destructive) / 0.9);
}

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

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

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

.text-foreground {
    color: hsl(var(--foreground));
}

.text-foreground\/50 {
    color: hsl(var(--foreground) / 0.5);
}

.text-foreground\/60 {
    color: hsl(var(--foreground) / 0.6);
}

.text-foreground\/70 {
    color: hsl(var(--foreground) / 0.7);
}

.text-foreground\/80 {
    color: hsl(var(--foreground) / 0.8);
}

.text-foreground\/85 {
    color: hsl(var(--foreground) / 0.85);
}

.text-foreground\/90 {
    color: hsl(var(--foreground) / 0.9);
}

.text-green-600 {
    --tw-text-opacity: 1;
    color: rgb(22 163 74 / var(--tw-text-opacity, 1));
}

.text-info {
    color: hsl(var(--info));
}

.text-info-foreground {
    color: hsl(var(--info-foreground));
}

.text-info-soft-foreground {
    color: hsl(var(--info-soft-foreground));
}

.text-info\/80 {
    color: hsl(var(--info) / 0.8);
}

.text-info\/90 {
    color: hsl(var(--info) / 0.9);
}

.text-input {
    color: hsl(var(--input));
}

.text-lead-cold {
    color: hsl(var(--lead-cold));
}

.text-lead-cool {
    color: hsl(var(--lead-cool));
}

.text-lead-hot {
    color: hsl(var(--lead-hot));
}

.text-lead-warm {
    color: hsl(var(--lead-warm));
}

.text-muted {
    color: hsl(var(--muted));
}

.text-muted-foreground {
    color: hsl(var(--muted-foreground));
}

.text-muted-foreground\/30 {
    color: hsl(var(--muted-foreground) / 0.3);
}

.text-muted-foreground\/40 {
    color: hsl(var(--muted-foreground) / 0.4);
}

.text-muted-foreground\/50 {
    color: hsl(var(--muted-foreground) / 0.5);
}

.text-muted-foreground\/60 {
    color: hsl(var(--muted-foreground) / 0.6);
}

.text-muted-foreground\/70 {
    color: hsl(var(--muted-foreground) / 0.7);
}

.text-muted-foreground\/80 {
    color: hsl(var(--muted-foreground) / 0.8);
}

.text-popover-foreground {
    color: hsl(var(--popover-foreground));
}

.text-primary {
    color: hsl(var(--primary));
}

.text-primary-foreground {
    color: hsl(var(--primary-foreground));
}

.text-primary-foreground\/80 {
    color: hsl(var(--primary-foreground) / 0.8);
}

.text-primary-foreground\/85 {
    color: hsl(var(--primary-foreground) / 0.85);
}

.text-primary\/30 {
    color: hsl(var(--primary) / 0.3);
}

.text-primary\/50 {
    color: hsl(var(--primary) / 0.5);
}

.text-primary\/60 {
    color: hsl(var(--primary) / 0.6);
}

.text-primary\/70 {
    color: hsl(var(--primary) / 0.7);
}

.text-primary\/80 {
    color: hsl(var(--primary) / 0.8);
}

.text-priority-high {
    color: hsl(var(--priority-high));
}

.text-priority-low {
    color: hsl(var(--priority-low));
}

.text-priority-medium {
    color: hsl(var(--priority-medium));
}

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

.text-secondary-foreground {
    color: hsl(var(--secondary-foreground));
}

.text-sidebar-accent-foreground {
    color: hsl(var(--sidebar-accent-foreground));
}

.text-sidebar-foreground {
    color: hsl(var(--sidebar-foreground));
}

.text-sidebar-foreground\/40 {
    color: hsl(var(--sidebar-foreground) / 0.4);
}

.text-sidebar-foreground\/50 {
    color: hsl(var(--sidebar-foreground) / 0.5);
}

.text-sidebar-foreground\/60 {
    color: hsl(var(--sidebar-foreground) / 0.6);
}

.text-sidebar-foreground\/70 {
    color: hsl(var(--sidebar-foreground) / 0.7);
}

.text-sidebar-foreground\/80 {
    color: hsl(var(--sidebar-foreground) / 0.8);
}

.text-sidebar-foreground\/85 {
    color: hsl(var(--sidebar-foreground) / 0.85);
}

.text-sidebar-foreground\/90 {
    color: hsl(var(--sidebar-foreground) / 0.9);
}

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

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

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

.text-success {
    color: hsl(var(--success));
}

.text-success-foreground {
    color: hsl(var(--success-foreground));
}

.text-success-soft-foreground {
    color: hsl(var(--success-soft-foreground));
}

.text-success-soft-foreground\/70 {
    color: hsl(var(--success-soft-foreground) / 0.7);
}

.text-transparent {
    color: transparent;
}

.text-warning {
    color: hsl(var(--warning));
}

.text-warning-foreground {
    color: hsl(var(--warning-foreground));
}

.text-warning-foreground\/80 {
    color: hsl(var(--warning-foreground) / 0.8);
}

.text-warning-soft-foreground {
    color: hsl(var(--warning-soft-foreground));
}

.text-warning\/30 {
    color: hsl(var(--warning) / 0.3);
}

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

.text-white\/15 {
    color: rgb(255 255 255 / 0.15);
}

.text-white\/50 {
    color: rgb(255 255 255 / 0.5);
}

.text-white\/60 {
    color: rgb(255 255 255 / 0.6);
}

.text-white\/70 {
    color: rgb(255 255 255 / 0.7);
}

.text-white\/80 {
    color: rgb(255 255 255 / 0.8);
}

.text-white\/90 {
    color: rgb(255 255 255 / 0.9);
}

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

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

.decoration-dotted {
    text-decoration-style: dotted;
}

.underline-offset-2 {
    text-underline-offset: 2px;
}

.underline-offset-4 {
    text-underline-offset: 4px;
}

.accent-primary {
    accent-color: hsl(var(--primary));
}

.opacity-0 {
    opacity: 0;
}

.opacity-100 {
    opacity: 1;
}

.opacity-20 {
    opacity: 0.2;
}

.opacity-30 {
    opacity: 0.3;
}

.opacity-40 {
    opacity: 0.4;
}

.opacity-5 {
    opacity: 0.05;
}

.opacity-50 {
    opacity: 0.5;
}

.opacity-60 {
    opacity: 0.6;
}

.opacity-70 {
    opacity: 0.7;
}

.opacity-75 {
    opacity: 0.75;
}

.opacity-80 {
    opacity: 0.8;
}

.opacity-85 {
    opacity: 0.85;
}

.opacity-90 {
    opacity: 0.9;
}

.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-2xl {
    --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
    --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_-2px_8px_-4px_hsl\(var\(--foreground\)\/0\.08\)\] {
    --tw-shadow: 0 -2px 8px -4px hsl(var(--foreground)/0.08);
    --tw-shadow-colored: 0 -2px 8px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_-4px_12px_-6px_rgba\(0\2c 0\2c 0\2c 0\.1\)\] {
    --tw-shadow: 0 -4px 12px -6px rgba(0,0,0,0.1);
    --tw-shadow-colored: 0 -4px 12px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_-4px_12px_-8px_rgba\(0\2c 0\2c 0\2c 0\.15\)\] {
    --tw-shadow: 0 -4px 12px -8px rgba(0,0,0,0.15);
    --tw-shadow-colored: 0 -4px 12px -8px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_-8px_20px_hsl\(var\(--foreground\)\/0\.08\)\] {
    --tw-shadow: 0 -8px 20px hsl(var(--foreground)/0.08);
    --tw-shadow-colored: 0 -8px 20px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\] {
    --tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));
    --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_1px_2px_rgba\(0\2c 0\2c 0\2c 0\.03\)\2c 0_1px_1px_rgba\(0\2c 0\2c 0\2c 0\.02\)\] {
    --tw-shadow: 0 1px 2px rgba(0,0,0,0.03),0 1px 1px rgba(0,0,0,0.02);
    --tw-shadow-colored: 0 1px 2px var(--tw-shadow-color), 0 1px 1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_24px_60px_-15px_rgba\(0\2c 0\2c 0\2c 0\.35\)\] {
    --tw-shadow: 0 24px 60px -15px rgba(0,0,0,0.35);
    --tw-shadow-colored: 0 24px 60px -15px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_4px_12px_-8px_rgba\(0\2c 0\2c 0\2c 0\.15\)\] {
    --tw-shadow: 0 4px 12px -8px rgba(0,0,0,0.15);
    --tw-shadow-colored: 0 4px 12px -8px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_8px_32px_-4px_hsl\(var\(--primary\)\/0\.55\)\2c 0_0_0_1px_hsl\(var\(--primary\)\/0\.1\)\] {
    --tw-shadow: 0 8px 32px -4px hsl(var(--primary)/0.55),0 0 0 1px hsl(var(--primary)/0.1);
    --tw-shadow-colored: 0 8px 32px -4px var(--tw-shadow-color), 0 0 0 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-\[inset_2px_0_0_hsl\(var\(--nvs-orange\)\)\] {
    --tw-shadow: inset 2px 0 0 hsl(var(--nvs-orange));
    --tw-shadow-colored: inset 2px 0 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[inset_3px_0_0_hsl\(var\(--nvs-orange\)\)\] {
    --tw-shadow: inset 3px 0 0 hsl(var(--nvs-orange));
    --tw-shadow-colored: inset 3px 0 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[inset_4px_0_0_0_hsl\(var\(--nvs-orange\)\)\] {
    --tw-shadow: inset 4px 0 0 0 hsl(var(--nvs-orange));
    --tw-shadow-colored: inset 4px 0 0 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-elev-floating {
    --tw-shadow: var(--elev-floating);
    --tw-shadow-colored: var(--elev-floating);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-elev-overlay {
    --tw-shadow: var(--elev-overlay);
    --tw-shadow-colored: var(--elev-overlay);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-elev-raised {
    --tw-shadow: var(--elev-raised);
    --tw-shadow-colored: var(--elev-raised);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

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

.shadow-none {
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

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

.shadow-xl {
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-amber-200\/50 {
    --tw-shadow-color: rgb(253 230 138 / 0.5);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-amber-500\/25 {
    --tw-shadow-color: rgb(245 158 11 / 0.25);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-200\/50 {
    --tw-shadow-color: rgb(191 219 254 / 0.5);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-500\/25 {
    --tw-shadow-color: rgb(59 130 246 / 0.25);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-emerald-500\/25 {
    --tw-shadow-color: rgb(16 185 129 / 0.25);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-purple-500\/25 {
    --tw-shadow-color: rgb(168 85 247 / 0.25);
    --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-500\/25 {
    --tw-shadow-color: rgb(239 68 68 / 0.25);
    --tw-shadow: var(--tw-shadow-colored);
}

.outline-none {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.outline {
    outline-style: solid;
}

.ring {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-0 {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-1 {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-2 {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-4 {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-inset {
    --tw-ring-inset: inset;
}

.ring-\[hsl\(var\(--cat-financial\)\)\] {
    --tw-ring-color: hsl(var(--cat-financial));
}

.ring-\[hsl\(var\(--cat-procurement\)\)\] {
    --tw-ring-color: hsl(var(--cat-procurement));
}

.ring-\[hsl\(var\(--danger\)\)\] {
    --tw-ring-color: hsl(var(--danger));
}

.ring-\[hsl\(var\(--info\)\)\] {
    --tw-ring-color: hsl(var(--info));
}

.ring-\[hsl\(var\(--nvs-line\)\)\] {
    --tw-ring-color: hsl(var(--nvs-line));
}

.ring-\[hsl\(var\(--nvs-monitor\)\)\] {
    --tw-ring-color: hsl(var(--nvs-monitor));
}

.ring-\[hsl\(var\(--nvs-negative\)\)\] {
    --tw-ring-color: hsl(var(--nvs-negative));
}

.ring-\[hsl\(var\(--nvs-orange\)\)\] {
    --tw-ring-color: hsl(var(--nvs-orange));
}

.ring-\[hsl\(var\(--nvs-orange\)\)\]\/40 {
    --tw-ring-color: hsl(var(--nvs-orange) / 0.4);
}

.ring-\[hsl\(var\(--nvs-orange\)\/0\.30\)\] {
    --tw-ring-color: hsl(var(--nvs-orange)/0.30);
}

.ring-\[hsl\(var\(--nvs-orange\)\/0\.4\)\] {
    --tw-ring-color: hsl(var(--nvs-orange)/0.4);
}

.ring-\[hsl\(var\(--nvs-orange\)\/0\.6\)\] {
    --tw-ring-color: hsl(var(--nvs-orange)/0.6);
}

.ring-\[hsl\(var\(--nvs-positive\)\)\] {
    --tw-ring-color: hsl(var(--nvs-positive));
}

.ring-\[hsl\(var\(--success\)\)\] {
    --tw-ring-color: hsl(var(--success));
}

.ring-\[hsl\(var\(--success\)\)\]\/20 {
    --tw-ring-color: hsl(var(--success) / 0.2);
}

.ring-\[hsl\(var\(--warning\)\)\] {
    --tw-ring-color: hsl(var(--warning));
}

.ring-\[hsl\(var\(--warning\)\)\]\/40 {
    --tw-ring-color: hsl(var(--warning) / 0.4);
}

.ring-\[hsl\(var\(--warning\)\)\]\/50 {
    --tw-ring-color: hsl(var(--warning) / 0.5);
}

.ring-\[hsl\(var\(--warning\)\)\]\/60 {
    --tw-ring-color: hsl(var(--warning) / 0.6);
}

.ring-background {
    --tw-ring-color: hsl(var(--background));
}

.ring-cat-estimating\/40 {
    --tw-ring-color: hsl(var(--cat-estimating) / 0.4);
}

.ring-cat-financial\/40 {
    --tw-ring-color: hsl(var(--cat-financial) / 0.4);
}

.ring-cat-people\/40 {
    --tw-ring-color: hsl(var(--cat-people) / 0.4);
}

.ring-cat-procurement\/40 {
    --tw-ring-color: hsl(var(--cat-procurement) / 0.4);
}

.ring-cat-project\/40 {
    --tw-ring-color: hsl(var(--cat-project) / 0.4);
}

.ring-cat-safety\/40 {
    --tw-ring-color: hsl(var(--cat-safety) / 0.4);
}

.ring-cat-utility\/40 {
    --tw-ring-color: hsl(var(--cat-utility) / 0.4);
}

.ring-destructive {
    --tw-ring-color: hsl(var(--destructive));
}

.ring-destructive\/20 {
    --tw-ring-color: hsl(var(--destructive) / 0.2);
}

.ring-destructive\/30 {
    --tw-ring-color: hsl(var(--destructive) / 0.3);
}

.ring-foreground {
    --tw-ring-color: hsl(var(--foreground));
}

.ring-primary {
    --tw-ring-color: hsl(var(--primary));
}

.ring-primary\/15 {
    --tw-ring-color: hsl(var(--primary) / 0.15);
}

.ring-primary\/20 {
    --tw-ring-color: hsl(var(--primary) / 0.2);
}

.ring-primary\/30 {
    --tw-ring-color: hsl(var(--primary) / 0.3);
}

.ring-primary\/40 {
    --tw-ring-color: hsl(var(--primary) / 0.4);
}

.ring-primary\/50 {
    --tw-ring-color: hsl(var(--primary) / 0.5);
}

.ring-primary\/60 {
    --tw-ring-color: hsl(var(--primary) / 0.6);
}

.ring-ring {
    --tw-ring-color: hsl(var(--ring));
}

.ring-sidebar-ring {
    --tw-ring-color: hsl(var(--sidebar-ring));
}

.ring-success {
    --tw-ring-color: hsl(var(--success));
}

.ring-transparent {
    --tw-ring-color: transparent;
}

.ring-warning {
    --tw-ring-color: hsl(var(--warning));
}

.ring-offset-1 {
    --tw-ring-offset-width: 1px;
}

.ring-offset-2 {
    --tw-ring-offset-width: 2px;
}

.ring-offset-\[hsl\(var\(--nvs-card\)\)\] {
    --tw-ring-offset-color: hsl(var(--nvs-card));
}

.ring-offset-background {
    --tw-ring-offset-color: hsl(var(--background));
}

.ring-offset-popover {
    --tw-ring-offset-color: hsl(var(--popover));
}

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

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

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

.blur-xl {
    --tw-blur: blur(24px);
    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);
}

.drop-shadow {
    --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);
}

.drop-shadow-lg {
    --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
    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);
}

.drop-shadow-md {
    --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);
}

.grayscale {
    --tw-grayscale: grayscale(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);
}

.invert {
    --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);
}

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

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

.backdrop-blur-\[1px\] {
    --tw-backdrop-blur: blur(1px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-\[2px\] {
    --tw-backdrop-blur: blur(2px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-md {
    --tw-backdrop-blur: blur(12px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

.backdrop-blur-sm {
    --tw-backdrop-blur: blur(4px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}

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

.\!transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter !important;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter !important;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter !important;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1) !important;
    transition-duration: 150ms !important;
}

.transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-\[left\2c right\2c width\] {
    transition-property: left,right,width;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-\[margin\2c opa\] {
    transition-property: margin,opa;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-\[width\] {
    transition-property: width;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

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

.transition-colors {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.transition-none {
    transition-property: none;
}

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

.transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

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

.duration-1000 {
    transition-duration: 1000ms;
}

.duration-150 {
    transition-duration: 150ms;
}

.duration-200 {
    transition-duration: 200ms;
}

.duration-300 {
    transition-duration: 300ms;
}

.duration-500 {
    transition-duration: 500ms;
}

.duration-700 {
    transition-duration: 700ms;
}

.duration-base-motion {
    transition-duration: 220ms;
}

.duration-deliberate {
    transition-duration: 320ms;
}

.duration-instant {
    transition-duration: 80ms;
}

.duration-quick {
    transition-duration: 150ms;
}

.ease-in-out {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-linear {
    transition-timing-function: linear;
}

.ease-out {
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.ease-out-expo {
    transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes enter {

    from {
        opacity: var(--tw-enter-opacity, 1);
        transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0));
    }
}

@keyframes exit {

    to {
        opacity: var(--tw-exit-opacity, 1);
        transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0));
    }
}

.animate-in {
    animation-name: enter;
    animation-duration: 150ms;
    --tw-enter-opacity: initial;
    --tw-enter-scale: initial;
    --tw-enter-rotate: initial;
    --tw-enter-translate-x: initial;
    --tw-enter-translate-y: initial;
}

.fade-in {
    --tw-enter-opacity: 0;
}

.fade-in-0 {
    --tw-enter-opacity: 0;
}

.fade-in-80 {
    --tw-enter-opacity: 0.8;
}

.zoom-in {
    --tw-enter-scale: 0;
}

.zoom-in-95 {
    --tw-enter-scale: .95;
}

.zoom-out {
    --tw-exit-scale: 0;
}

.slide-in-from-bottom-1 {
    --tw-enter-translate-y: 0.25rem;
}

.slide-in-from-bottom-2 {
    --tw-enter-translate-y: 0.5rem;
}

.slide-in-from-bottom-4 {
    --tw-enter-translate-y: 1rem;
}

.slide-in-from-top-1 {
    --tw-enter-translate-y: -0.25rem;
}

.slide-in-from-top-2 {
    --tw-enter-translate-y: -0.5rem;
}

.duration-1000 {
    animation-duration: 1000ms;
}

.duration-150 {
    animation-duration: 150ms;
}

.duration-200 {
    animation-duration: 200ms;
}

.duration-300 {
    animation-duration: 300ms;
}

.duration-500 {
    animation-duration: 500ms;
}

.duration-700 {
    animation-duration: 700ms;
}

.duration-base-motion {
    animation-duration: 220ms;
}

.duration-deliberate {
    animation-duration: 320ms;
}

.duration-instant {
    animation-duration: 80ms;
}

.duration-quick {
    animation-duration: 150ms;
}

.ease-in-out {
    animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-linear {
    animation-timing-function: linear;
}

.ease-out {
    animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.ease-out-expo {
    animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

.running {
    animation-play-state: running;
}

.paused {
    animation-play-state: paused;
}

/* Hide scrollbar for Chrome, Safari and Opera */

.scrollbar-hide::-webkit-scrollbar {
    display: none;
  }

/* Hide scrollbar for IE, Edge and Firefox */

.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

/* ─────────────────────────────────────────────────────
     NVS v2 Status Chips — solid, saturated, confident.
     Default style for ALL status indicators (KPI cards,
     pills, badges). Color is the signal — never mute it.
     Compact sizing keeps numbers/text the hero.
     ───────────────────────────────────────────────────── */

.nvs-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 0.25rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: 0.05em;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.nvs-chip-lg {
    display: inline-flex;
    align-items: center;
    border-radius: 9999px;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: 0.04em;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Status chip colour utilities. Always solid + saturated + white text.
     Use !important on color so they win over shadcn Badge variants
     (which set text-primary-foreground / text-secondary-foreground). */

.nvs-chip-positive { background-color: hsl(var(--nvs-positive)) !important; color: #fff !important; border-color: transparent !important; }

.nvs-chip-monitor  { background-color: hsl(var(--nvs-monitor))  !important; color: #fff !important; border-color: transparent !important; }

.nvs-chip-negative { background-color: hsl(var(--nvs-negative)) !important; color: #fff !important; border-color: transparent !important; }

.nvs-chip-neutral  { background-color: hsl(var(--nvs-neutral-chip, 220 9% 38%)) !important; color: #fff !important; border-color: transparent !important; }

.nvs-chip-brand    { background-color: hsl(var(--nvs-orange))   !important; color: #fff !important; border-color: transparent !important; }

/* ─────────────────────────────────────────────────────
     NVS Cost-Class tokens — used by estimating tree dots,
     CostClassBadge, M/L/P/SC subtotal headers. Saturated
     bg for dot variant; soft tint + readable text for chip
     variant (matches existing CostClassBadge contract).
     ───────────────────────────────────────────────────── */

.nvs-class-material    { background-color: hsl(var(--class-material)); }

.nvs-class-labour      { background-color: hsl(var(--class-labour)); }

.nvs-class-plant       { background-color: hsl(var(--class-plant)); }

.nvs-class-subcontract { background-color: hsl(var(--class-subcontract)); }

.nvs-class-assembly    { background-color: hsl(265 55% 58%); }

.nvs-class-chip-material {
    border-width: 1px;
}

@media print {
  .daily-report-section .nvs-class-chip-material {
    border-color: #ddd;
  }
}

.nvs-class-chip-material    { background-color: hsl(152 55% 42% / 0.12); color: hsl(152 55% 28%); border-color: hsl(152 55% 42% / 0.30); }

.nvs-class-chip-labour {
    border-width: 1px;
}

@media print {
  .daily-report-section .nvs-class-chip-labour {
    border-color: #ddd;
  }
}

.nvs-class-chip-labour      { background-color: hsl(217 70% 50% / 0.12); color: hsl(217 70% 38%); border-color: hsl(217 70% 50% / 0.30); }

.nvs-class-chip-plant {
    border-width: 1px;
}

@media print {
  .daily-report-section .nvs-class-chip-plant {
    border-color: #ddd;
  }
}

.nvs-class-chip-plant       { background-color: hsl(38 85% 48% / 0.14); color: hsl(38 85% 32%); border-color: hsl(38 85% 48% / 0.30); }

.nvs-class-chip-subcontract {
    border-width: 1px;
}

@media print {
  .daily-report-section .nvs-class-chip-subcontract {
    border-color: #ddd;
  }
}

.nvs-class-chip-subcontract { background-color: hsl(270 50% 52% / 0.12); color: hsl(270 50% 38%); border-color: hsl(270 50% 52% / 0.30); }

.nvs-class-chip-other {
    border-width: 1px;
    border-color: hsl(var(--border));
    background-color: hsl(var(--muted));
    color: hsl(var(--muted-foreground));
}

@media print {
  .daily-report-section .nvs-class-chip-other {
    border-color: #ddd;
  }
}

.dark .nvs-class-chip-material    { color: hsl(152 55% 70%); }

.dark .nvs-class-chip-labour      { color: hsl(217 70% 72%); }

.dark .nvs-class-chip-plant       { color: hsl(38 85% 70%); }

.dark .nvs-class-chip-subcontract { color: hsl(270 50% 75%); }

.dark .nvs-class-chip-assembly    { color: hsl(265 55% 75%); }

/* ─────────────────────────────────────────────────────
     NVS Splash — magnitude highlight on KPI headlines.
     MUST stay readable in BOTH light and dark mode.
     Light: soft peach bg + near-black text.
     Dark : LIGHT peach bg + near-black text (NOT a dark
            tint — we lift the surface so black text reads).
     Use this instead of bg-[hsl(var(--nvs-orange)/0.28)].
     ───────────────────────────────────────────────────── */

.nvs-splash {
     background-color: hsl(22 95% 75%);   /* warm peach — clearly visible in light mode */
     color: #0a0a0a;
     padding: 0.125rem 0.5rem;
     border-radius: 0.375rem;
     font-variant-numeric: tabular-nums;
     font-weight: 600;
     display: inline-block;
     line-height: 1.2;
   }

/* Dark mode: lift the peach BRIGHTER so black text pops against dark surfaces. */

.dark .nvs-splash {
     background-color: hsl(28 100% 72%);  /* vivid peach-orange on dark */
     color: #0a0a0a;
   }

/* ─────────────────────────────────────────────────────
      Legacy splash auto-heal.
      Older code uses raw `bg-[hsl(var(--nvs-orange)/0.28)]`
      with black/dark text. In dark mode that resolves to a
      muddy burnt-orange that kills contrast. We globally
      retarget those exact utility classes in BOTH modes to
      the vivid peach so every legacy usage heals without
      a per-page sweep.
      ───────────────────────────────────────────────────── */

.bg-\[hsl\(var\(--nvs-orange\)\/0\.28\)\] {
     background-color: hsl(22 95% 75%) !important;
     color: #0a0a0a !important;
   }

.dark .bg-\[hsl\(var\(--nvs-orange\)\/0\.28\)\],
   .dark .bg-\[hsl\(var\(--nvs-orange\)\/0\.15\)\],
   .dark .bg-\[hsl\(var\(--nvs-orange\)\/0\.10\)\] {
     background-color: hsl(28 100% 72%) !important;
     color: #0a0a0a !important;
   }

/* ─────────────────────────────────────────────────────
     NVS Selectable Card — canonical selected state.
     Use on any clickable KPI / filter card. Pair with
     .nvs-card-selected when the card is the active filter.
     The ring + 3px inset rail makes the active card
     unmistakable to a first-time user.
     ───────────────────────────────────────────────────── */

.nvs-card-selectable {
    border-radius: calc(var(--radius) - 2px);
    border-width: 1px;
    border-color: hsl(var(--nvs-line));
    background-color: hsl(var(--nvs-card));
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

@media print {
  .daily-report-section .nvs-card-selectable {
    border-color: #ddd;
  }
}

.nvs-card-selectable:hover {
    border-color: hsl(var(--nvs-orange));
  }

.nvs-card-selected {
    border-color: hsl(var(--nvs-orange)) !important;
    box-shadow:
      inset 3px 0 0 hsl(var(--nvs-orange)),
      0 0 0 1.5px hsl(var(--nvs-orange));
  }

.\[animation-delay\:-0\.15s\] {
    animation-delay: -0.15s;
}

.\[animation-delay\:-0\.3s\] {
    animation-delay: -0.3s;
}

.\[column-fill\:_balance\] {
    -moz-column-fill: balance;
         column-fill: balance;
}

.\[scrollbar-width\:none\] {
    scrollbar-width: none;
}

/* Definition of the design system. All colors, gradients, fonts, etc should be defined here. 
All colors MUST be HSL.
*/

/* Estimate table enhancements */

.estimate-row-hover {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 200ms;
    animation-duration: 200ms;
}

.estimate-row-hover:hover {
    background-color: hsl(var(--accent) / 0.5);
    --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);
}

.estimate-sticky-shadow {
    transition-property: box-shadow;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
    animation-duration: 300ms;
}

/* World-class estimate table patterns */

.estimate-table-row {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}

.estimate-table-row:hover {
    background-color: hsl(var(--accent) / 0.3);
}

.estimate-table-row:nth-child(even) {
    background-color: hsl(var(--muted) / 0.2);
}

.estimate-money-cluster {
    border-left-width: 2px;
    border-right-width: 2px;
    border-color: hsl(var(--border) / 0.5);
}

.estimate-hierarchy-indent-1 {
    margin-left: 1.5rem;
    border-left-width: 2px;
    border-color: hsl(var(--muted-foreground) / 0.1);
    padding-left: 0.5rem;
}

.estimate-hierarchy-indent-2 {
    margin-left: 3rem;
    border-left-width: 2px;
    border-color: hsl(var(--muted-foreground) / 0.1);
    padding-left: 0.5rem;
}

.estimate-hierarchy-indent-3 {
    margin-left: 4.5rem;
    border-left-width: 2px;
    border-color: hsl(var(--muted-foreground) / 0.1);
    padding-left: 0.5rem;
}

/* Print styles for reports */

@media print {
  body {
    background: white !important;
    color: black !important;
    font-size: 11pt !important;
  }

  .no-print,
  .daily-report-actions,
  .daily-report-analytics-toggle,
  [data-sidebar],
  nav,
  aside,
  .sidebar,
  header:not(.report-header) {
    display: none !important;
  }

  .print-preview {
    box-shadow: none !important;
    border: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .print-content,
  .daily-report-section {
    page-break-inside: avoid;
    -moz-column-break-inside: avoid;
         break-inside: avoid;
  }

  .print-content table {
    page-break-inside: auto;
  }

  .print-content tr {
    page-break-inside: avoid;
    page-break-after: auto;
  }

  /* Ensure report content uses full width */
  .report-container,
  .daily-report-container {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px !important;
  }

  /* Single column for print */
  .daily-report-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  /* Clean card borders for print */
  .daily-report-section .border {
    border-color: #ddd !important;
  }

  /* Page margins */
  @page {
    margin: 1.5cm;
  }
}

/* ═══════════════════════════════════════════════════════
   Progress Dashboard — Print Styles
   ═══════════════════════════════════════════════════════ */

@media print {
  .progress-dashboard-print .no-print,
  .progress-dashboard-print [role="tablist"],
  .progress-dashboard-print button:not(.print-visible) {
    display: none !important;
  }

  .progress-dashboard-print {
    max-width: 100% !important;
  }

  .progress-dashboard-print .grid {
    grid-template-columns: 1fr !important;
  }

  .progress-dashboard-print [data-state="closed"] {
    display: block !important;
  }

  .progress-dashboard-print [data-state="closed"] > [data-radix-collapsible-content] {
    display: block !important;
  }
}

/* ═══════════════════════════════════════════════════════
   Daily Report — Print Styles
   ═══════════════════════════════════════════════════════ */

@media print {
  /* Hide non-printable elements */
  .no-print,
  .daily-report-actions,
  .daily-report-analytics-toggle,
  [data-radix-popper-content-wrapper],
  .toaster-group,
  nav,
  aside {
    display: none !important;
  }

  /* Full-width single-column layout */
  .daily-report-container {
    padding: 0 !important;
  }

  .daily-report-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  /* Remove shadows and borders for clean print */
  .daily-report-container [class*="shadow"] {
    box-shadow: none !important;
  }

  /* Ensure page breaks don't cut sections */
  .daily-report-grid > * {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
    page-break-inside: avoid;
  }

  /* Clean header */
  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

/* Accessibility: Reduced Motion */

.reduce-motion,
.reduce-motion * {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}

/* Accessibility: High Contrast */

.high-contrast {
  --foreground: 0 0% 0%;
  --card-foreground: 0 0% 0%;
  --popover-foreground: 0 0% 0%;
  --muted-foreground: 0 0% 20%;
  --border: 0 0% 30%;
}

.dark.high-contrast {
  --foreground: 0 0% 100%;
  --card-foreground: 0 0% 100%;
  --popover-foreground: 0 0% 100%;
  --muted-foreground: 0 0% 85%;
  --border: 0 0% 70%;
}

/* Phase C: Cross-splitter row hover sync — when a row is hovered in
   either the task list or the chart body, the matching row in the
   opposite panel is highlighted via a shared data-task-row-id /
   data-task-chart-row-id attribute. */

[data-task-row-id]:hover ~ * [data-task-chart-row-id],
[data-task-chart-row-id]:hover {
  /* fallback handled via JS below for true cross-pane sync */
}

/* Subtle resting drop-shadow on Gantt bars (lifts them off the grid).
   The existing hover:shadow-md remains for the lift-on-hover effect. */

.gantt-bar-shadow {
  box-shadow: 0 1px 2px hsl(var(--foreground) / 0.08);
}

/* ----------------------------------------------------------------------
   Estimate Tree Table — keyboard-driven active row marker
   Pattern matches Excel / Sage Estimating / RIB CostX / Procore:
     1. High-contrast 2px outline around the whole row (the "active cell"
        equivalent — WCAG 2.4.13 compliant, can't be lost on any background).
     2. Stronger primary-tint row fill (~14% alpha) — visibly different from
        the neutral hover state (~4–6% grey), so focus ≠ hover.
     3. A 4px solid primary left rail painted on every cell (not just the
        first td) so per-cell backgrounds (zebra, group bands, status
        tints) can never overpaint it.
   ---------------------------------------------------------------------- */

tr[data-row-active="true"] > td {
  /* OPAQUE fill (not alpha) so it fully replaces white item rows AND the
     slate cost-code/sub-code bands — selection reads identically on any
     row type. Solid brand frame on top. */
  background-color: hsl(var(--row-active-bg)) !important;
  border-top: 2px solid hsl(var(--row-active-border)) !important;
  border-bottom: 2px solid hsl(var(--row-active-border)) !important;
}

tr[data-row-active="true"] > td:first-child {
  border-left: 4px solid hsl(var(--row-active-border)) !important;
  position: relative;
  z-index: 1;
}

tr[data-row-active="true"] > td:last-child {
  border-right: 2px solid hsl(var(--row-active-border)) !important;
}

/* Keyboard-nav hover suppression. Browsers don't recompute :hover during
   programmatic (keyboard) scroll, so the row under a stationary cursor
   keeps a "stuck" hover background — a ghost that isn't where the
   keyboard cursor is. While `data-kbd-nav` is set (cleared on the next
   real mouse move), force hovered ITEM rows back to the resting field
   colour. Scoped to `[data-cost-item-id]` so cost-code bands are
   unaffected; the active row still wins via its `> td !important`. */

[data-kbd-nav="true"] tr[data-cost-item-id]:not([data-row-active="true"]):hover,
[data-kbd-nav="true"] tr[data-cost-item-id]:not([data-row-active="true"]) td:hover {
  /* Editable cells (description / qty / rate) carry their OWN
     `hover:bg-accent/*`, so the stuck-hover ghost shows on just those
     columns. Suppress BOTH the row-level and cell-level hover while
     keyboard-navigating; exclude the active row so its highlight stands.
     Cleared the instant the mouse moves (data-kbd-nav removed). */
  background-color: hsl(var(--cost-item-row-even)) !important;
}

/* THE actual keyboard-ghost fix. The selected-row background is painted at
   the CELL level (`tr[data-row-active] > td { background !important }`).
   Several editable cells carry `transition-colors`, so when the marker
   moves OFF a row that row's border vanishes instantly (attribute gone)
   but its cells ANIMATE the indigo background back out over ~150ms — a
   one-row-lagging ghost, only on the transitioning columns, no frame,
   tracking the cursor by one row opposite the travel direction. Holding
   ↑/↓ keeps the previous row perpetually mid-fade.
   Fix: remove background-color from the transition on every item-row
   cell (and their children) so the active fill snaps on AND off
   instantly. Other transitions (text/border/shadow) are kept. Robust to
   whichever cell/sub-component set the transition. Cost-code bands
   (`data-cost-centre-id`) are intentionally not matched. */

tr[data-cost-item-id] > td,
tr[data-cost-item-id] > td * {
  transition-property: color, border-color, box-shadow, opacity, transform !important;
}

/* ----------------------------------------------------------------------
   Estimate Focus Mode — make the customer app shell <main> behave as a
   non-scrolling flex container so the estimate page can claim the full
   visible viewport height. Without this, <main>'s default
   overflow-y-auto turns h-full into "as tall as content" and the table
   never reaches the bottom of the screen.
   ---------------------------------------------------------------------- */

/* Focus Mode: only trim outer page padding so the table has more room.
   Do NOT change overflow or display — the table uses natural page scroll
   exactly like normal mode. */

body[data-estimate-focus="on"] main {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.file\:border-0::file-selector-button {
    border-width: 0px;
}

.file\:bg-transparent::file-selector-button {
    background-color: transparent;
}

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

.file\:font-medium::file-selector-button {
    font-weight: 500;
}

.file\:text-foreground::file-selector-button {
    color: hsl(var(--foreground));
}

.placeholder\:font-sans::-moz-placeholder {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
}

.placeholder\:font-sans::placeholder {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
}

.placeholder\:italic::-moz-placeholder {
    font-style: italic;
}

.placeholder\:italic::placeholder {
    font-style: italic;
}

.placeholder\:not-italic::-moz-placeholder {
    font-style: normal;
}

.placeholder\:not-italic::placeholder {
    font-style: normal;
}

.placeholder\:text-muted-foreground::-moz-placeholder {
    color: hsl(var(--muted-foreground));
}

.placeholder\:text-muted-foreground::placeholder {
    color: hsl(var(--muted-foreground));
}

.placeholder\:text-muted-foreground\/40::-moz-placeholder {
    color: hsl(var(--muted-foreground) / 0.4);
}

.placeholder\:text-muted-foreground\/40::placeholder {
    color: hsl(var(--muted-foreground) / 0.4);
}

.placeholder\:text-muted-foreground\/50::-moz-placeholder {
    color: hsl(var(--muted-foreground) / 0.5);
}

.placeholder\:text-muted-foreground\/50::placeholder {
    color: hsl(var(--muted-foreground) / 0.5);
}

.before\:absolute::before {
    content: var(--tw-content);
    position: absolute;
}

.before\:bottom-2::before {
    content: var(--tw-content);
    bottom: 0.5rem;
}

.before\:left-2::before {
    content: var(--tw-content);
    left: 0.5rem;
}

.before\:top-2::before {
    content: var(--tw-content);
    top: 0.5rem;
}

.before\:w-px::before {
    content: var(--tw-content);
    width: 1px;
}

.before\:bg-border::before {
    content: var(--tw-content);
    background-color: hsl(var(--border));
}

.after\:absolute::after {
    content: var(--tw-content);
    position: absolute;
}

.after\:-inset-2::after {
    content: var(--tw-content);
    inset: -0.5rem;
}

.after\:inset-y-0::after {
    content: var(--tw-content);
    top: 0px;
    bottom: 0px;
}

.after\:bottom-0\.5::after {
    content: var(--tw-content);
    bottom: 0.125rem;
}

.after\:left-1\/2::after {
    content: var(--tw-content);
    left: 50%;
}

.after\:right-0\.5::after {
    content: var(--tw-content);
    right: 0.125rem;
}

.after\:top-0\.5::after {
    content: var(--tw-content);
    top: 0.125rem;
}

.after\:h-1::after {
    content: var(--tw-content);
    height: 0.25rem;
}

.after\:h-1\.5::after {
    content: var(--tw-content);
    height: 0.375rem;
}

.after\:w-1::after {
    content: var(--tw-content);
    width: 0.25rem;
}

.after\:w-1\.5::after {
    content: var(--tw-content);
    width: 0.375rem;
}

.after\:w-\[2px\]::after {
    content: var(--tw-content);
    width: 2px;
}

.after\:-translate-x-1\/2::after {
    content: var(--tw-content);
    --tw-translate-x: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.after\:rounded-full::after {
    content: var(--tw-content);
    border-radius: 9999px;
}

.after\:bg-\[hsl\(var\(--warning\)\)\]::after {
    content: var(--tw-content);
    background-color: hsl(var(--warning));
}

.after\:bg-primary::after {
    content: var(--tw-content);
    background-color: hsl(var(--primary));
}

.first\:rounded-l-lg:first-child {
    border-top-left-radius: var(--radius);
    border-bottom-left-radius: var(--radius);
}

.first\:rounded-l-md:first-child {
    border-top-left-radius: calc(var(--radius) - 2px);
    border-bottom-left-radius: calc(var(--radius) - 2px);
}

.first\:border-l:first-child {
    border-left-width: 1px;
}

.first\:border-t-0:first-child {
    border-top-width: 0px;
}

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

.last\:rounded-r-lg:last-child {
    border-top-right-radius: var(--radius);
    border-bottom-right-radius: var(--radius);
}

.last\:rounded-r-md:last-child {
    border-top-right-radius: calc(var(--radius) - 2px);
    border-bottom-right-radius: calc(var(--radius) - 2px);
}

.last\:border-0:last-child {
    border-width: 0px;
}

.last\:border-b-0:last-child {
    border-bottom-width: 0px;
}

.last\:border-r-0:last-child {
    border-right-width: 0px;
}

.last\:pb-0:last-child {
    padding-bottom: 0px;
}

.focus-within\:relative:focus-within {
    position: relative;
}

.focus-within\:z-20:focus-within {
    z-index: 20;
}

.focus-within\:border-ring:focus-within {
    border-color: hsl(var(--ring));
}

.focus-within\:bg-accent\/30:focus-within {
    background-color: hsl(var(--accent) / 0.3);
}

.focus-within\:ring-2:focus-within {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-within\:ring-ring:focus-within {
    --tw-ring-color: hsl(var(--ring));
}

.hover\:h-\[5px\]:hover {
    height: 5px;
}

.hover\:-translate-y-0\.5:hover {
    --tw-translate-y: -0.125rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

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

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

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

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

.hover\:scale-\[1\.01\]:hover {
    --tw-scale-x: 1.01;
    --tw-scale-y: 1.01;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-\[1\.02\]:hover {
    --tw-scale-x: 1.02;
    --tw-scale-y: 1.02;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-\[1\.03\]:hover {
    --tw-scale-x: 1.03;
    --tw-scale-y: 1.03;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:border-solid:hover {
    border-style: solid;
}

.hover\:border-\[hsl\(var\(--nvs-line\)\)\]:hover {
    border-color: hsl(var(--nvs-line));
}

.hover\:border-\[hsl\(var\(--nvs-monitor\)\)\]:hover {
    border-color: hsl(var(--nvs-monitor));
}

.hover\:border-\[hsl\(var\(--nvs-monitor\)\/0\.5\)\]:hover {
    border-color: hsl(var(--nvs-monitor)/0.5);
}

.hover\:border-\[hsl\(var\(--nvs-negative\)\)\]:hover {
    border-color: hsl(var(--nvs-negative));
}

.hover\:border-\[hsl\(var\(--nvs-negative\)\/0\.5\)\]:hover {
    border-color: hsl(var(--nvs-negative)/0.5);
}

.hover\:border-\[hsl\(var\(--nvs-orange\)\)\]:hover {
    border-color: hsl(var(--nvs-orange));
}

.hover\:border-\[hsl\(var\(--nvs-positive\)\)\]:hover {
    border-color: hsl(var(--nvs-positive));
}

.hover\:border-\[hsl\(var\(--nvs-positive\)\/0\.5\)\]:hover {
    border-color: hsl(var(--nvs-positive)/0.5);
}

.hover\:border-accent:hover {
    border-color: hsl(var(--accent));
}

.hover\:border-accent-foreground\/10:hover {
    border-color: hsl(var(--accent-foreground) / 0.1);
}

.hover\:border-accent-foreground\/20:hover {
    border-color: hsl(var(--accent-foreground) / 0.2);
}

.hover\:border-amber-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}

.hover\:border-amber-400:hover {
    --tw-border-opacity: 1;
    border-color: rgb(251 191 36 / var(--tw-border-opacity, 1));
}

.hover\:border-amber-500\/30:hover {
    border-color: rgb(245 158 11 / 0.3);
}

.hover\:border-blue-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(147 197 253 / var(--tw-border-opacity, 1));
}

.hover\:border-border:hover {
    border-color: hsl(var(--border));
}

.hover\:border-border\/80:hover {
    border-color: hsl(var(--border) / 0.8);
}

.hover\:border-destructive\/30:hover {
    border-color: hsl(var(--destructive) / 0.3);
}

.hover\:border-destructive\/40:hover {
    border-color: hsl(var(--destructive) / 0.4);
}

.hover\:border-emerald-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(110 231 183 / var(--tw-border-opacity, 1));
}

.hover\:border-emerald-400:hover {
    --tw-border-opacity: 1;
    border-color: rgb(52 211 153 / var(--tw-border-opacity, 1));
}

.hover\:border-foreground\/20:hover {
    border-color: hsl(var(--foreground) / 0.2);
}

.hover\:border-foreground\/30:hover {
    border-color: hsl(var(--foreground) / 0.3);
}

.hover\:border-info\/40:hover {
    border-color: hsl(var(--info) / 0.4);
}

.hover\:border-input:hover {
    border-color: hsl(var(--input));
}

.hover\:border-muted-foreground\/30:hover {
    border-color: hsl(var(--muted-foreground) / 0.3);
}

.hover\:border-muted-foreground\/40:hover {
    border-color: hsl(var(--muted-foreground) / 0.4);
}

.hover\:border-muted-foreground\/50:hover {
    border-color: hsl(var(--muted-foreground) / 0.5);
}

.hover\:border-primary:hover {
    border-color: hsl(var(--primary));
}

.hover\:border-primary\/30:hover {
    border-color: hsl(var(--primary) / 0.3);
}

.hover\:border-primary\/40:hover {
    border-color: hsl(var(--primary) / 0.4);
}

.hover\:border-primary\/50:hover {
    border-color: hsl(var(--primary) / 0.5);
}

.hover\:border-primary\/60:hover {
    border-color: hsl(var(--primary) / 0.6);
}

.hover\:border-red-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(252 165 165 / var(--tw-border-opacity, 1));
}

.hover\:border-red-400:hover {
    --tw-border-opacity: 1;
    border-color: rgb(248 113 113 / var(--tw-border-opacity, 1));
}

.hover\:border-ring:hover {
    border-color: hsl(var(--ring));
}

.hover\:border-sky-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(125 211 252 / var(--tw-border-opacity, 1));
}

.hover\:border-slate-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}

.hover\:border-success\/40:hover {
    border-color: hsl(var(--success) / 0.4);
}

.hover\:border-violet-300:hover {
    --tw-border-opacity: 1;
    border-color: rgb(196 181 253 / var(--tw-border-opacity, 1));
}

.hover\:border-warning\/40:hover {
    border-color: hsl(var(--warning) / 0.4);
}

.hover\:border-l-primary:hover {
    border-left-color: hsl(var(--primary));
}

.hover\:border-opacity-100:hover {
    --tw-border-opacity: 1;
}

.hover\:\!bg-\[hsl\(var\(--nvs-orange\)\/0\.10\)\]:hover {
    background-color: hsl(var(--nvs-orange)/0.10) !important;
}

.hover\:bg-\[hsl\(var\(--cost-item-hover\)\)\]:hover {
    background-color: hsl(var(--cost-item-hover));
}

.hover\:bg-\[hsl\(var\(--danger\)\)\]\/35:hover {
    background-color: hsl(var(--danger) / 0.35);
}

.hover\:bg-\[hsl\(var\(--danger-soft\)\)\]:hover {
    background-color: hsl(var(--danger-soft));
}

.hover\:bg-\[hsl\(var\(--danger-soft\)\)\]\/60:hover {
    background-color: hsl(var(--danger-soft) / 0.6);
}

.hover\:bg-\[hsl\(var\(--danger-soft\)\)\]\/70:hover {
    background-color: hsl(var(--danger-soft) / 0.7);
}

.hover\:bg-\[hsl\(var\(--info\)\)\]\/35:hover {
    background-color: hsl(var(--info) / 0.35);
}

.hover\:bg-\[hsl\(var\(--info-soft\)\)\]:hover {
    background-color: hsl(var(--info-soft));
}

.hover\:bg-\[hsl\(var\(--nvs-bg\)\)\]:hover {
    background-color: hsl(var(--nvs-bg));
}

.hover\:bg-\[hsl\(var\(--nvs-line\)\/0\.6\)\]:hover {
    background-color: hsl(var(--nvs-line)/0.6);
}

.hover\:bg-\[hsl\(var\(--nvs-monitor\)\/0\.12\)\]:hover {
    background-color: hsl(var(--nvs-monitor)/0.12);
}

.hover\:bg-\[hsl\(var\(--nvs-negative\)\)\]\/90:hover {
    background-color: hsl(var(--nvs-negative) / 0.9);
}

.hover\:bg-\[hsl\(var\(--nvs-orange\)\)\]\/90:hover {
    background-color: hsl(var(--nvs-orange) / 0.9);
}

.hover\:bg-\[hsl\(var\(--nvs-page\)\)\]:hover {
    background-color: hsl(var(--nvs-page));
}

.hover\:bg-\[hsl\(var\(--nvs-positive\)\)\]\/90:hover {
    background-color: hsl(var(--nvs-positive) / 0.9);
}

.hover\:bg-\[hsl\(var\(--score-watch\)\)\]\/25:hover {
    background-color: hsl(var(--score-watch) / 0.25);
}

.hover\:bg-\[hsl\(var\(--success-soft\)\)\]:hover {
    background-color: hsl(var(--success-soft));
}

.hover\:bg-\[hsl\(var\(--warning\)\)\]\/35:hover {
    background-color: hsl(var(--warning) / 0.35);
}

.hover\:bg-\[hsl\(var\(--warning\)\)\]\/90:hover {
    background-color: hsl(var(--warning) / 0.9);
}

.hover\:bg-\[hsl\(var\(--warning-soft\)\)\]:hover {
    background-color: hsl(var(--warning-soft));
}

.hover\:bg-accent:hover {
    background-color: hsl(var(--accent));
}

.hover\:bg-accent\/30:hover {
    background-color: hsl(var(--accent) / 0.3);
}

.hover\:bg-accent\/40:hover {
    background-color: hsl(var(--accent) / 0.4);
}

.hover\:bg-accent\/5:hover {
    background-color: hsl(var(--accent) / 0.05);
}

.hover\:bg-accent\/50:hover {
    background-color: hsl(var(--accent) / 0.5);
}

.hover\:bg-amber-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}

.hover\:bg-amber-100\/80:hover {
    background-color: rgb(254 243 199 / 0.8);
}

.hover\:bg-amber-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(253 230 138 / var(--tw-bg-opacity, 1));
}

.hover\:bg-amber-200\/50:hover {
    background-color: rgb(253 230 138 / 0.5);
}

.hover\:bg-amber-400:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(251 191 36 / var(--tw-bg-opacity, 1));
}

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

.hover\:bg-amber-500\/10:hover {
    background-color: rgb(245 158 11 / 0.1);
}

.hover\:bg-amber-500\/15:hover {
    background-color: rgb(245 158 11 / 0.15);
}

.hover\:bg-amber-500\/20:hover {
    background-color: rgb(245 158 11 / 0.2);
}

.hover\:bg-amber-500\/25:hover {
    background-color: rgb(245 158 11 / 0.25);
}

.hover\:bg-amber-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}

.hover\:bg-amber-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(180 83 9 / var(--tw-bg-opacity, 1));
}

.hover\:bg-background:hover {
    background-color: hsl(var(--background));
}

.hover\:bg-background\/20:hover {
    background-color: hsl(var(--background) / 0.2);
}

.hover\:bg-background\/60:hover {
    background-color: hsl(var(--background) / 0.6);
}

.hover\:bg-black\/60:hover {
    background-color: rgb(0 0 0 / 0.6);
}

.hover\:bg-black\/70:hover {
    background-color: rgb(0 0 0 / 0.7);
}

.hover\:bg-black\/80:hover {
    background-color: rgb(0 0 0 / 0.8);
}

.hover\:bg-blue-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-100\/80:hover {
    background-color: rgb(219 234 254 / 0.8);
}

.hover\:bg-blue-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(191 219 254 / var(--tw-bg-opacity, 1));
}

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

.hover\:bg-blue-50\/30:hover {
    background-color: rgb(239 246 255 / 0.3);
}

.hover\:bg-blue-500\/10:hover {
    background-color: rgb(59 130 246 / 0.1);
}

.hover\:bg-blue-500\/15:hover {
    background-color: rgb(59 130 246 / 0.15);
}

.hover\:bg-blue-500\/20:hover {
    background-color: rgb(59 130 246 / 0.2);
}

.hover\:bg-blue-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(29 78 216 / var(--tw-bg-opacity, 1));
}

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

.hover\:bg-cyan-500\/15:hover {
    background-color: rgb(6 182 212 / 0.15);
}

.hover\:bg-cyan-500\/20:hover {
    background-color: rgb(6 182 212 / 0.2);
}

.hover\:bg-danger-soft\/60:hover {
    background-color: hsl(var(--danger-soft) / 0.6);
}

.hover\:bg-danger-soft\/80:hover {
    background-color: hsl(var(--danger-soft) / 0.8);
}

.hover\:bg-destructive:hover {
    background-color: hsl(var(--destructive));
}

.hover\:bg-destructive\/10:hover {
    background-color: hsl(var(--destructive) / 0.1);
}

.hover\:bg-destructive\/15:hover {
    background-color: hsl(var(--destructive) / 0.15);
}

.hover\:bg-destructive\/20:hover {
    background-color: hsl(var(--destructive) / 0.2);
}

.hover\:bg-destructive\/5:hover {
    background-color: hsl(var(--destructive) / 0.05);
}

.hover\:bg-destructive\/80:hover {
    background-color: hsl(var(--destructive) / 0.8);
}

.hover\:bg-destructive\/90:hover {
    background-color: hsl(var(--destructive) / 0.9);
}

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

.hover\:bg-emerald-100\/80:hover {
    background-color: rgb(209 250 229 / 0.8);
}

.hover\:bg-emerald-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}

.hover\:bg-emerald-500\/10:hover {
    background-color: rgb(16 185 129 / 0.1);
}

.hover\:bg-emerald-500\/15:hover {
    background-color: rgb(16 185 129 / 0.15);
}

.hover\:bg-emerald-500\/20:hover {
    background-color: rgb(16 185 129 / 0.2);
}

.hover\:bg-emerald-500\/25:hover {
    background-color: rgb(16 185 129 / 0.25);
}

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

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

.hover\:bg-foreground\/10:hover {
    background-color: hsl(var(--foreground) / 0.1);
}

.hover\:bg-gray-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-100:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(220 252 231 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(187 247 208 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(240 253 244 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-50\/30:hover {
    background-color: rgb(240 253 244 / 0.3);
}

.hover\:bg-green-500\/20:hover {
    background-color: rgb(34 197 94 / 0.2);
}

.hover\:bg-green-600:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-700:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}

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

.hover\:bg-info\/15:hover {
    background-color: hsl(var(--info) / 0.15);
}

.hover\:bg-muted:hover {
    background-color: hsl(var(--muted));
}

.hover\:bg-muted-foreground\/20:hover {
    background-color: hsl(var(--muted-foreground) / 0.2);
}

.hover\:bg-muted\/10:hover {
    background-color: hsl(var(--muted) / 0.1);
}

.hover\:bg-muted\/20:hover {
    background-color: hsl(var(--muted) / 0.2);
}

.hover\:bg-muted\/30:hover {
    background-color: hsl(var(--muted) / 0.3);
}

.hover\:bg-muted\/40:hover {
    background-color: hsl(var(--muted) / 0.4);
}

.hover\:bg-muted\/50:hover {
    background-color: hsl(var(--muted) / 0.5);
}

.hover\:bg-muted\/60:hover {
    background-color: hsl(var(--muted) / 0.6);
}

.hover\:bg-muted\/70:hover {
    background-color: hsl(var(--muted) / 0.7);
}

.hover\:bg-muted\/80:hover {
    background-color: hsl(var(--muted) / 0.8);
}

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

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

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

.hover\:bg-orange-500\/15:hover {
    background-color: rgb(249 115 22 / 0.15);
}

.hover\:bg-orange-500\/20:hover {
    background-color: rgb(249 115 22 / 0.2);
}

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

.hover\:bg-primary:hover {
    background-color: hsl(var(--primary));
}

.hover\:bg-primary-foreground\/10:hover {
    background-color: hsl(var(--primary-foreground) / 0.1);
}

.hover\:bg-primary-foreground\/20:hover {
    background-color: hsl(var(--primary-foreground) / 0.2);
}

.hover\:bg-primary-foreground\/30:hover {
    background-color: hsl(var(--primary-foreground) / 0.3);
}

.hover\:bg-primary\/10:hover {
    background-color: hsl(var(--primary) / 0.1);
}

.hover\:bg-primary\/15:hover {
    background-color: hsl(var(--primary) / 0.15);
}

.hover\:bg-primary\/20:hover {
    background-color: hsl(var(--primary) / 0.2);
}

.hover\:bg-primary\/25:hover {
    background-color: hsl(var(--primary) / 0.25);
}

.hover\:bg-primary\/40:hover {
    background-color: hsl(var(--primary) / 0.4);
}

.hover\:bg-primary\/5:hover {
    background-color: hsl(var(--primary) / 0.05);
}

.hover\:bg-primary\/80:hover {
    background-color: hsl(var(--primary) / 0.8);
}

.hover\:bg-primary\/90:hover {
    background-color: hsl(var(--primary) / 0.9);
}

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

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

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

.hover\:bg-purple-500\/20:hover {
    background-color: rgb(168 85 247 / 0.2);
}

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

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

.hover\:bg-red-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(254 242 242 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-50\/30:hover {
    background-color: rgb(254 242 242 / 0.3);
}

.hover\:bg-red-500\/25:hover {
    background-color: rgb(239 68 68 / 0.25);
}

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

.hover\:bg-secondary:hover {
    background-color: hsl(var(--secondary));
}

.hover\:bg-secondary\/80:hover {
    background-color: hsl(var(--secondary) / 0.8);
}

.hover\:bg-sidebar-accent:hover {
    background-color: hsl(var(--sidebar-accent));
}

.hover\:bg-sidebar-accent\/50:hover {
    background-color: hsl(var(--sidebar-accent) / 0.5);
}

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

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

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

.hover\:bg-slate-100\/80:hover {
    background-color: rgb(241 245 249 / 0.8);
}

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

.hover\:bg-slate-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.hover\:bg-success-soft\/80:hover {
    background-color: hsl(var(--success-soft) / 0.8);
}

.hover\:bg-success\/15:hover {
    background-color: hsl(var(--success) / 0.15);
}

.hover\:bg-success\/20:hover {
    background-color: hsl(var(--success) / 0.2);
}

.hover\:bg-success\/80:hover {
    background-color: hsl(var(--success) / 0.8);
}

.hover\:bg-success\/90:hover {
    background-color: hsl(var(--success) / 0.9);
}

.hover\:bg-teal-50:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(240 253 250 / var(--tw-bg-opacity, 1));
}

.hover\:bg-teal-500\/15:hover {
    background-color: rgb(20 184 166 / 0.15);
}

.hover\:bg-transparent:hover {
    background-color: transparent;
}

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

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

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

.hover\:bg-warning\/15:hover {
    background-color: hsl(var(--warning) / 0.15);
}

.hover\:bg-warning\/20:hover {
    background-color: hsl(var(--warning) / 0.2);
}

.hover\:bg-warning\/90:hover {
    background-color: hsl(var(--warning) / 0.9);
}

.hover\:bg-white\/10:hover {
    background-color: rgb(255 255 255 / 0.1);
}

.hover\:bg-white\/15:hover {
    background-color: rgb(255 255 255 / 0.15);
}

.hover\:bg-white\/20:hover {
    background-color: rgb(255 255 255 / 0.2);
}

.hover\:bg-white\/30:hover {
    background-color: rgb(255 255 255 / 0.3);
}

.hover\:bg-yellow-200:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(254 240 138 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-500\/10:hover {
    background-color: rgb(234 179 8 / 0.1);
}

.hover\:from-primary\/15:hover {
    --tw-gradient-from: hsl(var(--primary) / 0.15) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-primary\/90:hover {
    --tw-gradient-from: hsl(var(--primary) / 0.9) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:via-primary\/10:hover {
    --tw-gradient-to: hsl(var(--primary) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / 0.1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.hover\:to-primary:hover {
    --tw-gradient-to: hsl(var(--primary)) var(--tw-gradient-to-position);
}

.hover\:to-primary\/15:hover {
    --tw-gradient-to: hsl(var(--primary) / 0.15) var(--tw-gradient-to-position);
}

.hover\:to-primary\/70:hover {
    --tw-gradient-to: hsl(var(--primary) / 0.7) var(--tw-gradient-to-position);
}

.hover\:text-\[hsl\(var\(--hero-foreground\)\)\]:hover {
    color: hsl(var(--hero-foreground));
}

.hover\:text-\[hsl\(var\(--info\)\)\]:hover {
    color: hsl(var(--info));
}

.hover\:text-\[hsl\(var\(--nvs-ink\)\)\]:hover {
    color: hsl(var(--nvs-ink));
}

.hover\:text-\[hsl\(var\(--nvs-orange-glow\)\)\]:hover {
    color: hsl(var(--nvs-orange-glow));
}

.hover\:text-accent-foreground:hover {
    color: hsl(var(--accent-foreground));
}

.hover\:text-amber-300:hover {
    --tw-text-opacity: 1;
    color: rgb(252 211 77 / var(--tw-text-opacity, 1));
}

.hover\:text-amber-400:hover {
    --tw-text-opacity: 1;
    color: rgb(251 191 36 / var(--tw-text-opacity, 1));
}

.hover\:text-amber-800:hover {
    --tw-text-opacity: 1;
    color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}

.hover\:text-amber-900:hover {
    --tw-text-opacity: 1;
    color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-600:hover {
    --tw-text-opacity: 1;
    color: rgb(37 99 235 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-700:hover {
    --tw-text-opacity: 1;
    color: rgb(29 78 216 / var(--tw-text-opacity, 1));
}

.hover\:text-cyan-300:hover {
    --tw-text-opacity: 1;
    color: rgb(103 232 249 / var(--tw-text-opacity, 1));
}

.hover\:text-danger:hover {
    color: hsl(var(--danger));
}

.hover\:text-destructive:hover {
    color: hsl(var(--destructive));
}

.hover\:text-destructive-foreground:hover {
    color: hsl(var(--destructive-foreground));
}

.hover\:text-emerald-600:hover {
    --tw-text-opacity: 1;
    color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}

.hover\:text-emerald-700:hover {
    --tw-text-opacity: 1;
    color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}

.hover\:text-foreground:hover {
    color: hsl(var(--foreground));
}

.hover\:text-foreground\/80:hover {
    color: hsl(var(--foreground) / 0.8);
}

.hover\:text-green-700:hover {
    --tw-text-opacity: 1;
    color: rgb(21 128 61 / var(--tw-text-opacity, 1));
}

.hover\:text-muted-foreground:hover {
    color: hsl(var(--muted-foreground));
}

.hover\:text-orange-600:hover {
    --tw-text-opacity: 1;
    color: rgb(234 88 12 / var(--tw-text-opacity, 1));
}

.hover\:text-orange-700:hover {
    --tw-text-opacity: 1;
    color: rgb(194 65 12 / var(--tw-text-opacity, 1));
}

.hover\:text-primary:hover {
    color: hsl(var(--primary));
}

.hover\:text-primary-foreground:hover {
    color: hsl(var(--primary-foreground));
}

.hover\:text-primary-foreground\/80:hover {
    color: hsl(var(--primary-foreground) / 0.8);
}

.hover\:text-primary\/80:hover {
    color: hsl(var(--primary) / 0.8);
}

.hover\:text-red-400:hover {
    --tw-text-opacity: 1;
    color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}

.hover\:text-red-600:hover {
    --tw-text-opacity: 1;
    color: rgb(220 38 38 / var(--tw-text-opacity, 1));
}

.hover\:text-red-700:hover {
    --tw-text-opacity: 1;
    color: rgb(185 28 28 / var(--tw-text-opacity, 1));
}

.hover\:text-sidebar-accent-foreground:hover {
    color: hsl(var(--sidebar-accent-foreground));
}

.hover\:text-sidebar-foreground:hover {
    color: hsl(var(--sidebar-foreground));
}

.hover\:text-sidebar-foreground\/70:hover {
    color: hsl(var(--sidebar-foreground) / 0.7);
}

.hover\:text-sky-700:hover {
    --tw-text-opacity: 1;
    color: rgb(3 105 161 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-600:hover {
    --tw-text-opacity: 1;
    color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-700:hover {
    --tw-text-opacity: 1;
    color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}

.hover\:text-violet-600:hover {
    --tw-text-opacity: 1;
    color: rgb(124 58 237 / var(--tw-text-opacity, 1));
}

.hover\:text-violet-700:hover {
    --tw-text-opacity: 1;
    color: rgb(109 40 217 / var(--tw-text-opacity, 1));
}

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

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

.hover\:no-underline:hover {
    text-decoration-line: none;
}

.hover\:opacity-100:hover {
    opacity: 1;
}

.hover\:opacity-50:hover {
    opacity: 0.5;
}

.hover\:opacity-70:hover {
    opacity: 0.7;
}

.hover\:opacity-80:hover {
    opacity: 0.8;
}

.hover\:opacity-90:hover {
    opacity: 0.9;
}

.hover\:opacity-95:hover {
    opacity: 0.95;
}

.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover {
    --tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));
    --tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-\[0_12px_40px_-4px_hsl\(var\(--primary\)\/0\.7\)\]:hover {
    --tw-shadow: 0 12px 40px -4px hsl(var(--primary)/0.7);
    --tw-shadow-colored: 0 12px 40px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

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

.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);
}

.hover\:shadow-xl:hover {
    --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-amber-100:hover {
    --tw-shadow-color: #fef3c7;
    --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-blue-100:hover {
    --tw-shadow-color: #dbeafe;
    --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-emerald-100:hover {
    --tw-shadow-color: #d1fae5;
    --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-slate-100:hover {
    --tw-shadow-color: #f1f5f9;
    --tw-shadow: var(--tw-shadow-colored);
}

.hover\:ring-1:hover {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.hover\:ring-2:hover {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.hover\:ring-destructive\/30:hover {
    --tw-ring-color: hsl(var(--destructive) / 0.3);
}

.hover\:ring-primary:hover {
    --tw-ring-color: hsl(var(--primary));
}

.hover\:ring-primary\/30:hover {
    --tw-ring-color: hsl(var(--primary) / 0.3);
}

.hover\:ring-primary\/40:hover {
    --tw-ring-color: hsl(var(--primary) / 0.4);
}

.hover\:ring-primary\/50:hover {
    --tw-ring-color: hsl(var(--primary) / 0.5);
}

.hover\:ring-ring:hover {
    --tw-ring-color: hsl(var(--ring));
}

.hover\:ring-success\/50:hover {
    --tw-ring-color: hsl(var(--success) / 0.5);
}

.hover\:ring-warning\/50:hover {
    --tw-ring-color: hsl(var(--warning) / 0.5);
}

.hover\:ring-white\/30:hover {
    --tw-ring-color: rgb(255 255 255 / 0.3);
}

.hover\:ring-offset-2:hover {
    --tw-ring-offset-width: 2px;
}

.hover\:brightness-110:hover {
    --tw-brightness: brightness(1.1);
    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);
}


   .dark .hover\:\!bg-\[hsl\(var\(--nvs-orange\)\/0\.10\)\]:hover {
     background-color: hsl(28 100% 72%) !important;
     color: #0a0a0a !important;
   }

.hover\:after\:bg-sidebar-border:hover::after {
    content: var(--tw-content);
    background-color: hsl(var(--sidebar-border));
}

.focus\:border-\[hsl\(var\(--ring\)\)\]:focus {
    border-color: hsl(var(--ring));
}

.focus\:border-input:focus {
    border-color: hsl(var(--input));
}

.focus\:border-primary:focus {
    border-color: hsl(var(--primary));
}

.focus\:border-primary\/50:focus {
    border-color: hsl(var(--primary) / 0.5);
}

.focus\:border-transparent:focus {
    border-color: transparent;
}

.focus\:bg-\[hsl\(var\(--nvs-page\)\)\]:focus {
    background-color: hsl(var(--nvs-page));
}

.focus\:bg-accent:focus {
    background-color: hsl(var(--accent));
}

.focus\:bg-accent\/40:focus {
    background-color: hsl(var(--accent) / 0.4);
}

.focus\:bg-muted\/50:focus {
    background-color: hsl(var(--muted) / 0.5);
}

.focus\:bg-muted\/60:focus {
    background-color: hsl(var(--muted) / 0.6);
}

.focus\:bg-primary:focus {
    background-color: hsl(var(--primary));
}

.focus\:text-\[hsl\(var\(--destructive\)\)\]:focus {
    color: hsl(var(--destructive));
}

.focus\:text-\[hsl\(var\(--nvs-negative\)\)\]:focus {
    color: hsl(var(--nvs-negative));
}

.focus\:text-accent-foreground:focus {
    color: hsl(var(--accent-foreground));
}

.focus\:text-destructive:focus {
    color: hsl(var(--destructive));
}

.focus\:text-primary-foreground:focus {
    color: hsl(var(--primary-foreground));
}

.focus\:opacity-100:focus {
    opacity: 1;
}

.focus\:outline-none:focus {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.focus\:ring-0:focus {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-1:focus {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-\[hsl\(var\(--nvs-brand\)\)\]:focus {
    --tw-ring-color: hsl(var(--nvs-brand));
}

.focus\:ring-destructive\/40:focus {
    --tw-ring-color: hsl(var(--destructive) / 0.4);
}

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

.focus\:ring-primary:focus {
    --tw-ring-color: hsl(var(--primary));
}

.focus\:ring-primary\/20:focus {
    --tw-ring-color: hsl(var(--primary) / 0.2);
}

.focus\:ring-primary\/40:focus {
    --tw-ring-color: hsl(var(--primary) / 0.4);
}

.focus\:ring-ring:focus {
    --tw-ring-color: hsl(var(--ring));
}

.focus\:ring-offset-2:focus {
    --tw-ring-offset-width: 2px;
}

.focus-visible\:bg-muted:focus-visible {
    background-color: hsl(var(--muted));
}

.focus-visible\:bg-muted\/40:focus-visible {
    background-color: hsl(var(--muted) / 0.4);
}

.focus-visible\:text-foreground:focus-visible {
    color: hsl(var(--foreground));
}

.focus-visible\:outline-none:focus-visible {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.focus-visible\:ring-0:focus-visible {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-1:focus-visible {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-2:focus-visible {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-visible\:ring-inset:focus-visible {
    --tw-ring-inset: inset;
}

.focus-visible\:ring-\[hsl\(var\(--nvs-orange\)\)\]:focus-visible {
    --tw-ring-color: hsl(var(--nvs-orange));
}

.focus-visible\:ring-amber-400\/40:focus-visible {
    --tw-ring-color: rgb(251 191 36 / 0.4);
}

.focus-visible\:ring-amber-500:focus-visible {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(245 158 11 / var(--tw-ring-opacity, 1));
}

.focus-visible\:ring-amber-500\/50:focus-visible {
    --tw-ring-color: rgb(245 158 11 / 0.5);
}

.focus-visible\:ring-destructive:focus-visible {
    --tw-ring-color: hsl(var(--destructive));
}

.focus-visible\:ring-destructive\/40:focus-visible {
    --tw-ring-color: hsl(var(--destructive) / 0.4);
}

.focus-visible\:ring-primary:focus-visible {
    --tw-ring-color: hsl(var(--primary));
}

.focus-visible\:ring-primary\/40:focus-visible {
    --tw-ring-color: hsl(var(--primary) / 0.4);
}

.focus-visible\:ring-primary\/50:focus-visible {
    --tw-ring-color: hsl(var(--primary) / 0.5);
}

.focus-visible\:ring-ring:focus-visible {
    --tw-ring-color: hsl(var(--ring));
}

.focus-visible\:ring-sidebar-ring:focus-visible {
    --tw-ring-color: hsl(var(--sidebar-ring));
}

.focus-visible\:ring-offset-0:focus-visible {
    --tw-ring-offset-width: 0px;
}

.focus-visible\:ring-offset-1:focus-visible {
    --tw-ring-offset-width: 1px;
}

.focus-visible\:ring-offset-2:focus-visible {
    --tw-ring-offset-width: 2px;
}

.focus-visible\:ring-offset-background:focus-visible {
    --tw-ring-offset-color: hsl(var(--background));
}

.focus-visible\:ring-offset-sidebar:focus-visible {
    --tw-ring-offset-color: hsl(var(--sidebar-background));
}

.active\:scale-95:active {
    --tw-scale-x: .95;
    --tw-scale-y: .95;
    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));
}

.active\:scale-\[0\.98\]:active {
    --tw-scale-x: 0.98;
    --tw-scale-y: 0.98;
    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));
}

.active\:cursor-grabbing:active {
    cursor: grabbing;
}

.active\:bg-accent\/80:active {
    background-color: hsl(var(--accent) / 0.8);
}

.active\:bg-muted:active {
    background-color: hsl(var(--muted));
}

.active\:bg-sidebar-accent:active {
    background-color: hsl(var(--sidebar-accent));
}

.active\:text-sidebar-accent-foreground:active {
    color: hsl(var(--sidebar-accent-foreground));
}

.disabled\:pointer-events-none:disabled {
    pointer-events: none;
}

.disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
}

.disabled\:opacity-40:disabled {
    opacity: 0.4;
}

.disabled\:opacity-50:disabled {
    opacity: 0.5;
}

.disabled\:opacity-60:disabled {
    opacity: 0.6;
}

.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100 {
    opacity: 1;
}

.group:hover .group-hover\:flex {
    display: flex;
}

.group\/resize:hover .group-hover\/resize\:w-0\.5 {
    width: 0.125rem;
}

.group:hover .group-hover\:translate-x-0\.5 {
    --tw-translate-x: 0.125rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

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

.group:hover .group-hover\:scale-105 {
    --tw-scale-x: 1.05;
    --tw-scale-y: 1.05;
    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));
}

.group:hover .group-hover\:scale-110 {
    --tw-scale-x: 1.1;
    --tw-scale-y: 1.1;
    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));
}

.group\/resize:hover .group-hover\/resize\:bg-primary {
    background-color: hsl(var(--primary));
}

.group:hover .group-hover\:bg-black\/10 {
    background-color: rgb(0 0 0 / 0.1);
}

.group:hover .group-hover\:bg-black\/20 {
    background-color: rgb(0 0 0 / 0.2);
}

.group:hover .group-hover\:bg-black\/30 {
    background-color: rgb(0 0 0 / 0.3);
}

.group:hover .group-hover\:bg-muted {
    background-color: hsl(var(--muted));
}

.group:hover .group-hover\:bg-primary\/10 {
    background-color: hsl(var(--primary) / 0.1);
}

.group:hover .group-hover\:bg-primary\/20 {
    background-color: hsl(var(--primary) / 0.2);
}

.group:hover .group-hover\:text-foreground {
    color: hsl(var(--foreground));
}

.group:hover .group-hover\:text-primary {
    color: hsl(var(--primary));
}

.group:hover .group-hover\:underline {
    text-decoration-line: underline;
}

.group\/desc:hover .group-hover\/desc\:opacity-100 {
    opacity: 1;
}

.group\/edit:hover .group-hover\/edit\:opacity-100 {
    opacity: 1;
}

.group\/menu-item:hover .group-hover\/menu-item\:opacity-100 {
    opacity: 1;
}

.group\/navrow:hover .group-hover\/navrow\:opacity-100 {
    opacity: 1;
}

.group\/ql:hover .group-hover\/ql\:opacity-100 {
    opacity: 1;
}

.group\/trade:hover .group-hover\/trade\:opacity-100 {
    opacity: 1;
}

.group:hover .group-hover\:opacity-0 {
    opacity: 0;
}

.group:hover .group-hover\:opacity-100 {
    opacity: 1;
}

.group:hover .group-hover\:opacity-50 {
    opacity: 0.5;
}

.group:hover .group-hover\:opacity-80 {
    opacity: 0.8;
}

.group:hover .group-hover\: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);
}

.group\/resize:active .group-active\/resize\:w-0\.5 {
    width: 0.125rem;
}

.group\/resize:active .group-active\/resize\:bg-primary {
    background-color: hsl(var(--primary));
}

.group.destructive .group-\[\.destructive\]\:border-muted\/40 {
    border-color: hsl(var(--muted) / 0.4);
}

.group.toaster .group-\[\.toaster\]\:border-border {
    border-color: hsl(var(--border));
}

.group.toast .group-\[\.toast\]\:bg-muted {
    background-color: hsl(var(--muted));
}

.group.toast .group-\[\.toast\]\:bg-primary {
    background-color: hsl(var(--primary));
}

.group.toaster .group-\[\.toaster\]\:bg-background {
    background-color: hsl(var(--background));
}

.group.destructive .group-\[\.destructive\]\:text-red-300 {
    --tw-text-opacity: 1;
    color: rgb(252 165 165 / var(--tw-text-opacity, 1));
}

.group.toast .group-\[\.toast\]\:text-muted-foreground {
    color: hsl(var(--muted-foreground));
}

.group.toast .group-\[\.toast\]\:text-primary-foreground {
    color: hsl(var(--primary-foreground));
}

.group.toaster .group-\[\.toaster\]\:text-foreground {
    color: hsl(var(--foreground));
}

.group.toaster .group-\[\.toaster\]\:shadow-lg {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover {
    border-color: hsl(var(--destructive) / 0.3);
}

.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover {
    background-color: hsl(var(--destructive));
}

.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover {
    color: hsl(var(--destructive-foreground));
}

.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover {
    --tw-text-opacity: 1;
    color: rgb(254 242 242 / var(--tw-text-opacity, 1));
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus {
    --tw-ring-color: hsl(var(--destructive));
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1));
}

.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus {
    --tw-ring-offset-color: #dc2626;
}

.peer\/menu-button:hover ~ .peer-hover\/menu-button\:text-sidebar-accent-foreground {
    color: hsl(var(--sidebar-accent-foreground));
}

.peer:disabled ~ .peer-disabled\:cursor-not-allowed {
    cursor: not-allowed;
}

.peer:disabled ~ .peer-disabled\:opacity-70 {
    opacity: 0.7;
}

.has-\[\:checked\]\:border-primary:has(:checked) {
    border-color: hsl(var(--primary));
}

.has-\[\:checked\]\:bg-primary\/5:has(:checked) {
    background-color: hsl(var(--primary) / 0.05);
}

.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]) {
    background-color: hsl(var(--sidebar-background));
}

.has-\[\:disabled\]\:opacity-50:has(:disabled) {
    opacity: 0.5;
}

.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8 {
    padding-right: 2rem;
}

.aria-disabled\:pointer-events-none[aria-disabled="true"] {
    pointer-events: none;
}

.aria-disabled\:opacity-50[aria-disabled="true"] {
    opacity: 0.5;
}

.aria-selected\:border-l-4[aria-selected="true"] {
    border-left-width: 4px;
}

.aria-selected\:border-l-blue-600[aria-selected="true"] {
    --tw-border-opacity: 1;
    border-left-color: rgb(37 99 235 / var(--tw-border-opacity, 1));
}

.aria-selected\:border-l-purple-600[aria-selected="true"] {
    --tw-border-opacity: 1;
    border-left-color: rgb(147 51 234 / var(--tw-border-opacity, 1));
}

.aria-selected\:bg-accent[aria-selected="true"] {
    background-color: hsl(var(--accent));
}

.aria-selected\:bg-accent\/50[aria-selected="true"] {
    background-color: hsl(var(--accent) / 0.5);
}

.aria-selected\:bg-blue-100[aria-selected="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(219 234 254 / var(--tw-bg-opacity, 1));
}

.aria-selected\:bg-purple-100[aria-selected="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(243 232 255 / var(--tw-bg-opacity, 1));
}

.aria-selected\:text-accent-foreground[aria-selected="true"] {
    color: hsl(var(--accent-foreground));
}

.aria-selected\:text-muted-foreground[aria-selected="true"] {
    color: hsl(var(--muted-foreground));
}

.aria-selected\:opacity-100[aria-selected="true"] {
    opacity: 1;
}

.aria-selected\:opacity-30[aria-selected="true"] {
    opacity: 0.3;
}

.data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] {
    pointer-events: none;
}

.data-\[disabled\]\:pointer-events-none[data-disabled] {
    pointer-events: none;
}

.data-\[state\=active\]\:flex[data-state="active"] {
    display: flex;
}

.data-\[state\=inactive\]\:hidden[data-state="inactive"] {
    display: none;
}

.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction="vertical"] {
    height: 1px;
}

.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction="vertical"] {
    width: 100%;
}

.data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
    --tw-translate-y: 0.25rem;
    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));
}

.data-\[side\=left\]\:-translate-x-1[data-side="left"] {
    --tw-translate-x: -0.25rem;
    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));
}

.data-\[side\=right\]\:translate-x-1[data-side="right"] {
    --tw-translate-x: 0.25rem;
    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));
}

.data-\[side\=top\]\:-translate-y-1[data-side="top"] {
    --tw-translate-y: -0.25rem;
    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));
}

.data-\[state\=checked\]\:translate-x-5[data-state="checked"] {
    --tw-translate-x: 1.25rem;
    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));
}

.data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] {
    --tw-translate-x: 0px;
    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));
}

.data-\[swipe\=cancel\]\:translate-x-0[data-swipe="cancel"] {
    --tw-translate-x: 0px;
    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));
}

.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe="end"] {
    --tw-translate-x: var(--radix-toast-swipe-end-x);
    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));
}

.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe="move"] {
    --tw-translate-x: var(--radix-toast-swipe-move-x);
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes accordion-up {

    from {
        height: var(--radix-accordion-content-height);
    }

    to {
        height: 0;
    }
}

.data-\[state\=closed\]\:animate-accordion-up[data-state="closed"] {
    animation: accordion-up 0.2s ease-out;
}

@keyframes accordion-down {

    from {
        height: 0;
    }

    to {
        height: var(--radix-accordion-content-height);
    }
}

.data-\[state\=open\]\:animate-accordion-down[data-state="open"] {
    animation: accordion-down 0.2s ease-out;
}

.data-\[panel-group-direction\=vertical\]\:cursor-row-resize[data-panel-group-direction="vertical"] {
    cursor: row-resize;
}

.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction="vertical"] {
    flex-direction: column;
}

.data-\[state\=active\]\:flex-col[data-state="active"] {
    flex-direction: column;
}

.data-\[state\=active\]\:border-b-2[data-state="active"] {
    border-bottom-width: 2px;
}

.data-\[state\=active\]\:border-primary[data-state="active"] {
    border-color: hsl(var(--primary));
}

.data-\[state\=on\]\:border-amber-500\/40[data-state="on"] {
    border-color: rgb(245 158 11 / 0.4);
}

.data-\[active\=true\]\:bg-sidebar-accent[data-active="true"] {
    background-color: hsl(var(--sidebar-accent));
}

.data-\[on\=true\]\:bg-amber-600[data-on="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}

.data-\[on\=true\]\:bg-blue-600[data-on="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));
}

.data-\[on\=true\]\:bg-emerald-600[data-on="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}

.data-\[on\=true\]\:bg-purple-600[data-on="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(147 51 234 / var(--tw-bg-opacity, 1));
}

.data-\[on\=true\]\:bg-violet-600[data-on="true"] {
    --tw-bg-opacity: 1;
    background-color: rgb(124 58 237 / var(--tw-bg-opacity, 1));
}

.data-\[selected\=\'true\'\]\:bg-accent[data-selected='true'] {
    background-color: hsl(var(--accent));
}

.data-\[state\=active\]\:\!bg-primary[data-state="active"] {
    background-color: hsl(var(--primary)) !important;
}

.data-\[state\=active\]\:bg-background[data-state="active"] {
    background-color: hsl(var(--background));
}

.data-\[state\=active\]\:bg-transparent[data-state="active"] {
    background-color: transparent;
}

.data-\[state\=checked\]\:bg-muted[data-state="checked"] {
    background-color: hsl(var(--muted));
}

.data-\[state\=checked\]\:bg-primary[data-state="checked"] {
    background-color: hsl(var(--primary));
}

.data-\[state\=checked\]\:bg-primary\/50[data-state="checked"] {
    background-color: hsl(var(--primary) / 0.5);
}

.data-\[state\=indeterminate\]\:bg-primary[data-state="indeterminate"] {
    background-color: hsl(var(--primary));
}

.data-\[state\=on\]\:bg-accent[data-state="on"] {
    background-color: hsl(var(--accent));
}

.data-\[state\=on\]\:bg-amber-500\/15[data-state="on"] {
    background-color: rgb(245 158 11 / 0.15);
}

.data-\[state\=on\]\:bg-background[data-state="on"] {
    background-color: hsl(var(--background));
}

.data-\[state\=open\]\:bg-accent[data-state="open"] {
    background-color: hsl(var(--accent));
}

.data-\[state\=open\]\:bg-secondary[data-state="open"] {
    background-color: hsl(var(--secondary));
}

.data-\[state\=selected\]\:bg-muted[data-state="selected"] {
    background-color: hsl(var(--muted));
}

.data-\[state\=selected\]\:bg-primary\/5[data-state="selected"] {
    background-color: hsl(var(--primary) / 0.05);
}

.data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
    background-color: hsl(var(--input));
}

.data-\[active\=true\]\:font-medium[data-active="true"] {
    font-weight: 500;
}

.data-\[state\=active\]\:font-semibold[data-state="active"] {
    font-weight: 600;
}

.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active="true"] {
    color: hsl(var(--sidebar-accent-foreground));
}

.data-\[on\=true\]\:text-white[data-on="true"] {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.data-\[selected\=true\]\:text-accent-foreground[data-selected="true"] {
    color: hsl(var(--accent-foreground));
}

.data-\[state\=active\]\:\!text-primary-foreground[data-state="active"] {
    color: hsl(var(--primary-foreground)) !important;
}

.data-\[state\=active\]\:text-\[hsl\(var\(--nvs-ink\)\)\][data-state="active"] {
    color: hsl(var(--nvs-ink));
}

.data-\[state\=active\]\:text-foreground[data-state="active"] {
    color: hsl(var(--foreground));
}

.data-\[state\=active\]\:text-primary[data-state="active"] {
    color: hsl(var(--primary));
}

.data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] {
    color: hsl(var(--primary-foreground));
}

.data-\[state\=indeterminate\]\:text-primary-foreground[data-state="indeterminate"] {
    color: hsl(var(--primary-foreground));
}

.data-\[state\=on\]\:text-accent-foreground[data-state="on"] {
    color: hsl(var(--accent-foreground));
}

.data-\[state\=on\]\:text-amber-600[data-state="on"] {
    --tw-text-opacity: 1;
    color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.data-\[state\=open\]\:text-accent-foreground[data-state="open"] {
    color: hsl(var(--accent-foreground));
}

.data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
    color: hsl(var(--muted-foreground));
}

.data-\[disabled\=true\]\:opacity-50[data-disabled="true"] {
    opacity: 0.5;
}

.data-\[disabled\]\:opacity-50[data-disabled] {
    opacity: 0.5;
}

.data-\[state\=open\]\:opacity-100[data-state="open"] {
    opacity: 1;
}

.data-\[state\=active\]\:shadow-\[inset_0_-2px_0_hsl\(var\(--nvs-orange\)\)\][data-state="active"] {
    --tw-shadow: inset 0 -2px 0 hsl(var(--nvs-orange));
    --tw-shadow-colored: inset 0 -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);
}

.data-\[state\=active\]\:shadow-sm[data-state="active"] {
    --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);
}

.data-\[state\=on\]\:shadow-sm[data-state="on"] {
    --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);
}

.data-\[state\=active\]\:ring-1[data-state="active"] {
    --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
    box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.data-\[state\=active\]\:ring-primary\/30[data-state="active"] {
    --tw-ring-color: hsl(var(--primary) / 0.3);
}

.data-\[swipe\=move\]\:transition-none[data-swipe="move"] {
    transition-property: none;
}

.data-\[state\=closed\]\:duration-300[data-state="closed"] {
    transition-duration: 300ms;
}

.data-\[state\=open\]\:duration-500[data-state="open"] {
    transition-duration: 500ms;
}

.data-\[state\=open\]\:animate-in[data-state="open"] {
    animation-name: enter;
    animation-duration: 150ms;
    --tw-enter-opacity: initial;
    --tw-enter-scale: initial;
    --tw-enter-rotate: initial;
    --tw-enter-translate-x: initial;
    --tw-enter-translate-y: initial;
}

.data-\[state\=closed\]\:animate-out[data-state="closed"] {
    animation-name: exit;
    animation-duration: 150ms;
    --tw-exit-opacity: initial;
    --tw-exit-scale: initial;
    --tw-exit-rotate: initial;
    --tw-exit-translate-x: initial;
    --tw-exit-translate-y: initial;
}

.data-\[swipe\=end\]\:animate-out[data-swipe="end"] {
    animation-name: exit;
    animation-duration: 150ms;
    --tw-exit-opacity: initial;
    --tw-exit-scale: initial;
    --tw-exit-rotate: initial;
    --tw-exit-translate-x: initial;
    --tw-exit-translate-y: initial;
}

.data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
    --tw-exit-opacity: 0;
}

.data-\[state\=closed\]\:fade-out-80[data-state="closed"] {
    --tw-exit-opacity: 0.8;
}

.data-\[state\=open\]\:fade-in-0[data-state="open"] {
    --tw-enter-opacity: 0;
}

.data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
    --tw-exit-scale: .95;
}

.data-\[state\=open\]\:zoom-in-95[data-state="open"] {
    --tw-enter-scale: .95;
}

.data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
    --tw-enter-translate-y: -0.5rem;
}

.data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
    --tw-enter-translate-x: 0.5rem;
}

.data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
    --tw-enter-translate-x: -0.5rem;
}

.data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
    --tw-enter-translate-y: 0.5rem;
}

.data-\[state\=closed\]\:slide-out-to-bottom[data-state="closed"] {
    --tw-exit-translate-y: 100%;
}

.data-\[state\=closed\]\:slide-out-to-left[data-state="closed"] {
    --tw-exit-translate-x: -100%;
}

.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state="closed"] {
    --tw-exit-translate-x: -50%;
}

.data-\[state\=closed\]\:slide-out-to-right[data-state="closed"] {
    --tw-exit-translate-x: 100%;
}

.data-\[state\=closed\]\:slide-out-to-right-full[data-state="closed"] {
    --tw-exit-translate-x: 100%;
}

.data-\[state\=closed\]\:slide-out-to-top[data-state="closed"] {
    --tw-exit-translate-y: -100%;
}

.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state="closed"] {
    --tw-exit-translate-y: -48%;
}

.data-\[state\=open\]\:slide-in-from-bottom[data-state="open"] {
    --tw-enter-translate-y: 100%;
}

.data-\[state\=open\]\:slide-in-from-left[data-state="open"] {
    --tw-enter-translate-x: -100%;
}

.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state="open"] {
    --tw-enter-translate-x: -50%;
}

.data-\[state\=open\]\:slide-in-from-right[data-state="open"] {
    --tw-enter-translate-x: 100%;
}

.data-\[state\=open\]\:slide-in-from-top[data-state="open"] {
    --tw-enter-translate-y: -100%;
}

.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state="open"] {
    --tw-enter-translate-y: -48%;
}

.data-\[state\=open\]\:slide-in-from-top-full[data-state="open"] {
    --tw-enter-translate-y: -100%;
}

.data-\[state\=closed\]\:duration-300[data-state="closed"] {
    animation-duration: 300ms;
}

.data-\[state\=open\]\:duration-500[data-state="open"] {
    animation-duration: 500ms;
}

.data-\[active\=true\]\:before\:absolute[data-active="true"]::before {
    content: var(--tw-content);
    position: absolute;
}

.data-\[active\=true\]\:before\:bottom-1\.5[data-active="true"]::before {
    content: var(--tw-content);
    bottom: 0.375rem;
}

.data-\[active\=true\]\:before\:left-0[data-active="true"]::before {
    content: var(--tw-content);
    left: 0px;
}

.data-\[active\=true\]\:before\:top-1\.5[data-active="true"]::before {
    content: var(--tw-content);
    top: 0.375rem;
}

.data-\[active\=true\]\:before\:w-\[2px\][data-active="true"]::before {
    content: var(--tw-content);
    width: 2px;
}

.data-\[active\=true\]\:before\:rounded-r[data-active="true"]::before {
    content: var(--tw-content);
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}

.data-\[active\=true\]\:before\:bg-sidebar-primary[data-active="true"]::before {
    content: var(--tw-content);
    background-color: hsl(var(--sidebar-primary));
}

.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction="vertical"]::after {
    content: var(--tw-content);
    left: 0px;
}

.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction="vertical"]::after {
    content: var(--tw-content);
    height: 0.25rem;
}

.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction="vertical"]::after {
    content: var(--tw-content);
    width: 100%;
}

.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction="vertical"]::after {
    content: var(--tw-content);
    --tw-translate-y: -50%;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction="vertical"]::after {
    content: var(--tw-content);
    --tw-translate-x: 0px;
    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));
}

.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state="open"] {
    background-color: hsl(var(--sidebar-accent));
}

.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state="open"] {
    color: hsl(var(--sidebar-accent-foreground));
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\] {
    left: calc(var(--sidebar-width) * -1);
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\] {
    right: calc(var(--sidebar-width) * -1);
}

.group[data-side="left"] .group-data-\[side\=left\]\:-right-4 {
    right: -1rem;
}

.group[data-side="right"] .group-data-\[side\=right\]\:left-0 {
    left: 0px;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:-mt-8 {
    margin-top: -2rem;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:hidden {
    display: none;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:\!size-8 {
    width: 2rem !important;
    height: 2rem !important;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\] {
    width: var(--sidebar-width-icon);
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\] {
    width: calc(var(--sidebar-width-icon) + 1rem);
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\] {
    width: calc(var(--sidebar-width-icon) + 1rem + 2px);
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:w-0 {
    width: 0px;
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:translate-x-0 {
    --tw-translate-x: 0px;
    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));
}

.group[data-side="right"] .group-data-\[side\=right\]\:rotate-180 {
    --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));
}

.group[data-state="open"] .group-data-\[state\=open\]\:rotate-180 {
    --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));
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:overflow-hidden {
    overflow: hidden;
}

.group[data-variant="floating"] .group-data-\[variant\=floating\]\:rounded-lg {
    border-radius: var(--radius);
}

.group[data-variant="floating"] .group-data-\[variant\=floating\]\:border {
    border-width: 1px;
}

.group[data-side="left"] .group-data-\[side\=left\]\:border-r {
    border-right-width: 1px;
}

.group[data-side="right"] .group-data-\[side\=right\]\:border-l {
    border-left-width: 1px;
}

.group[data-variant="floating"] .group-data-\[variant\=floating\]\:border-sidebar-border {
    border-color: hsl(var(--sidebar-border));
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:\!p-0 {
    padding: 0px !important;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:\!p-2 {
    padding: 0.5rem !important;
}

.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:opacity-0 {
    opacity: 0;
}

.group[data-highlighted] .group-data-\[highlighted\]\:opacity-100 {
    opacity: 1;
}

.group[data-variant="floating"] .group-data-\[variant\=floating\]\: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);
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:after\:left-full::after {
    content: var(--tw-content);
    left: 100%;
}

.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover {
    background-color: hsl(var(--sidebar-background));
}

.peer\/menu-button[data-size="default"] ~ .peer-data-\[size\=default\]\/menu-button\:top-1\.5 {
    top: 0.375rem;
}

.peer\/menu-button[data-size="lg"] ~ .peer-data-\[size\=lg\]\/menu-button\:top-2\.5 {
    top: 0.625rem;
}

.peer\/menu-button[data-size="sm"] ~ .peer-data-\[size\=sm\]\/menu-button\:top-1 {
    top: 0.25rem;
}

.peer[data-variant="inset"] ~ .peer-data-\[variant\=inset\]\:min-h-\[calc\(100svh-theme\(spacing\.4\)\)\] {
    min-height: calc(100svh - 1rem);
}

.peer\/menu-button[data-active="true"] ~ .peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground {
    color: hsl(var(--sidebar-accent-foreground));
}

@supports ((-webkit-backdrop-filter: var(--tw)) or (backdrop-filter: var(--tw))) {

    .supports-\[backdrop-filter\]\:bg-background\/60 {
        background-color: hsl(var(--background) / 0.6);
    }

    .supports-\[backdrop-filter\]\:bg-background\/80 {
        background-color: hsl(var(--background) / 0.8);
    }

    .supports-\[backdrop-filter\]\:bg-card\/80 {
        background-color: hsl(var(--card) / 0.8);
    }

    .supports-\[backdrop-filter\]\:bg-primary\/5 {
        background-color: hsl(var(--primary) / 0.05);
    }
}

.dark\:border-amber-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(251 191 36 / var(--tw-border-opacity, 1));
}

.dark\:border-amber-500\/60:is(.dark *) {
    border-color: rgb(245 158 11 / 0.6);
}

.dark\:border-amber-600:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(217 119 6 / var(--tw-border-opacity, 1));
}

.dark\:border-amber-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(180 83 9 / var(--tw-border-opacity, 1));
}

.dark\:border-amber-700\/60:is(.dark *) {
    border-color: rgb(180 83 9 / 0.6);
}

.dark\:border-amber-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(146 64 14 / var(--tw-border-opacity, 1));
}

.dark\:border-amber-800\/30:is(.dark *) {
    border-color: rgb(146 64 14 / 0.3);
}

.dark\:border-amber-800\/40:is(.dark *) {
    border-color: rgb(146 64 14 / 0.4);
}

.dark\:border-amber-800\/70:is(.dark *) {
    border-color: rgb(146 64 14 / 0.7);
}

.dark\:border-amber-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(120 53 15 / var(--tw-border-opacity, 1));
}

.dark\:border-amber-900\/40:is(.dark *) {
    border-color: rgb(120 53 15 / 0.4);
}

.dark\:border-amber-900\/50:is(.dark *) {
    border-color: rgb(120 53 15 / 0.5);
}

.dark\:border-blue-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(96 165 250 / var(--tw-border-opacity, 1));
}

.dark\:border-blue-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(29 78 216 / var(--tw-border-opacity, 1));
}

.dark\:border-blue-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(30 64 175 / var(--tw-border-opacity, 1));
}

.dark\:border-blue-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(30 58 138 / var(--tw-border-opacity, 1));
}

.dark\:border-blue-900\/40:is(.dark *) {
    border-color: rgb(30 58 138 / 0.4);
}

.dark\:border-border:is(.dark *) {
    border-color: hsl(var(--border));
}

.dark\:border-border\/40:is(.dark *) {
    border-color: hsl(var(--border) / 0.4);
}

.dark\:border-cyan-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(34 211 238 / var(--tw-border-opacity, 1));
}

.dark\:border-cyan-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(21 94 117 / var(--tw-border-opacity, 1));
}

.dark\:border-cyan-900\/40:is(.dark *) {
    border-color: rgb(22 78 99 / 0.4);
}

.dark\:border-destructive:is(.dark *) {
    border-color: hsl(var(--destructive));
}

.dark\:border-destructive\/40:is(.dark *) {
    border-color: hsl(var(--destructive) / 0.4);
}

.dark\:border-emerald-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(52 211 153 / var(--tw-border-opacity, 1));
}

.dark\:border-emerald-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(4 120 87 / var(--tw-border-opacity, 1));
}

.dark\:border-emerald-700\/60:is(.dark *) {
    border-color: rgb(4 120 87 / 0.6);
}

.dark\:border-emerald-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(6 95 70 / var(--tw-border-opacity, 1));
}

.dark\:border-emerald-800\/40:is(.dark *) {
    border-color: rgb(6 95 70 / 0.4);
}

.dark\:border-emerald-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(6 78 59 / var(--tw-border-opacity, 1));
}

.dark\:border-emerald-900\/40:is(.dark *) {
    border-color: rgb(6 78 59 / 0.4);
}

.dark\:border-emerald-900\/50:is(.dark *) {
    border-color: rgb(6 78 59 / 0.5);
}

.dark\:border-gray-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}

.dark\:border-gray-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));
}

.dark\:border-green-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(74 222 128 / var(--tw-border-opacity, 1));
}

.dark\:border-green-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(21 128 61 / var(--tw-border-opacity, 1));
}

.dark\:border-green-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(22 101 52 / var(--tw-border-opacity, 1));
}

.dark\:border-green-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(20 83 45 / var(--tw-border-opacity, 1));
}

.dark\:border-green-900\/40:is(.dark *) {
    border-color: rgb(20 83 45 / 0.4);
}

.dark\:border-indigo-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(129 140 248 / var(--tw-border-opacity, 1));
}

.dark\:border-indigo-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(55 48 163 / var(--tw-border-opacity, 1));
}

.dark\:border-indigo-900\/40:is(.dark *) {
    border-color: rgb(49 46 129 / 0.4);
}

.dark\:border-muted-foreground:is(.dark *) {
    border-color: hsl(var(--muted-foreground));
}

.dark\:border-orange-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(251 146 60 / var(--tw-border-opacity, 1));
}

.dark\:border-orange-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(194 65 12 / var(--tw-border-opacity, 1));
}

.dark\:border-orange-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(154 52 18 / var(--tw-border-opacity, 1));
}

.dark\:border-orange-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(124 45 18 / var(--tw-border-opacity, 1));
}

.dark\:border-orange-900\/40:is(.dark *) {
    border-color: rgb(124 45 18 / 0.4);
}

.dark\:border-purple-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(192 132 252 / var(--tw-border-opacity, 1));
}

.dark\:border-purple-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(126 34 206 / var(--tw-border-opacity, 1));
}

.dark\:border-purple-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(107 33 168 / var(--tw-border-opacity, 1));
}

.dark\:border-purple-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(88 28 135 / var(--tw-border-opacity, 1));
}

.dark\:border-purple-900\/40:is(.dark *) {
    border-color: rgb(88 28 135 / 0.4);
}

.dark\:border-red-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(185 28 28 / var(--tw-border-opacity, 1));
}

.dark\:border-red-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(153 27 27 / var(--tw-border-opacity, 1));
}

.dark\:border-red-800\/50:is(.dark *) {
    border-color: rgb(153 27 27 / 0.5);
}

.dark\:border-red-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(127 29 29 / var(--tw-border-opacity, 1));
}

.dark\:border-rose-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(251 113 133 / var(--tw-border-opacity, 1));
}

.dark\:border-rose-900:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(136 19 55 / var(--tw-border-opacity, 1));
}

.dark\:border-rose-900\/40:is(.dark *) {
    border-color: rgb(136 19 55 / 0.4);
}

.dark\:border-sky-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(7 89 133 / var(--tw-border-opacity, 1));
}

.dark\:border-sky-900\/50:is(.dark *) {
    border-color: rgb(12 74 110 / 0.5);
}

.dark\:border-slate-300:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}

.dark\:border-slate-600:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(71 85 105 / var(--tw-border-opacity, 1));
}

.dark\:border-slate-700:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(51 65 85 / var(--tw-border-opacity, 1));
}

.dark\:border-slate-700\/40:is(.dark *) {
    border-color: rgb(51 65 85 / 0.4);
}

.dark\:border-slate-700\/50:is(.dark *) {
    border-color: rgb(51 65 85 / 0.5);
}

.dark\:border-stone-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(41 37 36 / var(--tw-border-opacity, 1));
}

.dark\:border-teal-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(45 212 191 / var(--tw-border-opacity, 1));
}

.dark\:border-teal-900\/40:is(.dark *) {
    border-color: rgb(19 78 74 / 0.4);
}

.dark\:border-violet-400:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(167 139 250 / var(--tw-border-opacity, 1));
}

.dark\:border-violet-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(91 33 182 / var(--tw-border-opacity, 1));
}

.dark\:border-violet-800\/50:is(.dark *) {
    border-color: rgb(91 33 182 / 0.5);
}

.dark\:border-violet-900\/40:is(.dark *) {
    border-color: rgb(76 29 149 / 0.4);
}

.dark\:border-violet-900\/50:is(.dark *) {
    border-color: rgb(76 29 149 / 0.5);
}

.dark\:border-yellow-800:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(133 77 14 / var(--tw-border-opacity, 1));
}

.dark\:bg-\[hsl\(var\(--nvs-positive\)\/0\.18\)\]:is(.dark *) {
    background-color: hsl(var(--nvs-positive)/0.18);
}

.dark\:bg-amber-500:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}

.dark\:bg-amber-500\/50:is(.dark *) {
    background-color: rgb(245 158 11 / 0.5);
}

.dark\:bg-amber-700:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(180 83 9 / var(--tw-bg-opacity, 1));
}

.dark\:bg-amber-700\/10:is(.dark *) {
    background-color: rgb(180 83 9 / 0.1);
}

.dark\:bg-amber-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(120 53 15 / var(--tw-bg-opacity, 1));
}

.dark\:bg-amber-900\/20:is(.dark *) {
    background-color: rgb(120 53 15 / 0.2);
}

.dark\:bg-amber-900\/30:is(.dark *) {
    background-color: rgb(120 53 15 / 0.3);
}

.dark\:bg-amber-900\/40:is(.dark *) {
    background-color: rgb(120 53 15 / 0.4);
}

.dark\:bg-amber-900\/50:is(.dark *) {
    background-color: rgb(120 53 15 / 0.5);
}

.dark\:bg-amber-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(69 26 3 / var(--tw-bg-opacity, 1));
}

.dark\:bg-amber-950\/10:is(.dark *) {
    background-color: rgb(69 26 3 / 0.1);
}

.dark\:bg-amber-950\/20:is(.dark *) {
    background-color: rgb(69 26 3 / 0.2);
}

.dark\:bg-amber-950\/30:is(.dark *) {
    background-color: rgb(69 26 3 / 0.3);
}

.dark\:bg-amber-950\/40:is(.dark *) {
    background-color: rgb(69 26 3 / 0.4);
}

.dark\:bg-amber-950\/50:is(.dark *) {
    background-color: rgb(69 26 3 / 0.5);
}

.dark\:bg-amber-950\/60:is(.dark *) {
    background-color: rgb(69 26 3 / 0.6);
}

.dark\:bg-background:is(.dark *) {
    background-color: hsl(var(--background));
}

.dark\:bg-blue-700\/10:is(.dark *) {
    background-color: rgb(29 78 216 / 0.1);
}

.dark\:bg-blue-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(30 58 138 / var(--tw-bg-opacity, 1));
}

.dark\:bg-blue-900\/20:is(.dark *) {
    background-color: rgb(30 58 138 / 0.2);
}

.dark\:bg-blue-900\/30:is(.dark *) {
    background-color: rgb(30 58 138 / 0.3);
}

.dark\:bg-blue-900\/40:is(.dark *) {
    background-color: rgb(30 58 138 / 0.4);
}

.dark\:bg-blue-900\/50:is(.dark *) {
    background-color: rgb(30 58 138 / 0.5);
}

.dark\:bg-blue-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(23 37 84 / var(--tw-bg-opacity, 1));
}

.dark\:bg-blue-950\/20:is(.dark *) {
    background-color: rgb(23 37 84 / 0.2);
}

.dark\:bg-blue-950\/30:is(.dark *) {
    background-color: rgb(23 37 84 / 0.3);
}

.dark\:bg-blue-950\/40:is(.dark *) {
    background-color: rgb(23 37 84 / 0.4);
}

.dark\:bg-blue-950\/50:is(.dark *) {
    background-color: rgb(23 37 84 / 0.5);
}

.dark\:bg-blue-950\/60:is(.dark *) {
    background-color: rgb(23 37 84 / 0.6);
}

.dark\:bg-card:is(.dark *) {
    background-color: hsl(var(--card));
}

.dark\:bg-cyan-900\/20:is(.dark *) {
    background-color: rgb(22 78 99 / 0.2);
}

.dark\:bg-cyan-900\/30:is(.dark *) {
    background-color: rgb(22 78 99 / 0.3);
}

.dark\:bg-cyan-900\/40:is(.dark *) {
    background-color: rgb(22 78 99 / 0.4);
}

.dark\:bg-cyan-900\/50:is(.dark *) {
    background-color: rgb(22 78 99 / 0.5);
}

.dark\:bg-cyan-950\/20:is(.dark *) {
    background-color: rgb(8 51 68 / 0.2);
}

.dark\:bg-cyan-950\/50:is(.dark *) {
    background-color: rgb(8 51 68 / 0.5);
}

.dark\:bg-destructive\/25:is(.dark *) {
    background-color: hsl(var(--destructive) / 0.25);
}

.dark\:bg-destructive\/30:is(.dark *) {
    background-color: hsl(var(--destructive) / 0.3);
}

.dark\:bg-emerald-400\/70:is(.dark *) {
    background-color: rgb(52 211 153 / 0.7);
}

.dark\:bg-emerald-600\/60:is(.dark *) {
    background-color: rgb(5 150 105 / 0.6);
}

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

.dark\:bg-emerald-900\/20:is(.dark *) {
    background-color: rgb(6 78 59 / 0.2);
}

.dark\:bg-emerald-900\/30:is(.dark *) {
    background-color: rgb(6 78 59 / 0.3);
}

.dark\:bg-emerald-900\/40:is(.dark *) {
    background-color: rgb(6 78 59 / 0.4);
}

.dark\:bg-emerald-900\/50:is(.dark *) {
    background-color: rgb(6 78 59 / 0.5);
}

.dark\:bg-emerald-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(2 44 34 / var(--tw-bg-opacity, 1));
}

.dark\:bg-emerald-950\/20:is(.dark *) {
    background-color: rgb(2 44 34 / 0.2);
}

.dark\:bg-emerald-950\/30:is(.dark *) {
    background-color: rgb(2 44 34 / 0.3);
}

.dark\:bg-emerald-950\/40:is(.dark *) {
    background-color: rgb(2 44 34 / 0.4);
}

.dark\:bg-emerald-950\/50:is(.dark *) {
    background-color: rgb(2 44 34 / 0.5);
}

.dark\:bg-emerald-950\/60:is(.dark *) {
    background-color: rgb(2 44 34 / 0.6);
}

.dark\:bg-fuchsia-900\/40:is(.dark *) {
    background-color: rgb(112 26 117 / 0.4);
}

.dark\:bg-gray-800:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.dark\:bg-gray-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}

.dark\:bg-gray-900\/30:is(.dark *) {
    background-color: rgb(17 24 39 / 0.3);
}

.dark\:bg-gray-900\/40:is(.dark *) {
    background-color: rgb(17 24 39 / 0.4);
}

.dark\:bg-gray-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(3 7 18 / var(--tw-bg-opacity, 1));
}

.dark\:bg-gray-950\/20:is(.dark *) {
    background-color: rgb(3 7 18 / 0.2);
}

.dark\:bg-green-700:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(21 128 61 / var(--tw-bg-opacity, 1));
}

.dark\:bg-green-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(20 83 45 / var(--tw-bg-opacity, 1));
}

.dark\:bg-green-900\/20:is(.dark *) {
    background-color: rgb(20 83 45 / 0.2);
}

.dark\:bg-green-900\/30:is(.dark *) {
    background-color: rgb(20 83 45 / 0.3);
}

.dark\:bg-green-900\/40:is(.dark *) {
    background-color: rgb(20 83 45 / 0.4);
}

.dark\:bg-green-900\/50:is(.dark *) {
    background-color: rgb(20 83 45 / 0.5);
}

.dark\:bg-green-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(5 46 22 / var(--tw-bg-opacity, 1));
}

.dark\:bg-green-950\/20:is(.dark *) {
    background-color: rgb(5 46 22 / 0.2);
}

.dark\:bg-green-950\/30:is(.dark *) {
    background-color: rgb(5 46 22 / 0.3);
}

.dark\:bg-green-950\/40:is(.dark *) {
    background-color: rgb(5 46 22 / 0.4);
}

.dark\:bg-green-950\/50:is(.dark *) {
    background-color: rgb(5 46 22 / 0.5);
}

.dark\:bg-indigo-900\/20:is(.dark *) {
    background-color: rgb(49 46 129 / 0.2);
}

.dark\:bg-indigo-900\/30:is(.dark *) {
    background-color: rgb(49 46 129 / 0.3);
}

.dark\:bg-indigo-900\/40:is(.dark *) {
    background-color: rgb(49 46 129 / 0.4);
}

.dark\:bg-indigo-900\/50:is(.dark *) {
    background-color: rgb(49 46 129 / 0.5);
}

.dark\:bg-indigo-950\/20:is(.dark *) {
    background-color: rgb(30 27 75 / 0.2);
}

.dark\:bg-indigo-950\/50:is(.dark *) {
    background-color: rgb(30 27 75 / 0.5);
}

.dark\:bg-lime-900\/30:is(.dark *) {
    background-color: rgb(54 83 20 / 0.3);
}

.dark\:bg-lime-900\/40:is(.dark *) {
    background-color: rgb(54 83 20 / 0.4);
}

.dark\:bg-muted:is(.dark *) {
    background-color: hsl(var(--muted));
}

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

.dark\:bg-orange-900\/20:is(.dark *) {
    background-color: rgb(124 45 18 / 0.2);
}

.dark\:bg-orange-900\/30:is(.dark *) {
    background-color: rgb(124 45 18 / 0.3);
}

.dark\:bg-orange-900\/40:is(.dark *) {
    background-color: rgb(124 45 18 / 0.4);
}

.dark\:bg-orange-900\/50:is(.dark *) {
    background-color: rgb(124 45 18 / 0.5);
}

.dark\:bg-orange-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(67 20 7 / var(--tw-bg-opacity, 1));
}

.dark\:bg-orange-950\/20:is(.dark *) {
    background-color: rgb(67 20 7 / 0.2);
}

.dark\:bg-orange-950\/30:is(.dark *) {
    background-color: rgb(67 20 7 / 0.3);
}

.dark\:bg-orange-950\/40:is(.dark *) {
    background-color: rgb(67 20 7 / 0.4);
}

.dark\:bg-orange-950\/50:is(.dark *) {
    background-color: rgb(67 20 7 / 0.5);
}

.dark\:bg-pink-900\/40:is(.dark *) {
    background-color: rgb(131 24 67 / 0.4);
}

.dark\:bg-purple-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(88 28 135 / var(--tw-bg-opacity, 1));
}

.dark\:bg-purple-900\/20:is(.dark *) {
    background-color: rgb(88 28 135 / 0.2);
}

.dark\:bg-purple-900\/30:is(.dark *) {
    background-color: rgb(88 28 135 / 0.3);
}

.dark\:bg-purple-900\/40:is(.dark *) {
    background-color: rgb(88 28 135 / 0.4);
}

.dark\:bg-purple-900\/50:is(.dark *) {
    background-color: rgb(88 28 135 / 0.5);
}

.dark\:bg-purple-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(59 7 100 / var(--tw-bg-opacity, 1));
}

.dark\:bg-purple-950\/20:is(.dark *) {
    background-color: rgb(59 7 100 / 0.2);
}

.dark\:bg-purple-950\/30:is(.dark *) {
    background-color: rgb(59 7 100 / 0.3);
}

.dark\:bg-purple-950\/40:is(.dark *) {
    background-color: rgb(59 7 100 / 0.4);
}

.dark\:bg-purple-950\/50:is(.dark *) {
    background-color: rgb(59 7 100 / 0.5);
}

.dark\:bg-purple-950\/60:is(.dark *) {
    background-color: rgb(59 7 100 / 0.6);
}

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

.dark\:bg-red-900\/20:is(.dark *) {
    background-color: rgb(127 29 29 / 0.2);
}

.dark\:bg-red-900\/30:is(.dark *) {
    background-color: rgb(127 29 29 / 0.3);
}

.dark\:bg-red-900\/40:is(.dark *) {
    background-color: rgb(127 29 29 / 0.4);
}

.dark\:bg-red-900\/50:is(.dark *) {
    background-color: rgb(127 29 29 / 0.5);
}

.dark\:bg-red-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(69 10 10 / var(--tw-bg-opacity, 1));
}

.dark\:bg-red-950\/20:is(.dark *) {
    background-color: rgb(69 10 10 / 0.2);
}

.dark\:bg-red-950\/30:is(.dark *) {
    background-color: rgb(69 10 10 / 0.3);
}

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

.dark\:bg-rose-900\/30:is(.dark *) {
    background-color: rgb(136 19 55 / 0.3);
}

.dark\:bg-rose-900\/40:is(.dark *) {
    background-color: rgb(136 19 55 / 0.4);
}

.dark\:bg-rose-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(76 5 25 / var(--tw-bg-opacity, 1));
}

.dark\:bg-rose-950\/20:is(.dark *) {
    background-color: rgb(76 5 25 / 0.2);
}

.dark\:bg-rose-950\/30:is(.dark *) {
    background-color: rgb(76 5 25 / 0.3);
}

.dark\:bg-rose-950\/50:is(.dark *) {
    background-color: rgb(76 5 25 / 0.5);
}

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

.dark\:bg-sky-900\/30:is(.dark *) {
    background-color: rgb(12 74 110 / 0.3);
}

.dark\:bg-sky-900\/40:is(.dark *) {
    background-color: rgb(12 74 110 / 0.4);
}

.dark\:bg-sky-900\/50:is(.dark *) {
    background-color: rgb(12 74 110 / 0.5);
}

.dark\:bg-sky-950\/20:is(.dark *) {
    background-color: rgb(8 47 73 / 0.2);
}

.dark\:bg-sky-950\/30:is(.dark *) {
    background-color: rgb(8 47 73 / 0.3);
}

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

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

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

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

.dark\:bg-slate-800\/50:is(.dark *) {
    background-color: rgb(30 41 59 / 0.5);
}

.dark\:bg-slate-800\/60:is(.dark *) {
    background-color: rgb(30 41 59 / 0.6);
}

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

.dark\:bg-slate-900\/30:is(.dark *) {
    background-color: rgb(15 23 42 / 0.3);
}

.dark\:bg-slate-900\/40:is(.dark *) {
    background-color: rgb(15 23 42 / 0.4);
}

.dark\:bg-slate-900\/50:is(.dark *) {
    background-color: rgb(15 23 42 / 0.5);
}

.dark\:bg-stone-950\/20:is(.dark *) {
    background-color: rgb(12 10 9 / 0.2);
}

.dark\:bg-teal-900\/40:is(.dark *) {
    background-color: rgb(19 78 74 / 0.4);
}

.dark\:bg-teal-950\/20:is(.dark *) {
    background-color: rgb(4 47 46 / 0.2);
}

.dark\:bg-teal-950\/50:is(.dark *) {
    background-color: rgb(4 47 46 / 0.5);
}

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

.dark\:bg-violet-900\/30:is(.dark *) {
    background-color: rgb(76 29 149 / 0.3);
}

.dark\:bg-violet-900\/40:is(.dark *) {
    background-color: rgb(76 29 149 / 0.4);
}

.dark\:bg-violet-950\/10:is(.dark *) {
    background-color: rgb(46 16 101 / 0.1);
}

.dark\:bg-violet-950\/20:is(.dark *) {
    background-color: rgb(46 16 101 / 0.2);
}

.dark\:bg-violet-950\/30:is(.dark *) {
    background-color: rgb(46 16 101 / 0.3);
}

.dark\:bg-violet-950\/50:is(.dark *) {
    background-color: rgb(46 16 101 / 0.5);
}

.dark\:bg-yellow-900:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(113 63 18 / var(--tw-bg-opacity, 1));
}

.dark\:bg-yellow-900\/20:is(.dark *) {
    background-color: rgb(113 63 18 / 0.2);
}

.dark\:bg-yellow-900\/30:is(.dark *) {
    background-color: rgb(113 63 18 / 0.3);
}

.dark\:bg-yellow-950:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(66 32 6 / var(--tw-bg-opacity, 1));
}

.dark\:bg-yellow-950\/10:is(.dark *) {
    background-color: rgb(66 32 6 / 0.1);
}

.dark\:bg-yellow-950\/20:is(.dark *) {
    background-color: rgb(66 32 6 / 0.2);
}

.dark\:bg-yellow-950\/30:is(.dark *) {
    background-color: rgb(66 32 6 / 0.3);
}

.dark\:bg-zinc-900\/40:is(.dark *) {
    background-color: rgb(24 24 27 / 0.4);
}

.dark\:from-muted\/30:is(.dark *) {
    --tw-gradient-from: hsl(var(--muted) / 0.3) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.dark\:from-muted\/40:is(.dark *) {
    --tw-gradient-from: hsl(var(--muted) / 0.4) var(--tw-gradient-from-position);
    --tw-gradient-to: hsl(var(--muted) / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.dark\:from-slate-800:is(.dark *) {
    --tw-gradient-from: #1e293b var(--tw-gradient-from-position);
    --tw-gradient-to: rgb(30 41 59 / 0) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.dark\:via-card:is(.dark *) {
    --tw-gradient-to: hsl(var(--card) / 0)  var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--card)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.dark\:to-amber-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(69 26 3 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-blue-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(23 37 84 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-cyan-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(8 51 68 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-emerald-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(2 44 34 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-green-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(5 46 22 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-indigo-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(30 27 75 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-muted\/40:is(.dark *) {
    --tw-gradient-to: hsl(var(--muted) / 0.4) var(--tw-gradient-to-position);
}

.dark\:to-orange-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(67 20 7 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-purple-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(59 7 100 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-rose-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(76 5 25 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-slate-900:is(.dark *) {
    --tw-gradient-to: #0f172a var(--tw-gradient-to-position);
}

.dark\:to-slate-900\/30:is(.dark *) {
    --tw-gradient-to: rgb(15 23 42 / 0.3) var(--tw-gradient-to-position);
}

.dark\:to-teal-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(4 47 46 / 0.2) var(--tw-gradient-to-position);
}

.dark\:to-transparent:is(.dark *) {
    --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.dark\:to-violet-950\/20:is(.dark *) {
    --tw-gradient-to: rgb(46 16 101 / 0.2) var(--tw-gradient-to-position);
}

.dark\:fill-amber-900\/40:is(.dark *) {
    fill: rgb(120 53 15 / 0.4);
}

.dark\:text-amber-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 243 199 / var(--tw-text-opacity, 1));
}

.dark\:text-amber-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(253 230 138 / var(--tw-text-opacity, 1));
}

.dark\:text-amber-200\/80:is(.dark *) {
    color: rgb(253 230 138 / 0.8);
}

.dark\:text-amber-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(252 211 77 / var(--tw-text-opacity, 1));
}

.dark\:text-amber-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(251 191 36 / var(--tw-text-opacity, 1));
}

.dark\:text-amber-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(245 158 11 / var(--tw-text-opacity, 1));
}

.dark\:text-blue-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(219 234 254 / var(--tw-text-opacity, 1));
}

.dark\:text-blue-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(191 219 254 / var(--tw-text-opacity, 1));
}

.dark\:text-blue-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(147 197 253 / var(--tw-text-opacity, 1));
}

.dark\:text-blue-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(96 165 250 / var(--tw-text-opacity, 1));
}

.dark\:text-cyan-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(103 232 249 / var(--tw-text-opacity, 1));
}

.dark\:text-cyan-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(34 211 238 / var(--tw-text-opacity, 1));
}

.dark\:text-emerald-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(167 243 208 / var(--tw-text-opacity, 1));
}

.dark\:text-emerald-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(110 231 183 / var(--tw-text-opacity, 1));
}

.dark\:text-emerald-300\/90:is(.dark *) {
    color: rgb(110 231 183 / 0.9);
}

.dark\:text-emerald-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(52 211 153 / var(--tw-text-opacity, 1));
}

.dark\:text-foreground:is(.dark *) {
    color: hsl(var(--foreground));
}

.dark\:text-foreground\/80:is(.dark *) {
    color: hsl(var(--foreground) / 0.8);
}

.dark\:text-fuchsia-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(240 171 252 / var(--tw-text-opacity, 1));
}

.dark\:text-gray-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}

.dark\:text-gray-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}

.dark\:text-gray-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.dark\:text-green-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(220 252 231 / var(--tw-text-opacity, 1));
}

.dark\:text-green-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(187 247 208 / var(--tw-text-opacity, 1));
}

.dark\:text-green-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(134 239 172 / var(--tw-text-opacity, 1));
}

.dark\:text-green-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(74 222 128 / var(--tw-text-opacity, 1));
}

.dark\:text-green-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(34 197 94 / var(--tw-text-opacity, 1));
}

.dark\:text-indigo-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(165 180 252 / var(--tw-text-opacity, 1));
}

.dark\:text-indigo-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(129 140 248 / var(--tw-text-opacity, 1));
}

.dark\:text-lime-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(190 242 100 / var(--tw-text-opacity, 1));
}

.dark\:text-muted-foreground:is(.dark *) {
    color: hsl(var(--muted-foreground));
}

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

.dark\:text-orange-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 215 170 / var(--tw-text-opacity, 1));
}

.dark\:text-orange-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(253 186 116 / var(--tw-text-opacity, 1));
}

.dark\:text-orange-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(251 146 60 / var(--tw-text-opacity, 1));
}

.dark\:text-orange-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(249 115 22 / var(--tw-text-opacity, 1));
}

.dark\:text-pink-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(249 168 212 / var(--tw-text-opacity, 1));
}

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

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

.dark\:text-purple-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(216 180 254 / var(--tw-text-opacity, 1));
}

.dark\:text-purple-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(192 132 252 / var(--tw-text-opacity, 1));
}

.dark\:text-red-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 226 226 / var(--tw-text-opacity, 1));
}

.dark\:text-red-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 202 202 / var(--tw-text-opacity, 1));
}

.dark\:text-red-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(252 165 165 / var(--tw-text-opacity, 1));
}

.dark\:text-red-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(248 113 113 / var(--tw-text-opacity, 1));
}

.dark\:text-red-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(239 68 68 / var(--tw-text-opacity, 1));
}

.dark\:text-rose-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 205 211 / var(--tw-text-opacity, 1));
}

.dark\:text-rose-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(253 164 175 / var(--tw-text-opacity, 1));
}

.dark\:text-rose-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(251 113 133 / var(--tw-text-opacity, 1));
}

.dark\:text-sky-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(186 230 253 / var(--tw-text-opacity, 1));
}

.dark\:text-sky-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(125 211 252 / var(--tw-text-opacity, 1));
}

.dark\:text-sky-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(56 189 248 / var(--tw-text-opacity, 1));
}

.dark\:text-slate-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(241 245 249 / var(--tw-text-opacity, 1));
}

.dark\:text-slate-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}

.dark\:text-slate-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.dark\:text-slate-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.dark\:text-slate-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.dark\:text-teal-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(94 234 212 / var(--tw-text-opacity, 1));
}

.dark\:text-teal-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(45 212 191 / var(--tw-text-opacity, 1));
}

.dark\:text-violet-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(196 181 253 / var(--tw-text-opacity, 1));
}

.dark\:text-violet-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(167 139 250 / var(--tw-text-opacity, 1));
}

.dark\:text-warning:is(.dark *) {
    color: hsl(var(--warning));
}

.dark\:text-yellow-100:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 249 195 / var(--tw-text-opacity, 1));
}

.dark\:text-yellow-200:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 240 138 / var(--tw-text-opacity, 1));
}

.dark\:text-yellow-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(253 224 71 / var(--tw-text-opacity, 1));
}

.dark\:text-yellow-400:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(250 204 21 / var(--tw-text-opacity, 1));
}

.dark\:text-yellow-500:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(234 179 8 / var(--tw-text-opacity, 1));
}

.dark\:text-zinc-300:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(212 212 216 / var(--tw-text-opacity, 1));
}

.dark\:shadow-amber-900\/30:is(.dark *) {
    --tw-shadow-color: rgb(120 53 15 / 0.3);
    --tw-shadow: var(--tw-shadow-colored);
}

.dark\:shadow-blue-900\/30:is(.dark *) {
    --tw-shadow-color: rgb(30 58 138 / 0.3);
    --tw-shadow: var(--tw-shadow-colored);
}

.dark\:ring-amber-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(180 83 9 / var(--tw-ring-opacity, 1));
}

.dark\:ring-blue-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(29 78 216 / var(--tw-ring-opacity, 1));
}

.dark\:ring-border:is(.dark *) {
    --tw-ring-color: hsl(var(--border));
}

.dark\:ring-cyan-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(14 116 144 / var(--tw-ring-opacity, 1));
}

.dark\:ring-emerald-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(4 120 87 / var(--tw-ring-opacity, 1));
}

.dark\:ring-green-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(21 128 61 / var(--tw-ring-opacity, 1));
}

.dark\:ring-indigo-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(67 56 202 / var(--tw-ring-opacity, 1));
}

.dark\:ring-orange-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(194 65 12 / var(--tw-ring-opacity, 1));
}

.dark\:ring-purple-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(126 34 206 / var(--tw-ring-opacity, 1));
}

.dark\:ring-rose-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(190 18 60 / var(--tw-ring-opacity, 1));
}

.dark\:ring-slate-600:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(71 85 105 / var(--tw-ring-opacity, 1));
}

.dark\:ring-teal-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(15 118 110 / var(--tw-ring-opacity, 1));
}

.dark\:ring-violet-700:is(.dark *) {
    --tw-ring-opacity: 1;
    --tw-ring-color: rgb(109 40 217 / var(--tw-ring-opacity, 1));
}

.dark\:hover\:border-amber-600:hover:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(217 119 6 / var(--tw-border-opacity, 1));
}

.dark\:hover\:border-blue-600:hover:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(37 99 235 / var(--tw-border-opacity, 1));
}

.dark\:hover\:border-border\/80:hover:is(.dark *) {
    border-color: hsl(var(--border) / 0.8);
}

.dark\:hover\:border-red-600:hover:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(220 38 38 / var(--tw-border-opacity, 1));
}

.dark\:hover\:border-sky-600:hover:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(2 132 199 / var(--tw-border-opacity, 1));
}

.dark\:hover\:border-slate-600:hover:is(.dark *) {
    --tw-border-opacity: 1;
    border-color: rgb(71 85 105 / var(--tw-border-opacity, 1));
}

.dark\:hover\:bg-amber-600:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-amber-800:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(146 64 14 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-amber-800\/50:hover:is(.dark *) {
    background-color: rgb(146 64 14 / 0.5);
}

.dark\:hover\:bg-amber-900:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(120 53 15 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-amber-900\/20:hover:is(.dark *) {
    background-color: rgb(120 53 15 / 0.2);
}

.dark\:hover\:bg-amber-950:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(69 26 3 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-amber-950\/30:hover:is(.dark *) {
    background-color: rgb(69 26 3 / 0.3);
}

.dark\:hover\:bg-amber-950\/40:hover:is(.dark *) {
    background-color: rgb(69 26 3 / 0.4);
}

.dark\:hover\:bg-amber-950\/50:hover:is(.dark *) {
    background-color: rgb(69 26 3 / 0.5);
}

.dark\:hover\:bg-blue-900:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(30 58 138 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-blue-950\/10:hover:is(.dark *) {
    background-color: rgb(23 37 84 / 0.1);
}

.dark\:hover\:bg-blue-950\/30:hover:is(.dark *) {
    background-color: rgb(23 37 84 / 0.3);
}

.dark\:hover\:bg-emerald-900\/20:hover:is(.dark *) {
    background-color: rgb(6 78 59 / 0.2);
}

.dark\:hover\:bg-emerald-950:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(2 44 34 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-emerald-950\/30:hover:is(.dark *) {
    background-color: rgb(2 44 34 / 0.3);
}

.dark\:hover\:bg-green-600:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(22 163 74 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-green-800:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(22 101 52 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-green-950:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(5 46 22 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-green-950\/10:hover:is(.dark *) {
    background-color: rgb(5 46 22 / 0.1);
}

.dark\:hover\:bg-muted:hover:is(.dark *) {
    background-color: hsl(var(--muted));
}

.dark\:hover\:bg-purple-950\/30:hover:is(.dark *) {
    background-color: rgb(59 7 100 / 0.3);
}

.dark\:hover\:bg-red-950\/10:hover:is(.dark *) {
    background-color: rgb(69 10 10 / 0.1);
}

.dark\:hover\:bg-sky-900\/40:hover:is(.dark *) {
    background-color: rgb(12 74 110 / 0.4);
}

.dark\:hover\:bg-slate-800:hover:is(.dark *) {
    --tw-bg-opacity: 1;
    background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}

.dark\:hover\:bg-slate-800\/50:hover:is(.dark *) {
    background-color: rgb(30 41 59 / 0.5);
}

.dark\:hover\:text-amber-100:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(254 243 199 / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-emerald-300:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(110 231 183 / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-emerald-400:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(52 211 153 / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-sky-300:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(125 211 252 / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-violet-300:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(196 181 253 / var(--tw-text-opacity, 1));
}

.dark\:hover\:text-violet-400:hover:is(.dark *) {
    --tw-text-opacity: 1;
    color: rgb(167 139 250 / var(--tw-text-opacity, 1));
}

.dark\:aria-selected\:bg-blue-900\/50[aria-selected="true"]:is(.dark *) {
    background-color: rgb(30 58 138 / 0.5);
}

.dark\:aria-selected\:bg-purple-900\/50[aria-selected="true"]:is(.dark *) {
    background-color: rgb(88 28 135 / 0.5);
}

@media not all and (min-width: 1024px) {

    .max-lg\:flex {
        display: flex;
    }
}

@media not all and (min-width: 640px) {

    .max-sm\:absolute {
        position: absolute;
    }

    .max-sm\:inset-0 {
        inset: 0px;
    }

    .max-sm\:z-20 {
        z-index: 20;
    }
}

@media (min-width: 640px) {

    .sm\:bottom-0 {
        bottom: 0px;
    }

    .sm\:right-0 {
        right: 0px;
    }

    .sm\:top-auto {
        top: auto;
    }

    .sm\:col-span-1 {
        grid-column: span 1 / span 1;
    }

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

    .sm\:col-span-3 {
        grid-column: span 3 / span 3;
    }

    .sm\:-mx-6 {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
    }

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

    .sm\:ml-auto {
        margin-left: auto;
    }

    .sm\:mr-auto {
        margin-right: auto;
    }

    .sm\:mt-0 {
        margin-top: 0px;
    }

    .sm\:block {
        display: block;
    }

    .sm\:inline-block {
        display: inline-block;
    }

    .sm\:inline {
        display: inline;
    }

    .sm\:flex {
        display: flex;
    }

    .sm\:inline-flex {
        display: inline-flex;
    }

    .sm\:table-cell {
        display: table-cell;
    }

    .sm\:grid {
        display: grid;
    }

    .sm\:hidden {
        display: none;
    }

    .sm\:h-16 {
        height: 4rem;
    }

    .sm\:h-auto {
        height: auto;
    }

    .sm\:max-h-\[92vh\] {
        max-height: 92vh;
    }

    .sm\:min-h-0 {
        min-height: 0px;
    }

    .sm\:min-h-\[110px\] {
        min-height: 110px;
    }

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

    .sm\:w-48 {
        width: 12rem;
    }

    .sm\:w-52 {
        width: 13rem;
    }

    .sm\:w-64 {
        width: 16rem;
    }

    .sm\:w-72 {
        width: 18rem;
    }

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

    .sm\:w-\[180px\] {
        width: 180px;
    }

    .sm\:w-\[200px\] {
        width: 200px;
    }

    .sm\:w-\[220px\] {
        width: 220px;
    }

    .sm\:w-\[240px\] {
        width: 240px;
    }

    .sm\:w-\[280px\] {
        width: 280px;
    }

    .sm\:w-\[420px\] {
        width: 420px;
    }

    .sm\:w-\[480px\] {
        width: 480px;
    }

    .sm\:w-\[540px\] {
        width: 540px;
    }

    .sm\:w-\[95vw\] {
        width: 95vw;
    }

    .sm\:w-\[97vw\] {
        width: 97vw;
    }

    .sm\:w-auto {
        width: auto;
    }

    .sm\:min-w-0 {
        min-width: 0px;
    }

    .sm\:max-w-2xl {
        max-width: 42rem;
    }

    .sm\:max-w-3xl {
        max-width: 48rem;
    }

    .sm\:max-w-4xl {
        max-width: 56rem;
    }

    .sm\:max-w-5xl {
        max-width: 64rem;
    }

    .sm\:max-w-\[400px\] {
        max-width: 400px;
    }

    .sm\:max-w-\[425px\] {
        max-width: 425px;
    }

    .sm\:max-w-\[460px\] {
        max-width: 460px;
    }

    .sm\:max-w-\[480px\] {
        max-width: 480px;
    }

    .sm\:max-w-\[500px\] {
        max-width: 500px;
    }

    .sm\:max-w-\[520px\] {
        max-width: 520px;
    }

    .sm\:max-w-\[525px\] {
        max-width: 525px;
    }

    .sm\:max-w-\[540px\] {
        max-width: 540px;
    }

    .sm\:max-w-\[560px\] {
        max-width: 560px;
    }

    .sm\:max-w-\[600px\] {
        max-width: 600px;
    }

    .sm\:max-w-\[680px\] {
        max-width: 680px;
    }

    .sm\:max-w-\[700px\] {
        max-width: 700px;
    }

    .sm\:max-w-\[900px\] {
        max-width: 900px;
    }

    .sm\:max-w-\[960px\] {
        max-width: 960px;
    }

    .sm\:max-w-lg {
        max-width: 32rem;
    }

    .sm\:max-w-md {
        max-width: 28rem;
    }

    .sm\:max-w-sm {
        max-width: 24rem;
    }

    .sm\:max-w-xl {
        max-width: 36rem;
    }

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

    .sm\:shrink-0 {
        flex-shrink: 0;
    }

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

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

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

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

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

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

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

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

    .sm\:items-start {
        align-items: flex-start;
    }

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

    .sm\:justify-end {
        justify-content: flex-end;
    }

    .sm\:justify-between {
        justify-content: space-between;
    }

    .sm\:gap-0 {
        gap: 0px;
    }

    .sm\:gap-2 {
        gap: 0.5rem;
    }

    .sm\:gap-2\.5 {
        gap: 0.625rem;
    }

    .sm\:gap-3 {
        gap: 0.75rem;
    }

    .sm\:gap-4 {
        gap: 1rem;
    }

    .sm\:gap-6 {
        gap: 1.5rem;
    }

    .sm\:gap-8 {
        gap: 2rem;
    }

    .sm\:space-x-2 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-x-reverse: 0;
        margin-right: calc(0.5rem * var(--tw-space-x-reverse));
        margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
    }

    .sm\:space-x-4 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-x-reverse: 0;
        margin-right: calc(1rem * var(--tw-space-x-reverse));
        margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
    }

    .sm\:space-y-0 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-y-reverse: 0;
        margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
        margin-bottom: calc(0px * var(--tw-space-y-reverse));
    }

    .sm\:space-y-2 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-y-reverse: 0;
        margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
        margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
    }

    .sm\:space-y-3 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-y-reverse: 0;
        margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
        margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
    }

    .sm\:space-y-6 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-y-reverse: 0;
        margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
        margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
    }

    .sm\:self-center {
        align-self: center;
    }

    .sm\:overflow-x-hidden {
        overflow-x: hidden;
    }

    .sm\:rounded-lg {
        border-radius: var(--radius);
    }

    .sm\:border-b-0 {
        border-bottom-width: 0px;
    }

    .sm\:border-r {
        border-right-width: 1px;
    }

    .sm\:p-10 {
        padding: 2.5rem;
    }

    .sm\:p-4 {
        padding: 1rem;
    }

    .sm\:p-5 {
        padding: 1.25rem;
    }

    .sm\:p-6 {
        padding: 1.5rem;
    }

    .sm\:px-6 {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .sm\:py-6 {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .sm\:pb-6 {
        padding-bottom: 1.5rem;
    }

    .sm\:pl-5 {
        padding-left: 1.25rem;
    }

    .sm\:pt-6 {
        padding-top: 1.5rem;
    }

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

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

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

    .sm\:text-\[11px\] {
        font-size: 11px;
    }

    .sm\:text-base {
        font-size: 1rem;
        line-height: 1.5rem;
    }

    .sm\:text-lg {
        font-size: 1.125rem;
        line-height: 1.75rem;
    }

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

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

    .sm\:opacity-0 {
        opacity: 0;
    }

    .group:hover .sm\:group-hover\:opacity-100 {
        opacity: 1;
    }

    .data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state="open"] {
        --tw-enter-translate-y: 100%;
    }
}

@media (min-width: 768px) {

    .md\:bottom-6 {
        bottom: 1.5rem;
    }

    .md\:left-64 {
        left: 16rem;
    }

    .md\:col-span-1 {
        grid-column: span 1 / span 1;
    }

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

    .md\:col-span-3 {
        grid-column: span 3 / span 3;
    }

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

    .md\:col-span-full {
        grid-column: 1 / -1;
    }

    .md\:block {
        display: block;
    }

    .md\:inline {
        display: inline;
    }

    .md\:flex {
        display: flex;
    }

    .md\:inline-flex {
        display: inline-flex;
    }

    .md\:table {
        display: table;
    }

    .md\:table-cell {
        display: table-cell;
    }

    .md\:grid {
        display: grid;
    }

    .md\:hidden {
        display: none;
    }

    .md\:h-\[600px\] {
        height: 600px;
    }

    .md\:min-h-0 {
        min-height: 0px;
    }

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

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

    .md\:w-56 {
        width: 14rem;
    }

    .md\:w-64 {
        width: 16rem;
    }

    .md\:w-\[180px\] {
        width: 180px;
    }

    .md\:w-\[200px\] {
        width: 200px;
    }

    .md\:w-\[220px\] {
        width: 220px;
    }

    .md\:w-\[380px\] {
        width: 380px;
    }

    .md\:w-\[400px\] {
        width: 400px;
    }

    .md\:w-auto {
        width: auto;
    }

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

    .md\:max-w-\[420px\] {
        max-width: 420px;
    }

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

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

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

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

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

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

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

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

    .md\:grid-cols-\[1\.4fr_1\.6fr_1fr_0\.6fr_auto\] {
        grid-template-columns: 1.4fr 1.6fr 1fr 0.6fr auto;
    }

    .md\:grid-cols-\[100px_1\.4fr_1fr_1fr_90px_90px_90px_90px_100px_36px\] {
        grid-template-columns: 100px 1.4fr 1fr 1fr 90px 90px 90px 90px 100px 36px;
    }

    .md\:grid-cols-\[160px_1fr_120px_auto_auto\] {
        grid-template-columns: 160px 1fr 120px auto auto;
    }

    .md\:grid-cols-\[1fr_220px_auto\] {
        grid-template-columns: 1fr 220px auto;
    }

    .md\:grid-cols-\[260px_1fr\] {
        grid-template-columns: 260px 1fr;
    }

    .md\:grid-cols-\[28px_140px_minmax\(200px\2c 1\.4fr\)_minmax\(160px\2c 1fr\)_120px_120px_140px_64px\] {
        grid-template-columns: 28px 140px minmax(200px,1.4fr) minmax(160px,1fr) 120px 120px 140px 64px;
    }

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

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

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

    .md\:justify-between {
        justify-content: space-between;
    }

    .md\:gap-0 {
        gap: 0px;
    }

    .md\:divide-x > :not([hidden]) ~ :not([hidden]) {
        --tw-divide-x-reverse: 0;
        border-right-width: calc(1px * var(--tw-divide-x-reverse));
        border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }

    .md\:divide-y-0 > :not([hidden]) ~ :not([hidden]) {
        --tw-divide-y-reverse: 0;
        border-top-width: calc(0px * calc(1 - var(--tw-divide-y-reverse)));
        border-bottom-width: calc(0px * var(--tw-divide-y-reverse));
    }

    .md\:divide-border > :not([hidden]) ~ :not([hidden]) {
        border-color: hsl(var(--border));
    }

    .md\:p-4 {
        padding: 1rem;
    }

    .md\:p-6 {
        padding: 1.5rem;
    }

    .md\:pb-0 {
        padding-bottom: 0px;
    }

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

    .md\:text-3xl {
        font-size: 1.875rem;
        line-height: 2.25rem;
    }

    .md\:text-base {
        font-size: 1rem;
        line-height: 1.5rem;
    }

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

    .md\:opacity-0 {
        opacity: 0;
    }

    .after\:md\:hidden::after {
        content: var(--tw-content);
        display: none;
    }

    .group:hover .md\:group-hover\:opacity-100 {
        opacity: 1;
    }

    .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:m-2 {
        margin: 0.5rem;
    }

    .peer[data-state="collapsed"][data-variant="inset"] ~ .md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2 {
        margin-left: 0.5rem;
    }

    .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:ml-0 {
        margin-left: 0px;
    }

    .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:rounded-xl {
        border-radius: 0.75rem;
    }

    .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\: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);
    }
}

@media (min-width: 1024px) {

    .lg\:inset-8 {
        inset: 2rem;
    }

    .lg\:col-span-1 {
        grid-column: span 1 / span 1;
    }

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

    .lg\:col-span-3 {
        grid-column: span 3 / span 3;
    }

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

    .lg\:col-span-8 {
        grid-column: span 8 / span 8;
    }

    .lg\:col-span-9 {
        grid-column: span 9 / span 9;
    }

    .lg\:-mx-8 {
        margin-left: -2rem;
        margin-right: -2rem;
    }

    .lg\:ml-0 {
        margin-left: 0px;
    }

    .lg\:block {
        display: block;
    }

    .lg\:flex {
        display: flex;
    }

    .lg\:inline-flex {
        display: inline-flex;
    }

    .lg\:table-cell {
        display: table-cell;
    }

    .lg\:inline-grid {
        display: inline-grid;
    }

    .lg\:hidden {
        display: none;
    }

    .lg\:max-h-none {
        max-height: none;
    }

    .lg\:w-2\/5 {
        width: 40%;
    }

    .lg\:w-3\/5 {
        width: 60%;
    }

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

    .lg\:w-\[320px\] {
        width: 320px;
    }

    .lg\:w-\[420px\] {
        width: 420px;
    }

    .lg\:w-\[440px\] {
        width: 440px;
    }

    .lg\:w-auto {
        width: auto;
    }

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

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

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

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

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

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

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

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

    .lg\:grid-cols-\[1fr_280px\] {
        grid-template-columns: 1fr 280px;
    }

    .lg\:grid-cols-\[1fr_320px\] {
        grid-template-columns: 1fr 320px;
    }

    .lg\:grid-cols-\[minmax\(0\2c 1\.75fr\)_minmax\(340px\2c 1fr\)\] {
        grid-template-columns: minmax(0,1.75fr) minmax(340px,1fr);
    }

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

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

    .lg\:items-start {
        align-items: flex-start;
    }

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

    .lg\:justify-end {
        justify-content: flex-end;
    }

    .lg\:justify-between {
        justify-content: space-between;
    }

    .lg\:gap-0 {
        gap: 0px;
    }

    .lg\:self-center {
        align-self: center;
    }

    .lg\:border-b-0 {
        border-bottom-width: 0px;
    }

    .lg\:border-r {
        border-right-width: 1px;
    }

    .lg\:border-sidebar-border\/50 {
        border-color: hsl(var(--sidebar-border) / 0.5);
    }

    .lg\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem;
    }

    .lg\:text-3xl {
        font-size: 1.875rem;
        line-height: 2.25rem;
    }
}

@media (min-width: 1280px) {

    .xl\:block {
        display: block;
    }

    .xl\:inline {
        display: inline;
    }

    .xl\:table-cell {
        display: table-cell;
    }

    .xl\:hidden {
        display: none;
    }

    .xl\:columns-2 {
        -moz-columns: 2;
             columns: 2;
    }

    .xl\:columns-3 {
        -moz-columns: 3;
             columns: 3;
    }

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

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

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

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

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

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

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

    .xl\:\[column-span\:all\] {
        -moz-column-span: all;
             column-span: all;
    }
}

@media print {

    .print\:relative {
        position: relative;
    }

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

    .print\:mt-16 {
        margin-top: 4rem;
    }

    .print\:mt-8 {
        margin-top: 2rem;
    }

    .print\:block {
        display: block;
    }

    .print\:hidden {
        display: none;
    }

    .print\:h-auto {
        height: auto;
    }

    .print\:break-inside-avoid {
        -moz-column-break-inside: avoid;
             break-inside: avoid;
    }

    .print\:overflow-visible {
        overflow: visible;
    }

    .print\:bg-gray-100 {
        --tw-bg-opacity: 1;
        background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
    }

    .print\:bg-gray-200 {
        --tw-bg-opacity: 1;
        background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
    }

    .print\:p-12 {
        padding: 3rem;
    }

    .print\:p-4 {
        padding: 1rem;
    }

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

.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar {
    display: none;
}

.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]) {
    background-color: hsl(var(--accent));
}

.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child {
    border-top-left-radius: calc(var(--radius) - 2px);
    border-bottom-left-radius: calc(var(--radius) - 2px);
}

.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child {
    border-top-right-radius: calc(var(--radius) - 2px);
    border-bottom-right-radius: calc(var(--radius) - 2px);
}

.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside) {
    background-color: hsl(var(--accent) / 0.5);
}

.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end) {
    border-top-right-radius: calc(var(--radius) - 2px);
    border-bottom-right-radius: calc(var(--radius) - 2px);
}

.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) {
    padding-right: 0px;
}

.\[\&\>button\.absolute\>svg\]\:h-5>button.absolute>svg {
    height: 1.25rem;
}

.\[\&\>button\.absolute\>svg\]\:w-5>button.absolute>svg {
    width: 1.25rem;
}

.\[\&\>button\.absolute\]\:right-4>button.absolute {
    right: 1rem;
}

.\[\&\>button\.absolute\]\:top-4>button.absolute {
    top: 1rem;
}

.\[\&\>button\.absolute\]\:z-20>button.absolute {
    z-index: 20;
}

.\[\&\>button\.absolute\]\:flex>button.absolute {
    display: flex;
}

.\[\&\>button\.absolute\]\:hidden>button.absolute {
    display: none;
}

.\[\&\>button\.absolute\]\:h-9>button.absolute {
    height: 2.25rem;
}

.\[\&\>button\.absolute\]\:w-9>button.absolute {
    width: 2.25rem;
}

.\[\&\>button\.absolute\]\:items-center>button.absolute {
    align-items: center;
}

.\[\&\>button\.absolute\]\:justify-center>button.absolute {
    justify-content: center;
}

.\[\&\>button\.absolute\]\:rounded-md>button.absolute {
    border-radius: calc(var(--radius) - 2px);
}

.\[\&\>button\.absolute\]\:border>button.absolute {
    border-width: 1px;
}

.\[\&\>button\.absolute\]\:border-border>button.absolute {
    border-color: hsl(var(--border));
}

.\[\&\>button\.absolute\]\:bg-background>button.absolute {
    background-color: hsl(var(--background));
}

.\[\&\>button\.absolute\]\:opacity-100>button.absolute {
    opacity: 1;
}

.\[\&\>button\.absolute\]\:hover\:bg-muted:hover>button.absolute {
    background-color: hsl(var(--muted));
}

.\[\&\>button\]\:hidden>button {
    display: none;
}

.\[\&\>button\]\:w-full>button {
    width: 100%;
}

.\[\&\>div\]\:bg-\[hsl\(var\(--warning\)\)\]>div {
    background-color: hsl(var(--warning));
}

.\[\&\>div\]\:bg-amber-500>div {
    --tw-bg-opacity: 1;
    background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}

.\[\&\>div\]\:bg-destructive>div {
    background-color: hsl(var(--destructive));
}

.\[\&\>div\]\:bg-green-500>div {
    --tw-bg-opacity: 1;
    background-color: rgb(34 197 94 / var(--tw-bg-opacity, 1));
}

.\[\&\>div\]\:bg-orange-500>div {
    --tw-bg-opacity: 1;
    background-color: rgb(249 115 22 / var(--tw-bg-opacity, 1));
}

.\[\&\>div\]\:bg-primary>div {
    background-color: hsl(var(--primary));
}

.\[\&\>header\>div\>span\:first-child\]\:\!h-auto>header>div>span:first-child {
    height: auto !important;
}

.\[\&\>header\>div\>span\:first-child\]\:\!w-auto>header>div>span:first-child {
    width: auto !important;
}

.\[\&\>header\>div\>span\:first-child\]\:\!bg-transparent>header>div>span:first-child {
    background-color: transparent !important;
}

.\[\&\>header\>div\>span\:first-child\]\:\!p-0>header>div>span:first-child {
    padding: 0px !important;
}

.\[\&\>ol\]\:my-1>ol {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.\[\&\>p\]\:my-1>p {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.\[\&\>span\:last-child\]\:truncate>span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.\[\&\>span\>button\]\:w-full>span>button {
    width: 100%;
}

.\[\&\>span\]\:line-clamp-1>span {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.\[\&\>span\]\:w-full>span {
    width: 100%;
}

.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div {
    --tw-translate-y: -3px;
    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));
}

.\[\&\>svg\]\:absolute>svg {
    position: absolute;
}

.\[\&\>svg\]\:left-4>svg {
    left: 1rem;
}

.\[\&\>svg\]\:top-4>svg {
    top: 1rem;
}

.\[\&\>svg\]\:hidden>svg {
    display: none;
}

.\[\&\>svg\]\:size-3\.5>svg {
    width: 0.875rem;
    height: 0.875rem;
}

.\[\&\>svg\]\:size-4>svg {
    width: 1rem;
    height: 1rem;
}

.\[\&\>svg\]\:h-2\.5>svg {
    height: 0.625rem;
}

.\[\&\>svg\]\:h-3>svg {
    height: 0.75rem;
}

.\[\&\>svg\]\:h-3\.5>svg {
    height: 0.875rem;
}

.\[\&\>svg\]\:h-5>svg {
    height: 1.25rem;
}

.\[\&\>svg\]\:h-6>svg {
    height: 1.5rem;
}

.\[\&\>svg\]\:w-2\.5>svg {
    width: 0.625rem;
}

.\[\&\>svg\]\:w-3>svg {
    width: 0.75rem;
}

.\[\&\>svg\]\:w-3\.5>svg {
    width: 0.875rem;
}

.\[\&\>svg\]\:w-5>svg {
    width: 1.25rem;
}

.\[\&\>svg\]\:w-6>svg {
    width: 1.5rem;
}

.\[\&\>svg\]\:shrink-0>svg {
    flex-shrink: 0;
}

.\[\&\>svg\]\:text-amber-600>svg {
    --tw-text-opacity: 1;
    color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.\[\&\>svg\]\:text-destructive>svg {
    color: hsl(var(--destructive));
}

.\[\&\>svg\]\:text-foreground>svg {
    color: hsl(var(--foreground));
}

.\[\&\>svg\]\:text-muted-foreground>svg {
    color: hsl(var(--muted-foreground));
}

.\[\&\>svg\]\:text-sidebar-accent-foreground>svg {
    color: hsl(var(--sidebar-accent-foreground));
}

.\[\&\>svg\~\*\]\:pl-7>svg~* {
    padding-left: 1.75rem;
}

.\[\&\>tbody\>tr\>td\]\:py-1>tbody>tr>td {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.\[\&\>thead\>tr\>th\]\:py-1>thead>tr>th {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.\[\&\>thead\>tr\>th\]\:text-\[10px\]>thead>tr>th {
    font-size: 10px;
}

.\[\&\>tr\]\:last\:border-b-0:last-child>tr {
    border-bottom-width: 0px;
}

.\[\&\>ul\]\:my-1>ul {
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
}

.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div {
    --tw-rotate: 90deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg {
    --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));
}

.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text {
    fill: hsl(var(--muted-foreground));
}

.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke='#ccc'] {
    stroke: hsl(var(--border) / 0.5);
}

.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor {
    stroke: hsl(var(--border));
}

.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke='#fff'] {
    stroke: transparent;
}

.\[\&_\.recharts-layer\]\:outline-none .recharts-layer {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke='#ccc'] {
    stroke: hsl(var(--border));
}

.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector {
    fill: hsl(var(--muted));
}

.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor {
    fill: hsl(var(--muted));
}

.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke='#ccc'] {
    stroke: hsl(var(--border));
}

.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke='#fff'] {
    stroke: transparent;
}

.\[\&_\.recharts-sector\]\:outline-none .recharts-sector {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.\[\&_\.recharts-surface\]\:outline-none .recharts-surface {
    outline: 2px solid transparent;
    outline-offset: 2px;
}

.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.\[\&_\[cmdk-group-heading\]\]\:px-3 [cmdk-group-heading] {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
    padding-top: 0.375rem;
    padding-bottom: 0.375rem;
}

.\[\&_\[cmdk-group-heading\]\]\:text-\[10px\] [cmdk-group-heading] {
    font-size: 10px;
}

.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
    font-size: 0.75rem;
    line-height: 1rem;
}

.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
    font-weight: 500;
}

.\[\&_\[cmdk-group-heading\]\]\:font-semibold [cmdk-group-heading] {
    font-weight: 600;
}

.\[\&_\[cmdk-group-heading\]\]\:uppercase [cmdk-group-heading] {
    text-transform: uppercase;
}

.\[\&_\[cmdk-group-heading\]\]\:tracking-wider [cmdk-group-heading] {
    letter-spacing: 0.05em;
}

.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
    color: hsl(var(--muted-foreground));
}

.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden]) ~[cmdk-group] {
    padding-top: 0px;
}

.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
    height: 1.25rem;
}

.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
    width: 1.25rem;
}

.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
    height: 3rem;
}

.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
    height: 1.25rem;
}

.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
    width: 1.25rem;
}

.\[\&_blockquote\]\:border-l-2 blockquote {
    border-left-width: 2px;
}

.\[\&_blockquote\]\:border-primary\/30 blockquote {
    border-color: hsl(var(--primary) / 0.3);
}

.\[\&_blockquote\]\:pl-4 blockquote {
    padding-left: 1rem;
}

.\[\&_blockquote\]\:italic blockquote {
    font-style: italic;
}

.\[\&_blockquote\]\:text-muted-foreground blockquote {
    color: hsl(var(--muted-foreground));
}

.\[\&_h2\]\:mb-2 h2 {
    margin-bottom: 0.5rem;
}

.\[\&_h2\]\:mt-4 h2 {
    margin-top: 1rem;
}

.\[\&_h2\]\:text-base h2 {
    font-size: 1rem;
    line-height: 1.5rem;
}

.\[\&_h2\]\:font-bold h2 {
    font-weight: 700;
}

.\[\&_h3\]\:mb-1 h3 {
    margin-bottom: 0.25rem;
}

.\[\&_h3\]\:mt-3 h3 {
    margin-top: 0.75rem;
}

.\[\&_h3\]\:text-sm h3 {
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.\[\&_h3\]\:font-semibold h3 {
    font-weight: 600;
}

.\[\&_li\]\:my-0\.5 li {
    margin-top: 0.125rem;
    margin-bottom: 0.125rem;
}

.\[\&_ol\]\:list-decimal ol {
    list-style-type: decimal;
}

.\[\&_ol\]\:pl-5 ol {
    padding-left: 1.25rem;
}

.\[\&_p\]\:leading-relaxed p {
    line-height: 1.625;
}

.\[\&_strong\]\:font-semibold strong {
    font-weight: 600;
}

.\[\&_strong\]\:text-foreground strong {
    color: hsl(var(--foreground));
}

.\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
}

.\[\&_svg\]\:size-4 svg {
    width: 1rem;
    height: 1rem;
}

.\[\&_svg\]\:h-3\.5 svg {
    height: 0.875rem;
}

.\[\&_svg\]\:w-3\.5 svg {
    width: 0.875rem;
}

.\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
}

.\[\&_td\]\:px-1\.5 td {
    padding-left: 0.375rem;
    padding-right: 0.375rem;
}

.\[\&_td\]\:py-0\.5 td {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

.\[\&_td\]\:text-xs td {
    font-size: 0.75rem;
    line-height: 1rem;
}

.\[\&_th\]\:h-6 th {
    height: 1.5rem;
}

.\[\&_th\]\:px-1\.5 th {
    padding-left: 0.375rem;
    padding-right: 0.375rem;
}

.\[\&_th\]\:py-0 th {
    padding-top: 0px;
    padding-bottom: 0px;
}

.\[\&_th\]\:py-0\.5 th {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

.\[\&_th\]\:text-\[11px\] th {
    font-size: 11px;
}

.\[\&_th\]\:text-xs th {
    font-size: 0.75rem;
    line-height: 1rem;
}

.\[\&_th\]\:font-medium th {
    font-weight: 500;
}

.\[\&_th\]\:uppercase th {
    text-transform: uppercase;
}

.\[\&_th\]\:tracking-wide th {
    letter-spacing: 0.025em;
}

.\[\&_th\]\:text-slate-100 th {
    --tw-text-opacity: 1;
    color: rgb(241 245 249 / var(--tw-text-opacity, 1));
}

.\[\&_tr\:last-child\]\:border-0 tr:last-child {
    border-width: 0px;
}

.\[\&_tr\]\:border-b tr {
    border-bottom-width: 1px;
}

.\[\&_ul\]\:list-disc ul {
    list-style-type: disc;
}

.\[\&_ul\]\:pl-5 ul {
    padding-left: 1.25rem;
}

@media(hover:none) {

    .\[\@media\(hover\:none\)\]\:opacity-100 {
        opacity: 1;
    }
}

[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
    right: -0.5rem;
}

[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize {
    cursor: e-resize;
}

[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize {
    cursor: w-resize;
}

[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
    left: -0.5rem;
}

[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
    cursor: w-resize;
}

[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize {
    cursor: e-resize;
}

[data-state=open] .\[\[data-state\=open\]_\&\]\:rotate-180 {
    --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));
}
.mapboxgl-map{font:12px/20px Helvetica Neue,Arial,Helvetica,sans-serif;overflow:hidden;position:relative;-webkit-tap-highlight-color:rgb(0 0 0/0)}.mapboxgl-canvas{left:0;position:absolute;top:0}.mapboxgl-map:-webkit-full-screen{height:100%;width:100%}.mapboxgl-canary{background-color:salmon}.mapboxgl-canvas-container.mapboxgl-interactive,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer{cursor:pointer}.mapboxgl-canvas-container.mapboxgl-interactive:active,.mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active{cursor:grabbing}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-canvas-container.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:pinch-zoom}.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,.mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas{touch-action:none}.mapboxgl-ctrl-bottom,.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right,.mapboxgl-ctrl-left,.mapboxgl-ctrl-right,.mapboxgl-ctrl-top,.mapboxgl-ctrl-top-left,.mapboxgl-ctrl-top-right{pointer-events:none;position:absolute;z-index:2}.mapboxgl-ctrl-top-left{left:0;top:0}.mapboxgl-ctrl-top{left:50%;top:0;transform:translateX(-50%)}.mapboxgl-ctrl-top-right{right:0;top:0}.mapboxgl-ctrl-right{right:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl-bottom-right{bottom:0;right:0}.mapboxgl-ctrl-bottom{bottom:0;left:50%;transform:translateX(-50%)}.mapboxgl-ctrl-bottom-left{bottom:0;left:0}.mapboxgl-ctrl-left{left:0;top:50%;transform:translateY(-50%)}.mapboxgl-ctrl{clear:both;pointer-events:auto;transform:translate(0)}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{float:left;margin:10px 0 0 10px}.mapboxgl-ctrl-top .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{float:right;margin:10px 10px 0 0}.mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,.mapboxgl-ctrl-right .mapboxgl-ctrl{float:right;margin:0 10px 10px 0}.mapboxgl-ctrl-bottom .mapboxgl-ctrl{float:left;margin:10px 0}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,.mapboxgl-ctrl-left .mapboxgl-ctrl{float:left;margin:0 0 10px 10px}.mapboxgl-ctrl-group{background:#fff;border-radius:4px}.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px #0000001a}@media (-ms-high-contrast:active){.mapboxgl-ctrl-group:not(:empty){box-shadow:0 0 0 2px ButtonText}}.mapboxgl-ctrl-group button{background-color:initial;border:0;box-sizing:border-box;cursor:pointer;display:block;height:29px;outline:none;overflow:hidden;padding:0;width:29px}.mapboxgl-ctrl-group button+button{border-top:1px solid #ddd}.mapboxgl-ctrl button .mapboxgl-ctrl-icon{background-position:50%;background-repeat:no-repeat;display:block;height:100%;width:100%}@media (-ms-high-contrast:active){.mapboxgl-ctrl-icon{background-color:initial}.mapboxgl-ctrl-group button+button{border-top:1px solid ButtonText}}.mapboxgl-ctrl-attrib-button:focus,.mapboxgl-ctrl-group button:focus{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl button:disabled{cursor:not-allowed}.mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon{opacity:.25}.mapboxgl-ctrl-group button:first-child{border-radius:4px 4px 0 0}.mapboxgl-ctrl-group button:last-child{border-radius:0 0 4px 4px}.mapboxgl-ctrl-group button:only-child{border-radius:inherit}.mapboxgl-ctrl button:not(:disabled):hover{background-color:#0000000d}.mapboxgl-ctrl-group button:focus:focus-visible{box-shadow:0 0 2px 2px #0096ff}.mapboxgl-ctrl-group button:focus:not(:focus-visible){box-shadow:none}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-out .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10 13c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h9c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-9z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-zoom-in .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M14.5 8.5c-.75 0-1.5.75-1.5 1.5v3h-3c-.75 0-1.5.75-1.5 1.5S9.25 16 10 16h3v3c0 .75.75 1.5 1.5 1.5S16 19.75 16 19v-3h3c.75 0 1.5-.75 1.5-1.5S19.75 13 19 13h-3v-3c0-.75-.75-1.5-1.5-1.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-fullscreen .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M24 16v5.5c0 1.75-.75 2.5-2.5 2.5H16v-1l3-1.5-4-5.5 1-1 5.5 4 1.5-3h1zM6 16l1.5 3 5.5-4 1 1-4 5.5 3 1.5v1H7.5C5.75 24 5 23.25 5 21.5V16h1zm7-11v1l-3 1.5 4 5.5-1 1-5.5-4L6 13H5V7.5C5 5.75 5.75 5 7.5 5H13zm11 2.5c0-1.75-.75-2.5-2.5-2.5H16v1l3 1.5-4 5.5 1 1 5.5-4 1.5 3h1V7.5z'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-shrink .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M18.5 16c-1.75 0-2.5.75-2.5 2.5V24h1l1.5-3 5.5 4 1-1-4-5.5 3-1.5v-1h-5.5zM13 18.5c0-1.75-.75-2.5-2.5-2.5H5v1l3 1.5L4 24l1 1 5.5-4 1.5 3h1v-5.5zm3-8c0 1.75.75 2.5 2.5 2.5H24v-1l-3-1.5L25 5l-1-1-5.5 4L17 5h-1v5.5zM10.5 13c1.75 0 2.5-.75 2.5-2.5V5h-1l-1.5 3L5 4 4 5l4 5.5L5 12v1h5.5z'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23333' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23999'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-compass .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 29 29'%3E%3Cpath d='M10.5 14l4-8 4 8h-8z'/%3E%3Cpath id='south' d='M10.5 16l4 8 4-8h-8z' fill='%23ccc'/%3E%3C/svg%3E")}}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23333'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-waiting .mapboxgl-ctrl-icon{animation:mapboxgl-spin 2s linear infinite}@media (-ms-high-contrast:active){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23fff'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23999'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-active-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e58978'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%2333b5e5'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate.mapboxgl-ctrl-geolocate-background-error .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23e54e33'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2' display='none'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23000'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' display='none'/%3E%3C/svg%3E")}.mapboxgl-ctrl button.mapboxgl-ctrl-geolocate:disabled .mapboxgl-ctrl-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill='%23666'%3E%3Cpath d='M10 4C9 4 9 5 9 5v.1A5 5 0 0 0 5.1 9H5s-1 0-1 1 1 1 1 1h.1A5 5 0 0 0 9 14.9v.1s0 1 1 1 1-1 1-1v-.1a5 5 0 0 0 3.9-3.9h.1s1 0 1-1-1-1-1-1h-.1A5 5 0 0 0 11 5.1V5s0-1-1-1zm0 2.5a3.5 3.5 0 1 1 0 7 3.5 3.5 0 1 1 0-7z'/%3E%3Ccircle id='dot' cx='10' cy='10' r='2'/%3E%3Cpath id='stroke' d='M14 5l1 1-9 9-1-1 9-9z' fill='%23f00'/%3E%3C/svg%3E")}}@keyframes mapboxgl-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='0.3' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='0.9' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;cursor:pointer;display:block;height:23px;margin:0 0 -4px -4px;overflow:hidden;width:88px}a.mapboxgl-ctrl-logo.mapboxgl-compact{width:23px}@media (-ms-high-contrast:active){a.mapboxgl-ctrl-logo{background-color:initial;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23000' stroke-width='3'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23fff'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}@media (-ms-high-contrast:black-on-white){a.mapboxgl-ctrl-logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd' viewBox='0 0 88 23'%3E%3Cdefs%3E%3Cpath id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/%3E%3Cpath id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/%3E%3C/defs%3E%3Cmask id='clip'%3E%3Crect x='0' y='0' width='100%25' height='100%25' fill='white'/%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/mask%3E%3Cg id='outline' opacity='1' stroke='%23fff' stroke-width='3' fill='%23fff'%3E%3Ccircle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/%3E%3Cuse xlink:href='%23text' mask='url(%23clip)'/%3E%3C/g%3E%3Cg id='fill' opacity='1' fill='%23000'%3E%3Cuse xlink:href='%23logo'/%3E%3Cuse xlink:href='%23text'/%3E%3C/g%3E%3C/svg%3E")}}.mapboxgl-ctrl.mapboxgl-ctrl-attrib{background-color:#ffffff80;margin:0;padding:0 5px}@media screen{.mapboxgl-ctrl-attrib.mapboxgl-compact{background-color:#fff;border-radius:12px;box-sizing:initial;margin:10px;min-height:20px;padding:2px 24px 2px 0;position:relative}.mapboxgl-ctrl-attrib.mapboxgl-compact-show{padding:2px 28px 2px 8px;visibility:visible}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button{background-color:#ffffff80;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button{background-color:#0000000d}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{bottom:0;left:0}.mapboxgl-ctrl-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after{left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E")}}.mapboxgl-ctrl-attrib a{color:#000000bf;text-decoration:none}.mapboxgl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-ctrl-attrib .mapbox-improve-map{font-weight:700;margin-left:2px}.mapboxgl-attrib-empty{display:none}.mapboxgl-ctrl-scale{background-color:#ffffffbf;border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px;white-space:nowrap}.mapboxgl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip{border:10px solid #0000;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button{background-color:initial;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover{background-color:#0000000d}.mapboxgl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px #0000001a;padding:10px 10px 15px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer{display:none}.mapboxgl-marker{left:0;opacity:1;position:absolute;top:0;transition:opacity .2s;will-change:transform}.mapboxgl-user-location-dot,.mapboxgl-user-location-dot:before{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before{animation:mapboxgl-user-location-dot-pulse 2s infinite;content:"";position:absolute}.mapboxgl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #00000059;box-sizing:border-box;content:"";height:19px;left:-2px;position:absolute;top:-2px;width:19px}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading{height:0;width:0}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after,.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-bottom:7.5px solid #4aa1eb;content:"";position:absolute}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:before{border-left:7.5px solid #0000;transform:translateY(-28px) skewY(-20deg)}.mapboxgl-user-location-show-heading .mapboxgl-user-location-heading:after{border-right:7.5px solid #0000;transform:translate(7.5px,-28px) skewY(20deg)}@keyframes mapboxgl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}@media print{.mapbox-improve-map{display:none}}.mapboxgl-scroll-zoom-blocker,.mapboxgl-touch-pan-blocker{align-items:center;background:#000000b3;color:#fff;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;height:100%;justify-content:center;left:0;opacity:0;pointer-events:none;position:absolute;text-align:center;top:0;transition:opacity .75s ease-in-out;transition-delay:1s;width:100%}.mapboxgl-scroll-zoom-blocker-show,.mapboxgl-touch-pan-blocker-show{opacity:1;transition:opacity .1s ease-in-out}.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page,.mapboxgl-canvas-container.mapboxgl-touch-pan-blocker-override.mapboxgl-scrollable-page .mapboxgl-canvas{touch-action:pan-x pan-y}.mapboxgl-ctrl-separator{background-color:#e0e0e0;height:1px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button{color:#333;font-size:18px;font-weight:700;height:44px;width:44px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button:hover{background-color:#f5f5f5}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected{background-color:#4a5568;color:#fff}.mapboxgl-ctrl button.mapboxgl-ctrl-level-button-selected:hover{background-color:#2d3748}