/* Import Nextra theme styles */
/* @import 'nextra-theme-docs/dist/style.css'; */
/* Your custom styles */
@media print {
  /* Hide nav chrome */
  aside, nav, header, .hidden-print { display: none !important; }
  main { width: 100% !important; max-width: none !important; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 0.8em; color: #666; }
  pre, code { -moz-column-break-inside: avoid; break-inside: avoid; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
/**
 * Advanced Accessibility Styles
 * Philosophy: Progressive enhancement for accessibility features
 */
/* Enhanced focus management */
.enhanced-focus *:focus-visible {
  outline: 3px solid hsl(var(--primary)) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
  box-shadow: 0 0 0 1px hsl(var(--background)) !important;
}
/* High contrast mode overrides */
.high-contrast {
  --background: var(--contrast-surface);
  --foreground: var(--contrast-foreground);
  --card: var(--contrast-surface);
  --card-foreground: var(--contrast-foreground);
  --popover: var(--contrast-surface);
  --popover-foreground: var(--contrast-foreground);
  --primary: var(--mint-11);
  --primary-foreground: var(--contrast-surface);
  --secondary: var(--gray-6);
  --secondary-foreground: var(--contrast-foreground);
  --muted: var(--gray-5);
  --muted-foreground: var(--contrast-foreground);
  --accent: var(--mint-11);
  --accent-foreground: var(--contrast-surface);
  --destructive: var(--error-400);
  --destructive-foreground: var(--contrast-surface);
  --success: var(--green-11);
  --success-foreground: var(--contrast-surface);
  --warning: var(--warning-400);
  --warning-foreground: var(--contrast-surface);
  --info: var(--info-400);
  --info-foreground: var(--contrast-surface);
  --border: var(--gray-8);
  --input: var(--gray-7);
  --ring: var(--mint-11);
}
.high-contrast * {
  border-color: hsl(var(--border)) !important;
}
.high-contrast *:focus-visible {
  outline: 4px solid hsl(var(--mint-11)) !important;
  outline-offset: 2px !important;
  background: hsl(var(--contrast-surface)) !important;
  color: hsl(var(--contrast-foreground)) !important;
}
/* Reduced motion preferences */
.reduce-motion * {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}
.reduce-motion *:hover {
  transform: none !important;
}
/* Large text mode */
.large-text {
  font-size: 125% !important;
}
.large-text h1 { font-size: 2.5rem !important; }
.large-text h2 { font-size: 2rem !important; }
.large-text h3 { font-size: 1.75rem !important; }
.large-text h4 { font-size: 1.5rem !important; }
.large-text p, .large-text div { font-size: 1.125rem !important; }
.large-text button { font-size: 1.125rem !important; padding: 0.75rem 1.5rem !important; }
/* Enhanced focus indicators */
.focus-visible-always *:focus {
  outline: 3px solid hsl(var(--primary)) !important;
  outline-offset: 2px !important;
  border-radius: 4px !important;
}
/* Screen reader optimizations */
.screen-reader [role="status"],
.screen-reader [role="alert"],
.screen-reader [aria-live] {
  /* Ensure live regions are properly styled */
  position: relative;
}
/* Skip links styling */
.skip-links a {
  transform: translateY(-100%);
  transition: transform 0.15s ease-in-out;
}
.skip-links a:focus {
  transform: translateY(0);
}
/* Reduced data mode */
.reduced-data img,
.reduced-data video,
.reduced-data iframe {
  display: none;
}
.reduced-data::before {
  content: "Image hidden (reduced data mode)";
  display: block;
  padding: 1rem;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border: 1px dashed hsl(var(--border));
  border-radius: 4px;
  text-align: center;
  font-size: 0.875rem;
}
/* Enhanced table accessibility */
table[role="table"] th {
  position: relative;
}
table[role="table"] th[aria-sort="ascending"]::after {
  content: " ↑";
  font-weight: bold;
  color: hsl(var(--primary));
}
table[role="table"] th[aria-sort="descending"]::after {
  content: " ↓";
  font-weight: bold;
  color: hsl(var(--primary));
}
/* Progress indicator accessibility */
[role="progressbar"] {
  position: relative;
  overflow: hidden;
}
[role="progressbar"]::after {
  content: attr(aria-label);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.75rem;
  font-weight: 500;
  color: hsl(var(--primary-foreground));
  text-shadow: 0 1px 2px hsl(var(--a11y-bg-hc) / 0.1);
  pointer-events: none;
}
/* Form field error styling */
[aria-invalid="true"] {
  border-color: hsl(var(--destructive)) !important;
  box-shadow: 0 0 0 1px hsl(var(--destructive)) !important;
}
[aria-invalid="true"]:focus-visible {
  outline-color: hsl(var(--destructive)) !important;
  box-shadow: 0 0 0 3px hsl(var(--destructive) / 0.2) !important;
}
/* Enhanced button accessibility */
button[aria-pressed="true"] {
  background: hsl(var(--primary)) !important;
  color: hsl(var(--primary-foreground)) !important;
}
button[aria-expanded] {
  transition: background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease;
}
button[aria-expanded="true"] {
  background-color: hsl(var(--muted) / 0.45);
  color: hsl(var(--foreground));
  box-shadow: inset 0 0 0 1px hsl(var(--primary) / 0.35);
}
/* Toast/notification accessibility */
[role="alert"] {
  border-left: 4px solid;
}
[role="alert"].success {
  border-left-color: hsl(var(--success));
}
[role="alert"].warning {
  border-left-color: hsl(var(--warning));
}
[role="alert"].error {
  border-left-color: hsl(var(--destructive));
}
[role="alert"].info {
  border-left-color: hsl(var(--info));
}
/* Loading state accessibility */
[aria-busy="true"] {
  position: relative;
  pointer-events: none;
  opacity: 0.7;
}
[aria-busy="true"]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    45deg,
    transparent,
    transparent 4px,
    hsl(var(--muted) / 0.1) 4px,
    hsl(var(--muted) / 0.1) 8px
  );
  animation: loading-pattern 1s linear infinite;
}
@keyframes loading-pattern {
  0% { background-position: 0 0; }
  100% { background-position: 8px 8px; }
}
/* Respect reduced motion for loading animation */
.reduce-motion [aria-busy="true"]::after {
  animation: none;
  background: hsl(var(--muted) / 0.2);
}
/* Landmark styling for debugging/development */
.debug-landmarks main::before {
  content: "MAIN";
  position: absolute;
  top: 0;
  left: 0;
  background: hsl(var(--info));
  color: white;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: bold;
  z-index: 9999;
}
.debug-landmarks nav::before {
  content: "NAV";
  position: absolute;
  top: 0;
  left: 0;
  background: hsl(var(--success));
  color: white;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: bold;
  z-index: 9999;
}
.debug-landmarks aside::before {
  content: "ASIDE";
  position: absolute;
  top: 0;
  left: 0;
  background: hsl(var(--accent));
  color: white;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: bold;
  z-index: 9999;
}
/* Typography utilities generated for the design system.
   This file intentionally avoids Tailwind-specific @apply so it can be
   imported as a vanilla stylesheet. All measurements align with the
   modular scale documented in `docs/design-tokens.md`. */
:root {
  --heading-1-size: clamp(2.25rem, 2vw + 1.8rem, 2.75rem);
  --heading-1-line: 1.25;
  --heading-2-size: clamp(1.875rem, 1.5vw + 1.5rem, 2.25rem);
  --heading-2-line: 1.3;
  --heading-3-size: clamp(1.5rem, 1vw + 1.35rem, 1.875rem);
  --heading-3-line: 1.35;
  --heading-4-size: 1.125rem;
  --heading-4-line: 1.4;
  --body-lg-size: 1rem;
  --body-lg-line: 1.6;
  --body-size: 0.9375rem;
  --body-line: 1.6;
  --body-sm-size: 0.8125rem;
  --body-sm-line: 1.5;
  --caption-size: 0.75rem;
  --caption-line: 1.5;
}
.heading-1 {
  font-size: var(--heading-1-size);
  line-height: var(--heading-1-line);
  font-weight: 600;
  letter-spacing: -0.01em;
  color: hsl(var(--foreground));
}
.heading-2 {
  font-size: var(--heading-2-size);
  line-height: var(--heading-2-line);
  font-weight: 600;
  letter-spacing: -0.005em;
  color: hsl(var(--foreground));
}
.heading-3 {
  font-size: var(--heading-3-size);
  line-height: var(--heading-3-line);
  font-weight: 600;
  color: hsl(var(--foreground));
}
.heading-4 {
  font-size: var(--heading-4-size);
  line-height: var(--heading-4-line);
  font-weight: 600;
  color: hsl(var(--foreground));
}
.body-lg {
  font-size: var(--body-lg-size);
  line-height: var(--body-lg-line);
  color: hsl(var(--foreground));
}
.body {
  font-size: var(--body-size);
  line-height: var(--body-line);
  color: hsl(var(--foreground));
}
.body-sm {
  font-size: var(--body-sm-size);
  line-height: var(--body-sm-line);
  color: hsl(var(--foreground-secondary));
}
.caption {
  font-size: var(--caption-size);
  line-height: var(--caption-line);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: hsl(var(--foreground-tertiary));
}
.code-inline {
  font-family: var(--font-mono, 'JetBrains Mono', 'SFMono-Regular', ui-monospace, monospace);
  font-size: 0.875rem;
  background-color: hsl(var(--muted) / 0.6);
  color: hsl(var(--foreground-secondary));
  padding: 0.125rem 0.375rem;
  border-radius: 0.25rem;
}
.eyebrow {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: hsl(var(--foreground-tertiary));
}
.stat-value {
  font-size: clamp(2rem, 2.3vw + 1.4rem, 2.75rem);
  line-height: 1.2;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.stat-subtitle {
  font-size: 0.8125rem;
  color: hsl(var(--foreground-tertiary));
}
.text-balance {
  text-wrap: balance;
}
.measure-comfortable {
  max-width: 65ch;
}
*, ::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: var(--font-inter), Inter, system-ui, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, 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;
}
* { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
/* === MOTION UTILITIES === */
@media (prefers-reduced-motion: reduce) {

        *,
        *::before,
        *::after {
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
            scroll-behavior: auto !important;
        }
    }
/* Motion utility classes */
.duration-fast { transition-duration: var(--duration-fast); }
.duration-base { transition-duration: var(--duration-base); }
.duration-slow { transition-duration: var(--duration-slow); }
.ease-standard { transition-timing-function: var(--ease-standard); }
.ease-decel { transition-timing-function: var(--ease-decel); }
.ease-spring { transition-timing-function: var(--ease-spring); }
/* === GRADIENT SYSTEM === */
.gradient-surface {
        position: relative;
        color: hsl(var(--foreground));
        isolation: isolate;
    }
.gradient-surface::before {
        content: '';
        position: absolute;
        inset: 0;
        z-index: -1;
        border-radius: inherit;
        background-image: linear-gradient(135deg,
                hsl(var(--gradient-from)) 0%,
                hsl(var(--gradient-to)) 100%);
    }
.gradient-surface[data-gradient='brand-1'] {
        --gradient-from: var(--gradient-brand-1-from);
        --gradient-to: var(--gradient-brand-1-to);
    }
.gradient-surface[data-gradient='ocean'] {
        --gradient-from: var(--gradient-ocean-from);
        --gradient-to: var(--gradient-ocean-to);
    }
.gradient-surface[data-gradient='aurora'] {
        --gradient-from: var(--gradient-aurora-from);
        --gradient-to: var(--gradient-aurora-to);
    }
.gradient-surface[data-gradient='sunset'] {
        --gradient-from: var(--gradient-sunset-from);
        --gradient-to: var(--gradient-sunset-to);
    }
.gradient-surface[data-overlay='true']::after {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: hsl(var(--gradient-overlay));
    }
/* Subtle gradient for dashboard backgrounds only */
.gradient-subtle {
        background: linear-gradient(135deg,
                hsl(var(--background)) 0%,
                hsl(var(--background-secondary)) 100%);
    }
body { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
        /* Enhanced readability with optimized line height and letter spacing */
        line-height: 1.7; /* Increased for readability */
        letter-spacing: 0.01em;
}
a { outline: 2px solid transparent; outline-offset: 2px;
}
a: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); --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1)); --tw-ring-offset-width: 2px; --tw-ring-offset-color: hsl(var(--background) / 1);
}
a {
        color: hsl(var(--link));
        text-underline-offset: 2px;
        transition: color 0.15s ease-in-out, text-decoration-color 0.15s ease-in-out;
    }
a:hover, a:focus-visible {
        text-decoration: underline;
    }
/* High contrast mode adjustments */
@media (prefers-contrast: more) {
      a { text-decoration: underline; }
      :root { --a11y-outline: var(--contrast-foreground); }
      *:focus-visible { outline: 2px solid hsl(var(--a11y-outline-hc)); outline-offset: 2px; }
    }
kbd { display: inline-flex; align-items: center; border-radius: 0.25rem; border-width: 1px; background-color: hsl(var(--muted) / 0.5); padding-left: 0.25rem; padding-right: 0.25rem; font-size: 10px; font-weight: 500; --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
/* Enhanced gradient surfaces with better color harmony */
/* Brand color tokens */
/* Map legacy social brand fills to tokens */
/* Also allow currentColor override for brand icons */
/* Removed currentColor overrides for brand icons to avoid conflicts; using token mappings below */
svg [fill="#4285F4"] { fill: hsl(var(--brand-google-blue)) !important; }
svg [fill="#34A853"] { fill: hsl(var(--brand-google-green)) !important; }
svg [fill="#FBBC05"] { fill: hsl(var(--brand-google-yellow)) !important; }
svg [fill="#EA4335"] { fill: hsl(var(--brand-google-red)) !important; }
svg [stop-color="#ffffff"], svg [stopColor="#ffffff"] { stop-color: hsl(var(--brand-white)) !important; }
:root {
        --brand-google-blue: 217 89% 60%;
        --brand-google-green: 142 56% 41%;
        --brand-google-yellow: 45 96% 49%;
        --brand-google-red: 4 83% 57%;
        --brand-white: 0 0% 100%;
    }
.gradient-surface-dark {
        background:
            radial-gradient(40% 30% at 20% 10%, hsl(var(--primary) / 0.06), transparent 70%),
            radial-gradient(35% 30% at 80% 20%, hsl(var(--accent) / 0.09), transparent 70%),
            radial-gradient(30% 40% at 50% 90%, hsl(var(--info) / 0.05), transparent 70%);
    }
.gradient-surface {
        background:
            radial-gradient(40% 30% at 20% 10%, hsl(var(--primary) / 0.08), transparent 70%),
            radial-gradient(35% 30% at 80% 20%, hsl(var(--accent) / 0.12), transparent 70%),
            radial-gradient(60% 50% at 50% 100%, hsl(var(--chart-1) / 0.06), transparent 70%);
    }
/* Preset-specific variants with improved psychological impact */
:root[data-gradient="aurora"] .gradient-surface {
        background:
            radial-gradient(40% 30% at 20% 10%, hsl(var(--primary) / 0.08), transparent 70%),
            radial-gradient(35% 30% at 80% 20%, hsl(var(--accent) / 0.12), transparent 70%),
            radial-gradient(60% 50% at 50% 100%, hsl(var(--success) / 0.06), transparent 70%);
    }
:root[data-gradient="mesh"] .gradient-surface {
        background:
            radial-gradient(35rem 20rem at 20% 20%, hsl(var(--chart-1) / 0.12), transparent 70%),
            radial-gradient(35rem 20rem at 80% 30%, hsl(var(--chart-2) / 0.10), transparent 70%),
            radial-gradient(35rem 20rem at 50% 90%, hsl(var(--chart-4) / 0.08), transparent 70%);
    }
:root[data-gradient="beam"] .gradient-surface {
        background:
            radial-gradient(50% 40% at 50% 50%, hsl(var(--primary) / 0.10), transparent 70%),
            conic-gradient(from 200deg at 50% 50%, hsl(var(--primary) / 0.8) 0deg, transparent 240deg);
        -webkit-mask-image: radial-gradient(ellipse at center, hsl(var(--background)), transparent 72%);
        mask-image: radial-gradient(ellipse at center, hsl(var(--background)), transparent 72%);
    }
:root[data-gradient="conic"] .gradient-surface {
        background:
            radial-gradient(60% 50% at 50% 60%, hsl(var(--accent) / 0.08), transparent 70%),
            conic-gradient(at 50% 50%,
                hsl(var(--primary) / 0.4),
                hsl(var(--accent) / 0.3),
                hsl(var(--secondary) / 0.2),
                hsl(var(--primary) / 0.4));
    }
:root[data-gradient="radial"] .gradient-surface {
        background:
            radial-gradient(circle at 50% 20%, hsl(var(--primary) / 0.10), transparent 40%),
            radial-gradient(circle at 80% 80%, hsl(var(--accent) / 0.08), transparent 50%);
    }
.\!container { width: 100% !important;
}
.container { width: 100%;
}
@media (min-width: 640px) {
  .\!container { max-width: 640px !important;
  }
  .container { max-width: 640px;
  }
}
@media (min-width: 768px) {
  .\!container { max-width: 768px !important;
  }
  .container { max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .\!container { max-width: 1024px !important;
  }
  .container { max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .\!container { max-width: 1280px !important;
  }
  .container { max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .\!container { max-width: 1536px !important;
  }
  .container { max-width: 1536px;
  }
}
.prose { color: var(--tw-prose-body); max-width: 65ch;
}
.prose :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em;
}
.prose :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-lead); font-size: 1.25em; line-height: 1.6; margin-top: 1.2em; margin-bottom: 1.2em;
}
.prose :where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-links); text-decoration: underline; font-weight: 500;
}
.prose :where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-bold); font-weight: 600;
}
.prose :where(a strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(blockquote strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(thead th strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: decimal; margin-top: 1.25em; margin-bottom: 1.25em; padding-inline-start: 1.625em;
}
.prose :where(ol[type="A"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: upper-alpha;
}
.prose :where(ol[type="a"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: lower-alpha;
}
.prose :where(ol[type="A" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: upper-alpha;
}
.prose :where(ol[type="a" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: lower-alpha;
}
.prose :where(ol[type="I"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: upper-roman;
}
.prose :where(ol[type="i"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: lower-roman;
}
.prose :where(ol[type="I" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: upper-roman;
}
.prose :where(ol[type="i" s]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: lower-roman;
}
.prose :where(ol[type="1"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: decimal;
}
.prose :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) { list-style-type: disc; margin-top: 1.25em; margin-bottom: 1.25em; padding-inline-start: 1.625em;
}
.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker { font-weight: 400; color: var(--tw-prose-counters);
}
.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *))::marker { color: var(--tw-prose-bullets);
}
.prose :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 600; margin-top: 1.25em;
}
.prose :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-color: var(--tw-prose-hr); border-top-width: 1px; margin-top: 3em; margin-bottom: 3em;
}
.prose :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 500; font-style: italic; color: var(--tw-prose-quotes); border-inline-start-width: 0.25rem; border-inline-start-color: var(--tw-prose-quote-borders); quotes: "\201C""\201D""\2018""\2019"; margin-top: 1.6em; margin-bottom: 1.6em; padding-inline-start: 1em;
}
.prose :where(blockquote p:first-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content: open-quote;
}
.prose :where(blockquote p:last-of-type):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content: close-quote;
}
.prose :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 800; font-size: 2.25em; margin-top: 0; margin-bottom: 0.8888889em; line-height: 1.1111111;
}
.prose :where(h1 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 900; color: inherit;
}
.prose :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 700; font-size: 1.5em; margin-top: 2em; margin-bottom: 1em; line-height: 1.3333333;
}
.prose :where(h2 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 800; color: inherit;
}
.prose :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 600; font-size: 1.25em; margin-top: 1.6em; margin-bottom: 0.6em; line-height: 1.6;
}
.prose :where(h3 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 700; color: inherit;
}
.prose :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 600; margin-top: 1.5em; margin-bottom: 0.5em; line-height: 1.5;
}
.prose :where(h4 strong):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 700; color: inherit;
}
.prose :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
}
.prose :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) { display: block; margin-top: 2em; margin-bottom: 2em;
}
.prose :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
}
.prose :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-weight: 500; font-family: inherit; color: var(--tw-prose-kbd); box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows); font-size: 0.875em; border-radius: 0.3125rem; padding-top: 0.1875em; padding-inline-end: 0.375em; padding-bottom: 0.1875em; padding-inline-start: 0.375em;
}
.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-code); font-weight: 600; font-size: 0.875em;
}
.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content: "`";
}
.prose :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content: "`";
}
.prose :where(a code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(h1 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit; font-size: 0.875em;
}
.prose :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit; font-size: 0.9em;
}
.prose :where(h4 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(blockquote code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(thead th code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: inherit;
}
.prose :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-pre-code); background-color: var(--tw-prose-pre-bg); overflow-x: auto; font-weight: 400; font-size: 0.875em; line-height: 1.7142857; margin-top: 1.7142857em; margin-bottom: 1.7142857em; border-radius: 0.375rem; padding-top: 0.8571429em; padding-inline-end: 1.1428571em; padding-bottom: 0.8571429em; padding-inline-start: 1.1428571em;
}
.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { background-color: transparent; border-width: 0; border-radius: 0; padding: 0; font-weight: inherit; color: inherit; font-size: inherit; font-family: inherit; line-height: inherit;
}
.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::before { content: none;
}
.prose :where(pre code):not(:where([class~="not-prose"],[class~="not-prose"] *))::after { content: none;
}
.prose :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) { width: 100%; table-layout: auto; margin-top: 2em; margin-bottom: 2em; font-size: 0.875em; line-height: 1.7142857;
}
.prose :where(thead):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width: 1px; border-bottom-color: var(--tw-prose-th-borders);
}
.prose :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-headings); font-weight: 600; vertical-align: bottom; padding-inline-end: 0.5714286em; padding-bottom: 0.5714286em; padding-inline-start: 0.5714286em;
}
.prose :where(tbody tr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width: 1px; border-bottom-color: var(--tw-prose-td-borders);
}
.prose :where(tbody tr:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-bottom-width: 0;
}
.prose :where(tbody td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { vertical-align: baseline;
}
.prose :where(tfoot):not(:where([class~="not-prose"],[class~="not-prose"] *)) { border-top-width: 1px; border-top-color: var(--tw-prose-th-borders);
}
.prose :where(tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { vertical-align: top;
}
.prose :where(th, td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { text-align: start;
}
.prose :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
}
.prose :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) { color: var(--tw-prose-captions); font-size: 0.875em; line-height: 1.4285714; margin-top: 0.8571429em;
}
.prose { --tw-prose-body: #374151; --tw-prose-headings: #111827; --tw-prose-lead: #4b5563; --tw-prose-links: #111827; --tw-prose-bold: #111827; --tw-prose-counters: #6b7280; --tw-prose-bullets: #d1d5db; --tw-prose-hr: #e5e7eb; --tw-prose-quotes: #111827; --tw-prose-quote-borders: #e5e7eb; --tw-prose-captions: #6b7280; --tw-prose-kbd: #111827; --tw-prose-kbd-shadows: rgb(17 24 39 / 10%); --tw-prose-code: #111827; --tw-prose-pre-code: #e5e7eb; --tw-prose-pre-bg: #1f2937; --tw-prose-th-borders: #d1d5db; --tw-prose-td-borders: #e5e7eb; --tw-prose-invert-body: #d1d5db; --tw-prose-invert-headings: #fff; --tw-prose-invert-lead: #9ca3af; --tw-prose-invert-links: #fff; --tw-prose-invert-bold: #fff; --tw-prose-invert-counters: #9ca3af; --tw-prose-invert-bullets: #4b5563; --tw-prose-invert-hr: #374151; --tw-prose-invert-quotes: #f3f4f6; --tw-prose-invert-quote-borders: #374151; --tw-prose-invert-captions: #9ca3af; --tw-prose-invert-kbd: #fff; --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%); --tw-prose-invert-code: #fff; --tw-prose-invert-pre-code: #d1d5db; --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%); --tw-prose-invert-th-borders: #4b5563; --tw-prose-invert-td-borders: #374151; font-size: 1rem; line-height: 1.75;
}
.prose :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
}
.prose :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5em; margin-bottom: 0.5em;
}
.prose :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.375em;
}
.prose :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.375em;
}
.prose :where(.prose > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.75em; margin-bottom: 0.75em;
}
.prose :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em;
}
.prose :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.25em;
}
.prose :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em;
}
.prose :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.25em;
}
.prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.75em; margin-bottom: 0.75em;
}
.prose :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em;
}
.prose :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5em; padding-inline-start: 1.625em;
}
.prose :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
}
.prose :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
}
.prose :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-top: 0.5714286em; padding-inline-end: 0.5714286em; padding-bottom: 0.5714286em; padding-inline-start: 0.5714286em;
}
.prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
}
.prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
}
.prose :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
}
.prose :where(.prose > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose :where(.prose > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 0;
}
.prose-sm { font-size: 0.875rem; line-height: 1.7142857;
}
.prose-sm :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em; margin-bottom: 1.1428571em;
}
.prose-sm :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.2857143em; line-height: 1.5555556; margin-top: 0.8888889em; margin-bottom: 0.8888889em;
}
.prose-sm :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em; margin-bottom: 1.3333333em; padding-inline-start: 1.1111111em;
}
.prose-sm :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 2.1428571em; margin-top: 0; margin-bottom: 0.8em; line-height: 1.2;
}
.prose-sm :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.4285714em; margin-top: 1.6em; margin-bottom: 0.8em; line-height: 1.4;
}
.prose-sm :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.2857143em; margin-top: 1.5555556em; margin-bottom: 0.4444444em; line-height: 1.5555556;
}
.prose-sm :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.4285714em; margin-bottom: 0.5714286em; line-height: 1.4285714;
}
.prose-sm :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7142857em; margin-bottom: 1.7142857em;
}
.prose-sm :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7142857em; margin-bottom: 1.7142857em;
}
.prose-sm :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
}
.prose-sm :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7142857em; margin-bottom: 1.7142857em;
}
.prose-sm :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8571429em; border-radius: 0.3125rem; padding-top: 0.1428571em; padding-inline-end: 0.3571429em; padding-bottom: 0.1428571em; padding-inline-start: 0.3571429em;
}
.prose-sm :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8571429em;
}
.prose-sm :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.9em;
}
.prose-sm :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em;
}
.prose-sm :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8571429em; line-height: 1.6666667; margin-top: 1.6666667em; margin-bottom: 1.6666667em; border-radius: 0.25rem; padding-top: 0.6666667em; padding-inline-end: 1em; padding-bottom: 0.6666667em; padding-inline-start: 1em;
}
.prose-sm :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em; margin-bottom: 1.1428571em; padding-inline-start: 1.5714286em;
}
.prose-sm :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em; margin-bottom: 1.1428571em; padding-inline-start: 1.5714286em;
}
.prose-sm :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.2857143em; margin-bottom: 0.2857143em;
}
.prose-sm :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.4285714em;
}
.prose-sm :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.4285714em;
}
.prose-sm :where(.prose-sm > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5714286em; margin-bottom: 0.5714286em;
}
.prose-sm :where(.prose-sm > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em;
}
.prose-sm :where(.prose-sm > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.1428571em;
}
.prose-sm :where(.prose-sm > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em;
}
.prose-sm :where(.prose-sm > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.1428571em;
}
.prose-sm :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5714286em; margin-bottom: 0.5714286em;
}
.prose-sm :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em; margin-bottom: 1.1428571em;
}
.prose-sm :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.1428571em;
}
.prose-sm :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.2857143em; padding-inline-start: 1.5714286em;
}
.prose-sm :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2.8571429em; margin-bottom: 2.8571429em;
}
.prose-sm :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose-sm :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose-sm :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose-sm :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose-sm :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8571429em; line-height: 1.5;
}
.prose-sm :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 1em; padding-bottom: 0.6666667em; padding-inline-start: 1em;
}
.prose-sm :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
}
.prose-sm :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
}
.prose-sm :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-top: 0.6666667em; padding-inline-end: 1em; padding-bottom: 0.6666667em; padding-inline-start: 1em;
}
.prose-sm :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
}
.prose-sm :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
}
.prose-sm :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7142857em; margin-bottom: 1.7142857em;
}
.prose-sm :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
}
.prose-sm :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8571429em; line-height: 1.3333333; margin-top: 0.6666667em;
}
.prose-sm :where(.prose-sm > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
}
.prose-sm :where(.prose-sm > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 0;
}
.prose-zinc { --tw-prose-body: #3f3f46; --tw-prose-headings: #18181b; --tw-prose-lead: #52525b; --tw-prose-links: #18181b; --tw-prose-bold: #18181b; --tw-prose-counters: #71717a; --tw-prose-bullets: #d4d4d8; --tw-prose-hr: #e4e4e7; --tw-prose-quotes: #18181b; --tw-prose-quote-borders: #e4e4e7; --tw-prose-captions: #71717a; --tw-prose-kbd: #18181b; --tw-prose-kbd-shadows: rgb(24 24 27 / 10%); --tw-prose-code: #18181b; --tw-prose-pre-code: #e4e4e7; --tw-prose-pre-bg: #27272a; --tw-prose-th-borders: #d4d4d8; --tw-prose-td-borders: #e4e4e7; --tw-prose-invert-body: #d4d4d8; --tw-prose-invert-headings: #fff; --tw-prose-invert-lead: #a1a1aa; --tw-prose-invert-links: #fff; --tw-prose-invert-bold: #fff; --tw-prose-invert-counters: #a1a1aa; --tw-prose-invert-bullets: #52525b; --tw-prose-invert-hr: #3f3f46; --tw-prose-invert-quotes: #f4f4f5; --tw-prose-invert-quote-borders: #3f3f46; --tw-prose-invert-captions: #a1a1aa; --tw-prose-invert-kbd: #fff; --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%); --tw-prose-invert-code: #fff; --tw-prose-invert-pre-code: #d4d4d8; --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%); --tw-prose-invert-th-borders: #52525b; --tw-prose-invert-td-borders: #3f3f46;
}
/* === LAYOUT COMPONENTS === */
.dashboard-container { min-height: 100vh; --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
            display: grid;
            grid-template-areas: "sidebar main";
            grid-template-columns: auto 1fr;
}
.dashboard-main {
            grid-area: main;
            overflow: auto;
            padding: 1.5rem;
            min-height: 100vh;
        }
.grid-responsive {
            display: grid;
            gap: 1.5rem;
            grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
        }
.grid-dashboard {
            display: grid;
            gap: 1.5rem;
            grid-template-columns: repeat(12, 1fr);
        }
.page-container { width: 100%;
}
@media (min-width: 640px) {
  .page-container { max-width: 640px;
  }
}
@media (min-width: 768px) {
  .page-container { max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .page-container { max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .page-container { max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .page-container { max-width: 1536px;
  }
}
.page-container { margin-left: auto; margin-right: auto; max-width: 80rem; padding-left: 1rem; padding-right: 1rem;
}
@media (min-width: 640px) {
  .page-container { padding-left: 1.5rem; padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .page-container { padding-left: 2rem; padding-right: 2rem;
  }
}
.page-header { margin-bottom: 1.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-bottom: 1.5rem;
            border-bottom: 1px solid hsl(var(--border));
}
/* === ENHANCED CARD SYSTEM === */
.icon-container { display: inline-flex; height: 2.5rem; width: 2.5rem; flex: none; flex-shrink: 0; align-items: center; justify-content: center; border-radius: var(--radius); border-width: 1px; --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1)); --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
/* Surface + elevation helpers */
.elevation-2 {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        }
/* Card shells */
.section-card { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.section-card[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.section-card[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.section-card[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.section-card[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.quick-action-card { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.quick-action-card[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.quick-action-card[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.quick-action-card[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.quick-action-card[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.quick-action-card { display: flex; flex-direction: column; gap: 1rem;
}
@media (min-width: 768px) {
  .quick-action-card { flex-direction: row; align-items: center; justify-content: space-between;
  }
}
.card-basic { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.card-basic[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.card-basic[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.card-basic[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.card-basic[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.card-elevated { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.card-elevated[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.card-elevated[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.card-elevated[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.card-elevated[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.card-elevated {
            box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12);
        }
.card-interactive { transition-duration: var(--duration-fast); transition-timing-function: var(--ease-standard); border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06); }
.card-interactive[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.card-interactive[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.card-interactive[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.card-interactive[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.card-interactive { cursor: pointer; transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.card-interactive:hover {
            transform: translateY(-2px);
            box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
            border-color: hsl(var(--accent-foreground) / 0.25);
        }
.card-statistical { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.card-statistical[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.card-statistical[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.card-statistical[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.card-statistical[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.card-statistical { position: relative; overflow: hidden;
            background: linear-gradient(135deg, hsl(var(--card)) 0%, hsl(var(--card-elevated)) 100%);
}
.card-statistical::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(135deg, hsl(var(--accent-foreground) / 0.08), transparent 60%);
        }
.card-statistical > * {
            position: relative;
            z-index: 1;
        }
/* Filter bar styling */
.filterbar { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.6); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 1.5rem; padding-bottom: 1.5rem; --tw-text-opacity: 1; color: hsl(var(--card-foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.06);
}
.filterbar[data-elevation='0'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: none;
        }
.filterbar[data-elevation='1'] {
            background-color: hsl(var(--surface));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
        box-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08);
        }
.filterbar[data-elevation='2'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
        }
.filterbar[data-elevation='3'] {
            background-color: hsl(var(--surface-elevated));
            border: 1px solid hsl(var(--border));
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
        box-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16);
        }
.filterbar { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem; background-color: hsl(var(--background) / 0.9);
}
@supports (backdrop-filter: var(--tw)) {
  .filterbar { --tw-backdrop-blur: blur(8px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  }
}
.filterbar .filterbar__search { min-width: 220px; flex: 1 1 0%;
}
.filterbar .filterbar__actions { margin-left: auto; display: flex; align-items: center; gap: 0.5rem;
}
/* === BUTTON SYSTEM ENHANCEMENTS === */
/* === DATA VISUALIZATION === */
.chart-container { border-radius: var(--radius-xl); border-width: 1px; border-color: hsl(var(--border) / 0.5); --tw-bg-opacity: 1; background-color: hsl(var(--card) / var(--tw-bg-opacity, 1)); padding: 1.5rem;
            background: linear-gradient(135deg, hsl(var(--card)) 0%, hsl(var(--card-elevated)) 100%);
            box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.06);
}
.chart-responsive {
            width: 100%;
            height: 300px;
            min-height: 200px;
        }
/* === STATUS AND FEEDBACK === */
.alert-success { border-radius: var(--radius); border-width: 1px; border-color: hsl(var(--success) / 0.2); background-color: hsl(var(--success) / 0.1); padding: 1rem; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--success) / 0.1);
}
.alert-warning { border-radius: var(--radius); border-width: 1px; border-color: hsl(var(--warning) / 0.2); background-color: hsl(var(--warning) / 0.1); padding: 1rem; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--warning) / 0.1);
}
.alert-error { border-radius: var(--radius); border-width: 1px; border-color: hsl(var(--destructive) / 0.2); background-color: hsl(var(--destructive) / 0.1); padding: 1rem; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
            box-shadow: 0 1px 3px 0 hsl(var(--destructive) / 0.1);
}
/* === PROGRESS INDICATORS === */
.progress-bar { height: 0.5rem; width: 100%; overflow: hidden; border-radius: 9999px; --tw-bg-opacity: 1; background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));
}
.progress-fill { height: 100%; border-radius: 9999px; --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1)); transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 300ms; transition-timing-function: cubic-bezier(0, 0, 0.2, 1); animation-duration: 300ms; animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
            background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--accent-foreground)));
}
/* === ENHANCED SIDEBAR SYSTEM === */
.sidebar-surface { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar) / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: hsl(var(--sidebar-foreground) / var(--tw-text-opacity, 1));
            border-right: 1px solid hsl(var(--sidebar-border));
            background-image:
                linear-gradient(180deg, hsl(var(--sidebar)) 0%, hsl(var(--sidebar-elevated)) 100%),
                radial-gradient(ellipse at top, hsl(var(--primary) / 0.02), transparent 70%);
            background-blend-mode: normal;
}
.sidebar-header { border-bottom-width: 1px; --tw-border-opacity: 1; border-color: hsl(var(--sidebar-border) / var(--tw-border-opacity, 1)); padding: 1.5rem;
            background: linear-gradient(135deg, hsl(var(--sidebar)) 0%, hsl(var(--sidebar-elevated)) 100%);
}
.sidebar-section { padding-left: 1rem; padding-right: 1rem; padding-top: 0.5rem; padding-bottom: 0.5rem;
}
.sidebar-section-label { margin-bottom: 0.5rem; font-size: 0.75rem; line-height: 1rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em;
            color: hsl(var(--menu-section-label));
}
.sidebar-link { display: flex; align-items: center; gap: 0.75rem; border-radius: var(--radius); padding-left: 0.75rem; padding-right: 0.75rem; padding-top: 0.5rem; padding-bottom: 0.5rem; font-size: 0.875rem; line-height: 1.25rem; font-weight: 500;
            color: hsl(var(--menu-text));
            transition: all 0.15s ease-in-out;
            position: relative;
}
.sidebar-link:hover {
            background-color: hsl(var(--sidebar-accent));
            color: hsl(var(--menu-text-hover));
            transform: translateX(2px);
        }
.sidebar-link-active {
            background: linear-gradient(135deg, hsl(var(--primary) / 0.1), hsl(var(--accent) / 0.05));
            color: hsl(var(--primary));
            font-weight: 600;
            border: 1px solid hsl(var(--primary) / 0.15);
        }
.sidebar-link-active::before {
            content: '';
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 3px;
            height: 60%;
            background: hsl(var(--primary));
            border-radius: 0 2px 2px 0;
        }
/* === SIDEBAR VARIANTS === */
.sidebar-elevated {
            box-shadow: 0 4px 6px -1px hsl(var(--primary) / 0.08);
        }
.sidebar-compact .sidebar-link { justify-content: center; padding: 0.5rem;
}
.sidebar-compact .sidebar-section-label { display: none;
}
/* === FORM ELEMENTS === */
.form-group { margin-bottom: 1rem;
}
.form-group > :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));
}
.form-label { font-size: 0.875rem; line-height: 1.25rem; font-weight: 500; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.form-input { width: 100%; border-radius: var(--radius); border-width: 1px; --tw-border-opacity: 1; border-color: hsl(var(--input-border) / var(--tw-border-opacity, 1)); --tw-bg-opacity: 1; background-color: hsl(var(--input) / var(--tw-bg-opacity, 1)); padding-left: 0.75rem; padding-right: 0.75rem; padding-top: 0.5rem; padding-bottom: 0.5rem;
}
.form-input:focus { --tw-border-opacity: 1; border-color: hsl(var(--ring) / var(--tw-border-opacity, 1)); outline: 2px solid transparent; outline-offset: 2px; --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-color: hsl(var(--ring) / 0.2);
}
.form-input {
            transition: all 0.15s ease-in-out;
        }
/* === BADGE AND TAG SYSTEM === */
.badge-primary { /* updated */ display: inline-flex; align-items: center; border-radius: 9999px; padding-left: 0.625rem; padding-right: 0.625rem; padding-top: 0.125rem; padding-bottom: 0.125rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; border-width: 1px; border-color: hsl(var(--primary) / 0.2); background-color: hsl(var(--primary) / 0.1); --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
        }
.badge-success { display: inline-flex; align-items: center; border-radius: 9999px; padding-left: 0.625rem; padding-right: 0.625rem; padding-top: 0.125rem; padding-bottom: 0.125rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; border-width: 1px; border-color: hsl(var(--success) / 0.2); background-color: hsl(var(--success) / 0.1); --tw-text-opacity: 1; color: hsl(var(--success) / var(--tw-text-opacity, 1));
}
.badge-warning { display: inline-flex; align-items: center; border-radius: 9999px; padding-left: 0.625rem; padding-right: 0.625rem; padding-top: 0.125rem; padding-bottom: 0.125rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; border-width: 1px; border-color: hsl(var(--warning) / 0.2); background-color: hsl(var(--warning) / 0.1); --tw-text-opacity: 1; color: hsl(var(--warning) / var(--tw-text-opacity, 1));
}
.badge-error { display: inline-flex; align-items: center; border-radius: 9999px; padding-left: 0.625rem; padding-right: 0.625rem; padding-top: 0.125rem; padding-bottom: 0.125rem; font-size: 0.75rem; line-height: 1rem; font-weight: 500; border-width: 1px; border-color: hsl(var(--destructive) / 0.2); background-color: hsl(var(--destructive) / 0.1); --tw-text-opacity: 1; color: hsl(var(--destructive) / var(--tw-text-opacity, 1));
}
/* === RESPONSIVE DESIGN UTILITIES === */
.mobile-stack { display: flex; flex-direction: column; gap: 1rem;
}
@media (min-width: 768px) {
  .mobile-stack { flex-direction: row; align-items: center;
  }
}
.mobile-only { display: block;
}
@media (min-width: 768px) {
  .mobile-only { display: none;
  }
}
.touch-target { display: flex; min-height: 44px; min-width: 44px; align-items: center; justify-content: center;
}
/* Form validation states */
/* Enhanced skeleton loader */
.skeleton { position: relative; overflow: hidden;
        background-color: hsl(var(--muted));
        border-radius: 0.375rem;
}
.skeleton::after {
        content: "";
        position: absolute;
        inset: 0px;
        --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));
        animation: shimmer 1.5s infinite;
        background: linear-gradient(90deg,
                transparent,
                hsl(var(--primary) / 0.08) 50%,
                transparent);
    }
@keyframes shimmer {
        100% {
            transform: translateX(100%);
        }
    }
/* Refined elevation system */
.elevation-2 {
        box-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12);
    }
/* Status indicators with psychological color choices */
.status-dot { display: inline-flex; height: 0.625rem; width: 0.625rem; border-radius: 9999px;
}
/* Enhanced link styling */
.link-muted { text-decoration-line: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1)); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; animation-duration: 150ms;
}
.link-muted:hover { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.link-muted {
        text-decoration-thickness: 1px;
        text-underline-offset: 2px;
    }
.link-muted:hover {
        text-decoration: underline;
    }
.stat-card__meta { display: flex; align-items: center; gap: 0.5rem; font-size: 0.75rem; line-height: 1rem; text-transform: uppercase; letter-spacing: 0.025em; --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
@layer components {
            .stat-card__value { font-size: 2.25rem; line-height: 2.5rem; font-weight: 600; line-height: 1.25; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
  }
        }
.stat-card__value { font-size: 2.25rem; line-height: 2.5rem; --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
  font-size: clamp(2rem, 2.3vw + 1.4rem, 2.75rem);
  line-height: 1.2;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.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-1 { inset: 0.25rem;
}
.inset-x-0 { left: 0px; right: 0px;
}
.inset-y-0 { top: 0px; bottom: 0px;
}
.-bottom-12 { bottom: -3rem;
}
.-left-12 { left: -3rem;
}
.-right-1 { right: -0.25rem;
}
.-right-12 { right: -3rem;
}
.-top-1 { top: -0.25rem;
}
.-top-12 { top: -3rem;
}
.-top-3 { top: -0.75rem;
}
.bottom-0 { bottom: 0px;
}
.bottom-16 { bottom: 4rem;
}
.bottom-4 { bottom: 1rem;
}
.bottom-6 { bottom: 1.5rem;
}
.bottom-full { bottom: 100%;
}
.left-0 { left: 0px;
}
.left-1\/2 { left: 50%;
}
.left-2 { left: 0.5rem;
}
.left-3 { left: 0.75rem;
}
.left-4 { left: 1rem;
}
.left-\[50\%\] { left: 50%;
}
.right-0 { right: 0px;
}
.right-1 { right: 0.25rem;
}
.right-2 { right: 0.5rem;
}
.right-3 { right: 0.75rem;
}
.right-4 { right: 1rem;
}
.right-6 { right: 1.5rem;
}
.top-0 { top: 0px;
}
.top-1 { top: 0.25rem;
}
.top-1\.5 { top: 0.375rem;
}
.top-1\/2 { top: 50%;
}
.top-14 { top: 3.5rem;
}
.top-16 { top: 4rem;
}
.top-2 { top: 0.5rem;
}
.top-3 { top: 0.75rem;
}
.top-3\.5 { top: 0.875rem;
}
.top-4 { top: 1rem;
}
.top-\[1px\] { top: 1px;
}
.top-\[50\%\] { top: 50%;
}
.top-\[60\%\] { top: 60%;
}
.top-full { top: 100%;
}
.isolate { isolation: isolate;
}
.-z-10 { z-index: -10;
}
.z-10 { z-index: 10;
}
.z-20 { z-index: 20;
}
.z-30 { z-index: 30;
}
.z-\[0\] { z-index: 0;
}
.z-\[10\] { z-index: 10;
}
.z-\[15\] { z-index: 15;
}
.z-\[1\] { z-index: 1;
}
.z-\[200\] { z-index: 200;
}
.z-\[20\] { z-index: 20;
}
.z-\[30\] { z-index: 30;
}
.z-\[40\] { z-index: 40;
}
.z-\[45\] { z-index: 45;
}
.z-\[55\] { z-index: 55;
}
.z-\[60\] { z-index: 60;
}
.z-\[9999\] { z-index: 9999;
}
.order-last { order: 9999;
}
.col-span-1 { grid-column: span 1 / span 1;
}
.col-span-2 { grid-column: span 2 / span 2;
}
.col-span-5 { grid-column: span 5 / span 5;
}
.col-start-2 { grid-column-start: 2;
}
.row-span-2 { grid-row: span 2 / span 2;
}
.row-start-1 { grid-row-start: 1;
}
.m-0 { margin: 0px;
}
.-mx-1 { margin-left: -0.25rem; margin-right: -0.25rem;
}
.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-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;
}
.-ml-4 { margin-left: -1rem;
}
.-mr-1 { margin-right: -0.25rem;
}
.-mt-2 { margin-top: -0.5rem;
}
.-mt-4 { margin-top: -1rem;
}
.mb-1 { margin-bottom: 0.25rem;
}
.mb-2 { margin-bottom: 0.5rem;
}
.mb-3 { margin-bottom: 0.75rem;
}
.mb-4 { margin-bottom: 1rem;
}
.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-2 { margin-left: 0.5rem;
}
.ml-3 { margin-left: 0.75rem;
}
.ml-4 { margin-left: 1rem;
}
.ml-auto { margin-left: auto;
}
.mr-1 { margin-right: 0.25rem;
}
.mr-2 { margin-right: 0.5rem;
}
.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-14 { margin-top: 3.5rem;
}
.mt-2 { margin-top: 0.5rem;
}
.mt-3 { margin-top: 0.75rem;
}
.mt-4 { margin-top: 1rem;
}
.mt-6 { margin-top: 1.5rem;
}
.mt-8 { margin-top: 2rem;
}
.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;
}
.block { display: block;
}
.inline-block { display: inline-block;
}
.inline { display: inline;
}
.flex { display: flex;
}
.inline-flex { display: inline-flex;
}
.table { display: table;
}
.table-caption { display: table-caption;
}
.table-cell { display: table-cell;
}
.table-row { display: table-row;
}
.grid { display: grid;
}
.contents { display: contents;
}
.hidden { display: none;
}
.aspect-auto { aspect-ratio: auto;
}
.aspect-square { aspect-ratio: 1 / 1;
}
.aspect-video { aspect-ratio: 16 / 9;
}
.\!size-6 { width: 1.5rem !important; height: 1.5rem !important;
}
.size-1\.5 { width: 0.375rem; height: 0.375rem;
}
.size-11 { width: 2.75rem; height: 2.75rem;
}
.size-12 { width: 3rem; height: 3rem;
}
.size-16 { width: 4rem; height: 4rem;
}
.size-2 { width: 0.5rem; height: 0.5rem;
}
.size-2\.5 { width: 0.625rem; height: 0.625rem;
}
.size-3 { width: 0.75rem; height: 0.75rem;
}
.size-3\.5 { width: 0.875rem; height: 0.875rem;
}
.size-4 { width: 1rem; height: 1rem;
}
.size-5 { width: 1.25rem; height: 1.25rem;
}
.size-6 { width: 1.5rem; height: 1.5rem;
}
.size-7 { width: 1.75rem; height: 1.75rem;
}
.size-8 { width: 2rem; height: 2rem;
}
.size-9 { width: 2.25rem; height: 2.25rem;
}
.size-full { width: 100%; height: 100%;
}
.h-0 { height: 0px;
}
.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-3 { height: 0.75rem;
}
.h-3\.5 { height: 0.875rem;
}
.h-32 { height: 8rem;
}
.h-4 { height: 1rem;
}
.h-40 { height: 10rem;
}
.h-5 { height: 1.25rem;
}
.h-6 { height: 1.5rem;
}
.h-64 { height: 16rem;
}
.h-7 { height: 1.75rem;
}
.h-72 { height: 18rem;
}
.h-8 { height: 2rem;
}
.h-9 { height: 2.25rem;
}
.h-\[100dvh\] { height: 100dvh;
}
.h-\[200px\] { height: 200px;
}
.h-\[300px\] { height: 300px;
}
.h-\[400px\] { height: 400px;
}
.h-\[480px\] { height: 480px;
}
.h-\[calc\(100vh-3\.5rem\)\] { height: calc(100vh - 3.5rem);
}
.h-\[var\(--radix-navigation-menu-viewport-height\)\] { height: var(--radix-navigation-menu-viewport-height);
}
.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-svh { height: 100svh;
}
.max-h-32 { max-height: 8rem;
}
.max-h-40 { max-height: 10rem;
}
.max-h-48 { max-height: 12rem;
}
.max-h-64 { max-height: 16rem;
}
.max-h-80 { max-height: 20rem;
}
.max-h-96 { max-height: 24rem;
}
.max-h-\[300px\] { max-height: 300px;
}
.max-h-\[60vh\] { max-height: 60vh;
}
.max-h-\[80vh\] { max-height: 80vh;
}
.max-h-\[var\(--radix-context-menu-content-available-height\)\] { max-height: var(--radix-context-menu-content-available-height);
}
.max-h-\[var\(--radix-select-content-available-height\)\] { max-height: var(--radix-select-content-available-height);
}
.max-h-screen { max-height: 100vh;
}
.min-h-0 { min-height: 0px;
}
.min-h-16 { min-height: 4rem;
}
.min-h-4 { min-height: 1rem;
}
.min-h-\[120px\] { min-height: 120px;
}
.min-h-\[160px\] { min-height: 160px;
}
.min-h-\[200px\] { min-height: 200px;
}
.min-h-\[400px\] { min-height: 400px;
}
.min-h-\[44px\] { min-height: 44px;
}
.min-h-\[60vh\] { min-height: 60vh;
}
.min-h-\[70vh\] { min-height: 70vh;
}
.min-h-\[80px\] { min-height: 80px;
}
.min-h-screen { min-height: 100vh;
}
.min-h-svh { min-height: 100svh;
}
.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-1\/6 { width: 16.666667%;
}
.w-10 { width: 2.5rem;
}
.w-11 { width: 2.75rem;
}
.w-12 { width: 3rem;
}
.w-14 { width: 3.5rem;
}
.w-16 { width: 4rem;
}
.w-18 { width: 4.5rem;
}
.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-40 { width: 10rem;
}
.w-48 { width: 12rem;
}
.w-5 { width: 1.25rem;
}
.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-\[100px\] { width: 100px;
}
.w-\[120px\] { width: 120px;
}
.w-\[150px\] { width: 150px;
}
.w-\[200px\] { width: 200px;
}
.w-\[80px\] { width: 80px;
}
.w-\[var\(--sidebar-width\)\] { width: var(--sidebar-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-10 { min-width: 2.5rem;
}
.min-w-4 { min-width: 1rem;
}
.min-w-5 { min-width: 1.25rem;
}
.min-w-8 { min-width: 2rem;
}
.min-w-9 { min-width: 2.25rem;
}
.min-w-\[120px\] { min-width: 120px;
}
.min-w-\[12rem\] { min-width: 12rem;
}
.min-w-\[140px\] { min-width: 140px;
}
.min-w-\[160px\] { min-width: 160px;
}
.min-w-\[180px\] { min-width: 180px;
}
.min-w-\[200px\] { min-width: 200px;
}
.min-w-\[24px\] { min-width: 24px;
}
.min-w-\[280px\] { min-width: 280px;
}
.min-w-\[80px\] { min-width: 80px;
}
.min-w-\[8rem\] { min-width: 8rem;
}
.min-w-\[var\(--radix-select-trigger-width\)\] { min-width: var(--radix-select-trigger-width);
}
.min-w-full { min-width: 100%;
}
.max-w-24 { max-width: 6rem;
}
.max-w-2xl { max-width: 42rem;
}
.max-w-3xl { max-width: 48rem;
}
.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-\[1440px\] { max-width: 1440px;
}
.max-w-\[200px\] { max-width: 200px;
}
.max-w-\[85\%\] { max-width: 85%;
}
.max-w-\[calc\(100\%-2rem\)\] { max-width: calc(100% - 2rem);
}
.max-w-\[calc\(100vw-2rem\)\] { max-width: calc(100vw - 2rem);
}
.max-w-\[var\(--skeleton-width\)\] { max-width: var(--skeleton-width);
}
.max-w-full { max-width: 100%;
}
.max-w-lg { max-width: 32rem;
}
.max-w-max { max-width: -moz-max-content; max-width: max-content;
}
.max-w-md { max-width: 28rem;
}
.max-w-prose { max-width: 65ch;
}
.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-none { flex: none;
}
.flex-shrink-0 { flex-shrink: 0;
}
.shrink-0 { flex-shrink: 0;
}
.flex-grow { flex-grow: 1;
}
.grow { flex-grow: 1;
}
.grow-0 { flex-grow: 0;
}
.basis-full { flex-basis: 100%;
}
.caption-bottom { caption-side: bottom;
}
.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);
}
.origin-\[var\(--radix-context-menu-content-transform-origin\)\] { transform-origin: var(--radix-context-menu-content-transform-origin);
}
.origin-\[var\(--radix-hover-card-content-transform-origin\)\] { transform-origin: var(--radix-hover-card-content-transform-origin);
}
.origin-\[var\(--radix-popover-content-transform-origin\)\] { transform-origin: var(--radix-popover-content-transform-origin);
}
.origin-\[var\(--radix-select-content-transform-origin\)\] { transform-origin: var(--radix-select-content-transform-origin);
}
.origin-\[var\(--radix-tooltip-content-transform-origin\)\] { transform-origin: var(--radix-tooltip-content-transform-origin);
}
.-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-4 { --tw-translate-x: -1rem; 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-4 { --tw-translate-y: -1rem; 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-4 { --tw-translate-x: 1rem; 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-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-0 { --tw-translate-y: 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-y-0\.5 { --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));
}
.translate-y-4 { --tw-translate-y: 1rem; 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));
}
.translate-y-\[calc\(-50\%_-_2px\)\] { --tw-translate-y: calc(-50% - 2px); 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-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-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-100 { --tw-scale-x: 1; --tw-scale-y: 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-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-95 { --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));
}
.transform { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(6px);
  }
  to { opacity: 1; transform: translateY(0);
  }
}
.animate-fade-in { animation: fadeIn 0.6s ease-out both;
}
@keyframes pulse {
  50% { opacity: .5;
  }
}
.animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes slideUp {
  from { opacity: 0; transform: translateY(20px);
  }
  to { opacity: 1; transform: translateY(0);
  }
}
.animate-slide-up { animation: slideUp 0.6s ease-out;
}
@keyframes spin {
  to { transform: rotate(360deg);
  }
}
.animate-spin { animation: spin 1s linear infinite;
}
.cursor-default { cursor: default;
}
.cursor-help { cursor: help;
}
.cursor-pointer { cursor: pointer;
}
.touch-none { touch-action: none;
}
.touch-manipulation { touch-action: manipulation;
}
.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 { resize: both;
}
.scroll-my-1 { scroll-margin-top: 0.25rem; scroll-margin-bottom: 0.25rem;
}
.scroll-py-1 { scroll-padding-top: 0.25rem; scroll-padding-bottom: 0.25rem;
}
.list-inside { list-style-position: inside;
}
.list-disc { list-style-type: disc;
}
.list-none { list-style-type: none;
}
.auto-rows-fr { grid-auto-rows: minmax(0, 1fr);
}
.auto-rows-min { grid-auto-rows: min-content;
}
.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-\[0_1fr\] { grid-template-columns: 0 1fr;
}
.grid-rows-\[auto_auto\] { grid-template-rows: auto auto;
}
.flex-row { flex-direction: row;
}
.flex-col { flex-direction: column;
}
.flex-col-reverse { flex-direction: column-reverse;
}
.flex-wrap { flex-wrap: wrap;
}
.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-items-start { justify-items: start;
}
.gap-0\.5 { gap: 0.125rem;
}
.gap-1 { gap: 0.25rem;
}
.gap-1\.5 { gap: 0.375rem;
}
.gap-2 { gap: 0.5rem;
}
.gap-3 { gap: 0.75rem;
}
.gap-4 { gap: 1rem;
}
.gap-6 { gap: 1.5rem;
}
.gap-8 { gap: 2rem;
}
.gap-x-4 { -moz-column-gap: 1rem; column-gap: 1rem;
}
.gap-y-0\.5 { row-gap: 0.125rem;
}
.gap-y-2 { row-gap: 0.5rem;
}
.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-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-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-12 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(3rem * 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-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-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));
}
.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));
}
.self-start { align-self: flex-start;
}
.justify-self-end { justify-self: end;
}
.overflow-auto { overflow: auto;
}
.overflow-hidden { overflow: hidden;
}
.overflow-x-auto { overflow-x: auto;
}
.overflow-y-auto { overflow-y: auto;
}
.overflow-x-hidden { overflow-x: hidden;
}
.truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.whitespace-normal { white-space: normal;
}
.whitespace-nowrap { white-space: nowrap;
}
.whitespace-pre { white-space: pre;
}
.whitespace-pre-wrap { white-space: pre-wrap;
}
.text-balance { text-wrap: balance;
}
.break-words { overflow-wrap: break-word;
}
.break-all { word-break: break-all;
}
.rounded { border-radius: 0.25rem;
}
.rounded-2xl { border-radius: calc(var(--radius) * 1.5);
}
.rounded-\[2px\] { border-radius: 2px;
}
.rounded-\[4px\] { border-radius: 4px;
}
.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: var(--radius-sm);
}
.rounded-xl { border-radius: var(--radius-xl);
}
.rounded-r-full { border-top-right-radius: 9999px; border-bottom-right-radius: 9999px;
}
.rounded-r-xl { border-top-right-radius: var(--radius-xl); border-bottom-right-radius: var(--radius-xl);
}
.rounded-t-xl { border-top-left-radius: var(--radius-xl); border-top-right-radius: var(--radius-xl);
}
.rounded-tl-sm { border-top-left-radius: var(--radius-sm);
}
.border { border-width: 1px;
}
.border-0 { border-width: 0px;
}
.border-2 { border-width: 2px;
}
.border-\[1\.5px\] { border-width: 1.5px;
}
.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-2 { border-left-width: 2px;
}
.border-l-4 { border-left-width: 4px;
}
.border-r { border-right-width: 1px;
}
.border-r-2 { border-right-width: 2px;
}
.border-t { border-top-width: 1px;
}
.border-t-2 { border-top-width: 2px;
}
.border-dashed { border-style: dashed;
}
.border-none { border-style: none;
}
.border-\[var\(--color-border\)\] { border-color: var(--color-border);
}
.border-accent\/20 { border-color: hsl(var(--accent) / 0.2);
}
.border-accent\/30 { border-color: hsl(var(--accent) / 0.3);
}
.border-amber-200 { --tw-border-opacity: 1; border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}
.border-border { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.border-border\/30 { border-color: hsl(var(--border) / 0.3);
}
.border-border\/60 { border-color: hsl(var(--border) / 0.6);
}
.border-border\/70 { border-color: hsl(var(--border) / 0.7);
}
.border-current { border-color: currentColor;
}
.border-destructive { --tw-border-opacity: 1; border-color: hsl(var(--destructive) / var(--tw-border-opacity, 1));
}
.border-destructive\/20 { border-color: hsl(var(--destructive) / 0.2);
}
.border-destructive\/30 { border-color: hsl(var(--destructive) / 0.3);
}
.border-destructive\/40 { border-color: hsl(var(--destructive) / 0.4);
}
.border-error { --tw-border-opacity: 1; border-color: hsl(var(--error) / var(--tw-border-opacity, 1));
}
.border-error\/20 { border-color: hsl(var(--error) / 0.2);
}
.border-error\/30 { border-color: hsl(var(--error) / 0.3);
}
.border-error\/40 { border-color: hsl(var(--error) / 0.4);
}
.border-error\/50 { border-color: hsl(var(--error) / 0.5);
}
.border-error\/60 { border-color: hsl(var(--error) / 0.6);
}
.border-foreground { --tw-border-opacity: 1; border-color: hsl(var(--foreground) / var(--tw-border-opacity, 1));
}
.border-info\/20 { border-color: hsl(var(--info) / 0.2);
}
.border-info\/30 { border-color: hsl(var(--info) / 0.3);
}
.border-muted { --tw-border-opacity: 1; border-color: hsl(var(--muted) / var(--tw-border-opacity, 1));
}
.border-muted-foreground { --tw-border-opacity: 1; border-color: hsl(var(--muted-foreground) / var(--tw-border-opacity, 1));
}
.border-muted-foreground\/30 { border-color: hsl(var(--muted-foreground) / 0.3);
}
.border-primary { --tw-border-opacity: 1; border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));
}
.border-primary\/20 { border-color: hsl(var(--primary) / 0.2);
}
.border-primary\/30 { border-color: hsl(var(--primary) / 0.3);
}
.border-primary\/50 { border-color: hsl(var(--primary) / 0.5);
}
.border-sidebar-border { --tw-border-opacity: 1; border-color: hsl(var(--sidebar-border) / var(--tw-border-opacity, 1));
}
.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-200 { --tw-border-opacity: 1; border-color: hsl(var(--warning-200) / var(--tw-border-opacity, 1));
}
.border-warning-300 { --tw-border-opacity: 1; border-color: hsl(var(--warning-300) / var(--tw-border-opacity, 1));
}
.border-warning-400\/60 { border-color: hsl(var(--warning-400) / 0.6);
}
.border-warning\/20 { border-color: hsl(var(--warning) / 0.2);
}
.border-warning\/30 { border-color: hsl(var(--warning) / 0.3);
}
.border-l-info-300 { --tw-border-opacity: 1; border-left-color: hsl(var(--info-300) / var(--tw-border-opacity, 1));
}
.border-t-border { --tw-border-opacity: 1; border-top-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.border-t-transparent { border-top-color: transparent;
}
.bg-\[hsl\(var\(--btn-ghost-bg\)\)\] { background-color: hsl(var(--btn-ghost-bg));
}
.bg-\[hsl\(var\(--btn-primary-bg\)\)\] { background-color: hsl(var(--btn-primary-bg));
}
.bg-\[var\(--color-bg\)\] { background-color: var(--color-bg);
}
.bg-accent { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.bg-accent\/10 { background-color: hsl(var(--accent) / 0.1);
}
.bg-accent\/50 { background-color: hsl(var(--accent) / 0.5);
}
.bg-amber-50 { --tw-bg-opacity: 1; background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.bg-background { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
}
.bg-background\/30 { background-color: hsl(var(--background) / 0.3);
}
.bg-background\/50 { background-color: hsl(var(--background) / 0.5);
}
.bg-background\/60 { background-color: hsl(var(--background) / 0.6);
}
.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\/50 { background-color: rgb(0 0 0 / 0.5);
}
.bg-border { --tw-bg-opacity: 1; background-color: hsl(var(--border) / var(--tw-bg-opacity, 1));
}
.bg-border\/70 { background-color: hsl(var(--border) / 0.7);
}
.bg-chart-4\/10 { background-color: hsl(var(--chart-4) / 0.1);
}
.bg-current { background-color: currentColor;
}
.bg-destructive { --tw-bg-opacity: 1; background-color: hsl(var(--destructive) / var(--tw-bg-opacity, 1));
}
.bg-destructive\/10 { background-color: hsl(var(--destructive) / 0.1);
}
.bg-destructive\/15 { background-color: hsl(var(--destructive) / 0.15);
}
.bg-error { --tw-bg-opacity: 1; background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));
}
.bg-error-100 { --tw-bg-opacity: 1; background-color: hsl(var(--error-100) / var(--tw-bg-opacity, 1));
}
.bg-error\/10 { background-color: hsl(var(--error) / 0.1);
}
.bg-error\/15 { background-color: hsl(var(--error) / 0.15);
}
.bg-error\/5 { background-color: hsl(var(--error) / 0.05);
}
.bg-foreground { --tw-bg-opacity: 1; background-color: hsl(var(--foreground) / var(--tw-bg-opacity, 1));
}
.bg-info { --tw-bg-opacity: 1; background-color: hsl(var(--info) / var(--tw-bg-opacity, 1));
}
.bg-info-100 { --tw-bg-opacity: 1; background-color: hsl(var(--info-100) / var(--tw-bg-opacity, 1));
}
.bg-info\/10 { background-color: hsl(var(--info) / 0.1);
}
.bg-info\/15 { background-color: hsl(var(--info) / 0.15);
}
.bg-info\/20 { background-color: hsl(var(--info) / 0.2);
}
.bg-info\/5 { background-color: hsl(var(--info) / 0.05);
}
.bg-muted { --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));
}
.bg-muted-foreground { --tw-bg-opacity: 1; background-color: hsl(var(--muted-foreground) / var(--tw-bg-opacity, 1));
}
.bg-muted-foreground\/30 { background-color: hsl(var(--muted-foreground) / 0.3);
}
.bg-muted\/20 { background-color: hsl(var(--muted) / 0.2);
}
.bg-muted\/30 { background-color: hsl(var(--muted) / 0.3);
}
.bg-muted\/40 { background-color: hsl(var(--muted) / 0.4);
}
.bg-muted\/50 { background-color: hsl(var(--muted) / 0.5);
}
.bg-muted\/80 { background-color: hsl(var(--muted) / 0.8);
}
.bg-neutral-200 { --tw-bg-opacity: 1; background-color: hsl(var(--neutral-200) / var(--tw-bg-opacity, 1));
}
.bg-overlay { --tw-bg-opacity: 1; background-color: hsl(var(--overlay) / var(--tw-bg-opacity, 1));
}
.bg-overlay\/20 { background-color: hsl(var(--overlay) / 0.2);
}
.bg-overlay\/50 { background-color: hsl(var(--overlay) / 0.5);
}
.bg-popover { --tw-bg-opacity: 1; background-color: hsl(var(--popover) / var(--tw-bg-opacity, 1));
}
.bg-primary { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.bg-primary-100 { --tw-bg-opacity: 1; background-color: hsl(var(--primary-100) / var(--tw-bg-opacity, 1));
}
.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\/5 { background-color: hsl(var(--primary) / 0.05);
}
.bg-primary\/60 { background-color: hsl(var(--primary) / 0.6);
}
.bg-primary\/80 { background-color: hsl(var(--primary) / 0.8);
}
.bg-secondary { --tw-bg-opacity: 1; background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));
}
.bg-sidebar { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar) / var(--tw-bg-opacity, 1));
}
.bg-sidebar-border { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-border) / var(--tw-bg-opacity, 1));
}
.bg-success { --tw-bg-opacity: 1; background-color: hsl(var(--success) / var(--tw-bg-opacity, 1));
}
.bg-success-100 { --tw-bg-opacity: 1; background-color: hsl(var(--success-100) / var(--tw-bg-opacity, 1));
}
.bg-success\/10 { background-color: hsl(var(--success) / 0.1);
}
.bg-success\/15 { background-color: hsl(var(--success) / 0.15);
}
.bg-success\/5 { background-color: hsl(var(--success) / 0.05);
}
.bg-surface-elevated { --tw-bg-opacity: 1; background-color: hsl(var(--surface-elevated) / var(--tw-bg-opacity, 1));
}
.bg-transparent { background-color: transparent;
}
.bg-warning { --tw-bg-opacity: 1; background-color: hsl(var(--warning) / var(--tw-bg-opacity, 1));
}
.bg-warning-100 { --tw-bg-opacity: 1; background-color: hsl(var(--warning-100) / var(--tw-bg-opacity, 1));
}
.bg-warning-50 { --tw-bg-opacity: 1; background-color: hsl(var(--warning-50) / var(--tw-bg-opacity, 1));
}
.bg-warning-500 { --tw-bg-opacity: 1; background-color: hsl(var(--warning-500) / var(--tw-bg-opacity, 1));
}
.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-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));
}
.from-\[hsl\(var\(--badge-gradient-from\)\)\] { --tw-gradient-from: hsl(var(--badge-gradient-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--badge-gradient-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-\[hsl\(var\(--btn-gradient-from\)\)\] { --tw-gradient-from: hsl(var(--btn-gradient-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--btn-gradient-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-\[hsl\(var\(--progress-gradient-from\)\)\] { --tw-gradient-from: hsl(var(--progress-gradient-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--progress-gradient-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-\[hsl\(var\(--route-progress-gradient-from\)\)\] { --tw-gradient-from: hsl(var(--route-progress-gradient-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--route-progress-gradient-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.from-background { --tw-gradient-from: hsl(var(--background) / 1) 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-card { --tw-gradient-from: hsl(var(--card) / 1) 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\/5 { --tw-gradient-from: hsl(var(--destructive) / 0.05) 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-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-transparent { --tw-gradient-from: transparent 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);
}
.via-\[hsl\(var\(--progress-gradient-via\)\)\] { --tw-gradient-to: hsl(var(--progress-gradient-via) / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--progress-gradient-via)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-\[hsl\(var\(--route-progress-gradient-via\)\)\] { --tw-gradient-to: hsl(var(--route-progress-gradient-via) / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--route-progress-gradient-via)) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-background { --tw-gradient-to: hsl(var(--background) / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--background) / 1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-card { --tw-gradient-to: hsl(var(--card) / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--card) / 1) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-white\/20 { --tw-gradient-to: rgb(255 255 255 / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-\[hsl\(var\(--badge-gradient-to\)\)\] { --tw-gradient-to: hsl(var(--badge-gradient-to)) var(--tw-gradient-to-position);
}
.to-\[hsl\(var\(--btn-gradient-to\)\)\] { --tw-gradient-to: hsl(var(--btn-gradient-to)) var(--tw-gradient-to-position);
}
.to-\[hsl\(var\(--progress-gradient-to\)\)\] { --tw-gradient-to: hsl(var(--progress-gradient-to)) var(--tw-gradient-to-position);
}
.to-\[hsl\(var\(--route-progress-gradient-to\)\)\] { --tw-gradient-to: hsl(var(--route-progress-gradient-to)) var(--tw-gradient-to-position);
}
.to-card-elevated { --tw-gradient-to: hsl(var(--card-elevated) / 1) var(--tw-gradient-to-position);
}
.to-card\/50 { --tw-gradient-to: hsl(var(--card) / 0.5) var(--tw-gradient-to-position);
}
.to-destructive\/10 { --tw-gradient-to: hsl(var(--destructive) / 0.1) var(--tw-gradient-to-position);
}
.to-muted\/20 { --tw-gradient-to: hsl(var(--muted) / 0.2) var(--tw-gradient-to-position);
}
.to-primary\/10 { --tw-gradient-to: hsl(var(--primary) / 0.1) var(--tw-gradient-to-position);
}
.to-transparent { --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.fill-current { fill: currentColor;
}
.fill-destructive { fill: hsl(var(--destructive) / 1);
}
.fill-popover { fill: hsl(var(--popover) / 1);
}
.fill-primary { fill: hsl(var(--primary) / 1);
}
.stroke-error { stroke: hsl(var(--error) / 1);
}
.stroke-primary { stroke: hsl(var(--primary) / 1);
}
.stroke-success { stroke: hsl(var(--success) / 1);
}
.stroke-warning { stroke: hsl(var(--warning) / 1);
}
.p-0 { padding: 0px;
}
.p-0\.5 { padding: 0.125rem;
}
.p-1 { padding: 0.25rem;
}
.p-1\.5 { padding: 0.375rem;
}
.p-12 { padding: 3rem;
}
.p-2 { padding: 0.5rem;
}
.p-2\.5 { padding: 0.625rem;
}
.p-3 { padding: 0.75rem;
}
.p-4 { padding: 1rem;
}
.p-5 { padding: 1.25rem;
}
.p-6 { padding: 1.5rem;
}
.p-8 { padding: 2rem;
}
.px-0 { padding-left: 0px; padding-right: 0px;
}
.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-3 { padding-top: 0.75rem; padding-bottom: 0.75rem;
}
.py-4 { padding-top: 1rem; padding-bottom: 1rem;
}
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem;
}
.py-8 { padding-top: 2rem; padding-bottom: 2rem;
}
.pb-0 { padding-bottom: 0px;
}
.pb-1 { padding-bottom: 0.25rem;
}
.pb-2 { padding-bottom: 0.5rem;
}
.pb-3 { padding-bottom: 0.75rem;
}
.pb-4 { padding-bottom: 1rem;
}
.pb-6 { padding-bottom: 1.5rem;
}
.pb-8 { padding-bottom: 2rem;
}
.pb-\[env\(safe-area-inset-bottom\)\] { padding-bottom: env(safe-area-inset-bottom);
}
.pl-10 { padding-left: 2.5rem;
}
.pl-2 { padding-left: 0.5rem;
}
.pl-3 { padding-left: 0.75rem;
}
.pl-4 { padding-left: 1rem;
}
.pl-5 { padding-left: 1.25rem;
}
.pl-6 { padding-left: 1.5rem;
}
.pl-8 { padding-left: 2rem;
}
.pr-10 { padding-right: 2.5rem;
}
.pr-12 { padding-right: 3rem;
}
.pr-2 { padding-right: 0.5rem;
}
.pr-2\.5 { padding-right: 0.625rem;
}
.pr-4 { padding-right: 1rem;
}
.pr-8 { padding-right: 2rem;
}
.pt-0 { padding-top: 0px;
}
.pt-1 { padding-top: 0.25rem;
}
.pt-16 { padding-top: 4rem;
}
.pt-2 { padding-top: 0.5rem;
}
.pt-3 { padding-top: 0.75rem;
}
.pt-4 { padding-top: 1rem;
}
.pt-6 { padding-top: 1.5rem;
}
.pt-8 { padding-top: 2rem;
}
.text-left { text-align: left;
}
.text-center { text-align: center;
}
.text-right { text-align: right;
}
.align-top { vertical-align: top;
}
.align-middle { vertical-align: middle;
}
.font-body { font-family: var(--font-inter), Inter, system-ui, sans-serif;
}
.font-display { font-family: var(--font-poppins), Poppins, system-ui, sans-serif;
}
.font-mono { font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}
.font-sans { font-family: var(--font-inter), Inter, system-ui, sans-serif;
}
.text-2xl { font-size: 1.5rem; line-height: 2rem;
}
.text-3xl { font-size: 1.875rem; line-height: 2.25rem;
}
.text-4xl { font-size: 2.25rem; line-height: 2.5rem;
}
.text-5xl { font-size: 3rem; line-height: 1;
}
.text-6xl { font-size: 3.75rem; line-height: 1;
}
.text-\[10px\] { font-size: 10px;
}
.text-\[11px\] { font-size: 11px;
}
.text-base { font-size: 1rem; line-height: 1.5rem;
}
.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-bold { font-weight: 700;
}
.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;
}
.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-none { line-height: 1;
}
.leading-relaxed { line-height: 1.625;
}
.tracking-\[1\.2rem\] { letter-spacing: 1.2rem;
}
.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\(--alert-warning-fg\)\)\] { color: hsl(var(--alert-warning-fg));
}
.text-\[hsl\(var\(--btn-primary-fg\)\)\] { color: hsl(var(--btn-primary-fg));
}
.text-\[hsl\(var\(--link\)\)\] { color: hsl(var(--link));
}
.text-accent { --tw-text-opacity: 1; color: hsl(var(--accent) / var(--tw-text-opacity, 1));
}
.text-accent-foreground { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.text-amber-700 { --tw-text-opacity: 1; color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}
.text-chart-4 { --tw-text-opacity: 1; color: hsl(var(--chart-4) / var(--tw-text-opacity, 1));
}
.text-current { color: currentColor;
}
.text-destructive { --tw-text-opacity: 1; color: hsl(var(--destructive) / var(--tw-text-opacity, 1));
}
.text-destructive-foreground { --tw-text-opacity: 1; color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));
}
.text-error { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.text-error-foreground { --tw-text-opacity: 1; color: hsl(var(--error-foreground) / var(--tw-text-opacity, 1));
}
.text-error-foreground\/80 { color: hsl(var(--error-foreground) / 0.8);
}
.text-error\/90 { color: hsl(var(--error) / 0.9);
}
.text-foreground { --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.text-foreground\/95 { color: hsl(var(--foreground) / 0.95);
}
.text-gray-9 { --tw-text-opacity: 1; color: hsl(var(--gray-9) / var(--tw-text-opacity, 1));
}
.text-info { --tw-text-opacity: 1; color: hsl(var(--info) / var(--tw-text-opacity, 1));
}
.text-info-foreground { --tw-text-opacity: 1; color: hsl(var(--info-foreground) / var(--tw-text-opacity, 1));
}
.text-menu-icon { --tw-text-opacity: 1; color: hsl(var(--menu-icon) / var(--tw-text-opacity, 1));
}
.text-muted-foreground { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.text-muted-foreground\/60 { color: hsl(var(--muted-foreground) / 0.6);
}
.text-muted-foreground\/70 { color: hsl(var(--muted-foreground) / 0.7);
}
.text-muted\/30 { color: hsl(var(--muted) / 0.3);
}
.text-neutral-500 { --tw-text-opacity: 1; color: hsl(var(--neutral-500) / var(--tw-text-opacity, 1));
}
.text-neutral-900 { --tw-text-opacity: 1; color: hsl(var(--neutral-900) / var(--tw-text-opacity, 1));
}
.text-popover-foreground { --tw-text-opacity: 1; color: hsl(var(--popover-foreground) / var(--tw-text-opacity, 1));
}
.text-primary { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.text-primary-600 { --tw-text-opacity: 1; color: hsl(var(--primary-600) / var(--tw-text-opacity, 1));
}
.text-primary-foreground { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.text-secondary-foreground { --tw-text-opacity: 1; color: hsl(var(--secondary-foreground) / var(--tw-text-opacity, 1));
}
.text-sidebar-foreground { --tw-text-opacity: 1; color: hsl(var(--sidebar-foreground) / var(--tw-text-opacity, 1));
}
.text-sidebar-foreground\/70 { color: hsl(var(--sidebar-foreground) / 0.7);
}
.text-success { --tw-text-opacity: 1; color: hsl(var(--success) / var(--tw-text-opacity, 1));
}
.text-success-foreground { --tw-text-opacity: 1; color: hsl(var(--success-foreground) / var(--tw-text-opacity, 1));
}
.text-warning { --tw-text-opacity: 1; color: hsl(var(--warning) / var(--tw-text-opacity, 1));
}
.text-warning-400 { --tw-text-opacity: 1; color: hsl(var(--warning-400) / var(--tw-text-opacity, 1));
}
.text-warning-500 { --tw-text-opacity: 1; color: hsl(var(--warning-500) / var(--tw-text-opacity, 1));
}
.text-warning-600 { --tw-text-opacity: 1; color: hsl(var(--warning-600) / var(--tw-text-opacity, 1));
}
.text-warning-700 { --tw-text-opacity: 1; color: hsl(var(--warning-700) / var(--tw-text-opacity, 1));
}
.text-warning-foreground { --tw-text-opacity: 1; color: hsl(var(--warning-foreground) / var(--tw-text-opacity, 1));
}
.underline { text-decoration-line: underline;
}
.line-through { text-decoration-line: line-through;
}
.underline-offset-2 { text-underline-offset: 2px;
}
.underline-offset-4 { text-underline-offset: 4px;
}
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.accent-primary { accent-color: hsl(var(--primary) / 1);
}
.opacity-0 { opacity: 0;
}
.opacity-100 { opacity: 1;
}
.opacity-50 { opacity: 0.5;
}
.opacity-60 { opacity: 0.6;
}
.opacity-70 { opacity: 0.7;
}
.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_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_3px_0_hsl\(var\(--destructive\)\/0\.12\)\] { --tw-shadow: 0 1px 3px 0 hsl(var(--destructive)/0.12); --tw-shadow-colored: 0 1px 3px 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-elevation-1 { --tw-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08); --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-elevation-2 { --tw-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12); --tw-shadow-colored: 0 2px 4px -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-elevation-3 { --tw-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16); --tw-shadow-colored: 0 4px 8px -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-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);
}
.outline-none { outline: 2px solid transparent; outline-offset: 2px;
}
.outline { outline-style: solid;
}
.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-border\/10 { --tw-ring-color: hsl(var(--border) / 0.1);
}
.ring-primary { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--primary) / var(--tw-ring-opacity, 1));
}
.ring-primary\/20 { --tw-ring-color: hsl(var(--primary) / 0.2);
}
.ring-primary\/40 { --tw-ring-color: hsl(var(--primary) / 0.4);
}
.ring-primary\/50 { --tw-ring-color: hsl(var(--primary) / 0.5);
}
.ring-sidebar-ring { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--sidebar-ring) / var(--tw-ring-opacity, 1));
}
.ring-offset-background { --tw-ring-offset-color: hsl(var(--background) / 1);
}
.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);
}
.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);
}
.\!filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow) !important;
}
.filter { filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.backdrop-blur { --tw-backdrop-blur: blur(8px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-blur-0 { --tw-backdrop-blur: blur(0); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-blur-sm { --tw-backdrop-blur: blur(4px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-filter { backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.transition { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-\[color\2c box-shadow\] { transition-property: color,box-shadow; 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 opacity\] { transition-property: margin,opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
}
.transition-\[width\2c height\2c padding\] { transition-property: width,height,padding; 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;
}
.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);
}
@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-0 { --tw-enter-opacity: 0;
}
.fade-in-10 { --tw-enter-opacity: 0.1;
}
.zoom-in-95 { --tw-enter-scale: .95;
}
.slide-in-from-bottom-1 { --tw-enter-translate-y: 0.25rem;
}
.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;
}
.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);
}
.running { animation-play-state: running;
}
/* Resend-like effects */
/* Accessibility-focused focus ring utility */
/* Transition duration utilities */
/* Easing function utilities */
/* Sticky reliability utilities */
/* Horizontal scroll fade helpers */
/* removed duplicate .scroll-fade-x base block to keep utilities version only */
.scroll-fade-x::before,
    .scroll-fade-x::after {
      content: "";
      position: absolute;
      top: 0; bottom: 0;
      width: 24px;
      pointer-events: none;
      z-index: 10;
    }
.scroll-fade-x::before {
      left: 0;
      background: linear-gradient(90deg, hsl(var(--background)) 0%, hsl(var(--background) / 0) 100%);
    }
.scroll-fade-x::after {
      right: 0;
      background: linear-gradient(270deg, hsl(var(--background)) 0%, hsl(var(--background) / 0) 100%);
    }
.focus-ring:focus-visible { border-color: hsl(var(--a11y-outline-hc)); outline: 2px solid transparent; outline-offset: 2px; --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1)); --tw-ring-offset-width: 2px; --tw-ring-offset-color: hsl(var(--background) / 1);
}
/* Safe overflow wrapper */
.overflow-safe {
        overflow: hidden;
        overflow-wrap: break-word;
        word-break: break-word;
    }
/* Enhanced card system with psychological comfort */
/* Improve placeholder contrast globally */
:root { --placeholder-color: var(--slate-10); }
.dark { --placeholder-color: var(--slate-11); }
input::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
        color: hsl(var(--placeholder-color) / 0.85);
    }
input::placeholder,
    textarea::placeholder,
    select::placeholder {
        color: hsl(var(--placeholder-color) / 0.85);
    }
.card-container-safe { border-radius: var(--radius-xl);
        /* Subtle shadow for depth perception */
        box-shadow: 0 1px 3px 0 hsl(var(--primary) / 0.08);
}
.card-title-safe {
        text-wrap: balance;
        line-height: 1.2;
        color: hsl(var(--foreground));
    }
.card-content-safe > :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));
}
.card-content-safe {
        color: hsl(var(--muted-foreground));
    }
/* Improved heading hierarchy with better visual weight */
.heading-hierarchy h1 { font-size: 1.875rem; line-height: 2.25rem; font-weight: 700; letter-spacing: -0.025em;
}
@media (min-width: 768px) {
  .heading-hierarchy h1 { font-size: 2.25rem; line-height: 2.5rem;
  }
}
.heading-hierarchy h1 {
        color: hsl(var(--foreground));
        margin-bottom: 0.75rem;
    }
.heading-hierarchy h2 { font-size: 1.5rem; line-height: 2rem; font-weight: 600;
}
@media (min-width: 768px) {
  .heading-hierarchy h2 { font-size: 1.875rem; line-height: 2.25rem;
  }
}
.heading-hierarchy h2 {
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem;
    }
.heading-hierarchy h3 { font-size: 1.25rem; line-height: 1.75rem; font-weight: 600;
}
@media (min-width: 768px) {
  .heading-hierarchy h3 { font-size: 1.5rem; line-height: 2rem;
  }
}
.heading-hierarchy h3 {
        color: hsl(var(--foreground));
        margin-bottom: 0.5rem;
    }
.heading-hierarchy h4 { font-size: 1.125rem; line-height: 1.75rem; font-weight: 600;
        color: hsl(var(--foreground));
        margin-bottom: 0.25rem;
}
.heading-hierarchy p { line-height: 1.625; --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
        margin-bottom: 1rem;
}
/* Landmark navigation helper */
.landmark-nav:focus-visible { outline: 2px solid transparent; outline-offset: 2px;
}
/* Balanced text utility */
.text-balance {
        text-wrap: balance;
    }
/* Enhanced glass effect with better light mode appearance */
/* Smooth animations */
.animate-fade-in {
        animation: fadeIn 0.6s ease-out both;
    }
@keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(6px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
/* Conic spinner background */
.bg-conic-spinner {
        background:
            conic-gradient(from 0deg, currentColor 0deg, currentColor 90deg, transparent 120deg 360deg);
    }
/* Mobile-optimized utilities */
.mobile-container { padding-left: 1rem; padding-right: 1rem;
}
@media (min-width: 640px) {
  .mobile-container { padding-left: 1.5rem; padding-right: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .mobile-container { padding-left: 2rem; padding-right: 2rem;
  }
}
.mobile-text-scale { font-size: 0.875rem; line-height: 1.25rem;
}
@media (min-width: 640px) {
  .mobile-text-scale { font-size: 1rem; line-height: 1.5rem;
  }
}
.mobile-touch-target { min-height: 44px; min-width: 44px;
}
.animate-slide-up {
        animation: slideUp 0.6s ease-out forwards;
    }
@keyframes slideUp {
        from {
            opacity: 0;
            margin-top: 20px;
        }

        to {
            opacity: 1;
            margin-top: 0;
        }
    }
/* Scroll edge fade for horizontal overflow containers */
/* removed duplicate .scroll-fade-x base block to keep utilities version only */
.scroll-fade-x::before,
  .scroll-fade-x::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: var(--scroll-fade-size, 24px);
    pointer-events: none;
    z-index: 10;
  }
.scroll-fade-x::before {
    left: 0;
    background: linear-gradient(90deg, hsl(var(--background)) 0%, hsl(var(--background) / 0) 100%);
  }
.scroll-fade-x::after {
    right: 0;
    background: linear-gradient(270deg, hsl(var(--background)) 0%, hsl(var(--background) / 0) 100%);
  }
/* Masked edges for screenshots/illustrations */
/* Decorative overlays that should not render in dark mode */
:is(.dark) .decorative-overlay { display: none; }
.\[counter-reset\:line\] { counter-reset: line;
}
.\[delete\:confirm\] { delete: confirm;
}
.\[delete\:initiate\] { delete: initiate;
}
.\[tasks\:purge\] { tasks: purge;
}
.\[word-break\:break-word\] { word-break: break-word;
}
:root {
  /* Base Resend palette (light theme) */
  --gray-1: 0 0% 98.8%;
  --gray-2: 0 0% 97.6%;
  --gray-3: 0 0% 94.1%;
  --gray-4: 0 0% 91%;
  --gray-5: 0 0% 87.8%;
  --gray-6: 0 0% 85.1%;
  --gray-7: 0 0% 80.8%;
  --gray-8: 0 0% 73.3%;
  --gray-9: 0 0% 55.3%;
  --gray-10: 0 0% 51.4%;
  --gray-11: 0 0% 39.2%;
  --gray-12: 0 0% 12.5%;

  --slate-1: 240 20% 99%;
  --slate-2: 240 20% 98%;
  --slate-3: 240 11.1% 94.7%;
  --slate-4: 240 9.5% 91.8%;
  --slate-5: 230 10.7% 89%;
  --slate-6: 240 10.1% 86.5%;
  --slate-7: 233 9.9% 82.2%;
  --slate-8: 231 10.2% 75.1%;
  --slate-9: 231 5.9% 57.1%;
  --slate-10: 226 5.4% 52.7%;
  --slate-11: 220 5.9% 40%;
  --slate-12: 210 12.5% 12.5%;

  --green-1: 140 60% 99%;
  --green-2: 137 46.7% 97.1%;
  --green-3: 139 47.1% 93.3%;
  --green-4: 140 49.1% 89.2%;
  --green-5: 142 43.9% 83.9%;
  --green-6: 144 41.4% 77.3%;
  --green-7: 146 39.5% 68.2%;
  --green-8: 151 40.2% 54.1%;
  --green-9: 151 54.7% 41.6%;
  --green-10: 152 56.3% 38.6%;
  --green-11: 154 59.8% 32.2%;
  --green-12: 155 40.5% 16.5%;

  --mint-1: 168 71.4% 98.6%;
  --mint-2: 167 52.9% 96.7%;
  --mint-3: 165 70% 92.2%;
  --mint-4: 165 66.7% 87.1%;
  --mint-5: 165 60% 81.4%;
  --mint-6: 166 52.3% 74.5%;
  --mint-7: 167 45.8% 65.3%;
  --mint-8: 168 44.9% 51.6%;
  --mint-9: 167 70.4% 72.2%;
  --mint-10: 167 61.5% 68.4%;
  --mint-11: 170 96.7% 23.9%;
  --mint-12: 171 50.6% 17.5%;

  /* Alpha scales */
  --gray-a1: 0 0% 0% / 0;
  --gray-a2: 0 0% 100% / 0.035;
  --gray-a3: 0 0% 100% / 0.071;
  --gray-a4: 0 0% 100% / 0.106;
  --gray-a5: 0 0% 100% / 0.133;
  --gray-a6: 0 0% 100% / 0.173;
  --gray-a7: 0 0% 100% / 0.231;
  --gray-a8: 0 0% 100% / 0.333;
  --gray-a9: 0 0% 100% / 0.392;
  --gray-a10: 0 0% 100% / 0.447;
  --gray-a11: 0 0% 100% / 0.686;
  --gray-a12: 0 0% 100% / 0.929;

  --slate-a1: 0 0% 0% / 0;
  --slate-a2: 184 62.5% 90.6% / 0.035;
  --slate-a3: 211 65.9% 92% / 0.078;
  --slate-a4: 198 72.5% 90% / 0.114;
  --slate-a5: 208 94.9% 92.4% / 0.145;
  --slate-a6: 208 90.7% 91.6% / 0.188;
  --slate-a7: 208 100% 92.5% / 0.251;
  --slate-a8: 208 100% 92.5% / 0.365;
  --slate-a9: 216 88.2% 93.3% / 0.427;
  --slate-a10: 220 85.7% 94.5% / 0.482;
  --slate-a11: 212 86.7% 97.1% / 0.71;
  --slate-a12: 220 100% 99.4% / 0.937;

  --green-a1: 139 100% 43.5% / 0.02;
  --green-a2: 153 94.5% 56.9% / 0.043;
  --green-a3: 152 100% 56.7% / 0.118;
  --green-a4: 154 100% 53.3% / 0.176;
  --green-a5: 154 100% 58.4% / 0.235;
  --green-a6: 153 100% 63.3% / 0.294;
  --green-a7: 152 97.7% 65.3% / 0.369;
  --green-a8: 151 100% 66.5% / 0.451;
  --green-a9: 151 100% 63.3% / 0.62;
  --green-a10: 151 98.9% 62.9% / 0.671;
  --green-a11: 151 98.9% 63.5% / 0.831;
  --green-a12: 145 100% 86.7% / 0.941;

  --mint-a1: 180 100% 43.5% / 0.02;
  --mint-a2: 180 100% 48.8% / 0.043;
  --mint-a3: 178 100% 50% / 0.114;
  --mint-a4: 177 100% 50% / 0.173;
  --mint-a5: 177 100% 50% / 0.227;
  --mint-a6: 175 100% 52.7% / 0.29;
  --mint-a7: 173 98% 59.8% / 0.369;
  --mint-a8: 170 100% 62.7% / 0.463;
  --mint-a9: 167 100% 78.6% / 0.914;
  --mint-a10: 167 97.6% 83.9% / 0.961;
  --mint-a11: 167 100% 70.2% / 0.824;
  --mint-a12: 155 96.2% 89.6% / 0.961;

  --black-a1: color(display-p3 0 0 0 / 0.05);
  --black-a2: color(display-p3 0 0 0 / 0.1);
  --black-a3: color(display-p3 0 0 0 / 0.15);
  --black-a4: color(display-p3 0 0 0 / 0.2);
  --black-a5: color(display-p3 0 0 0 / 0.3);
  --black-a6: color(display-p3 0 0 0 / 0.4);
  --black-a7: color(display-p3 0 0 0 / 0.5);
  --black-a8: color(display-p3 0 0 0 / 0.6);
  --black-a9: color(display-p3 0 0 0 / 0.7);
  --black-a10: color(display-p3 0 0 0 / 0.8);
  --black-a11: color(display-p3 0 0 0 / 0.9);
  --black-a12: color(display-p3 0 0 0 / 0.95);

  --contrast-surface: 0 0% 0%;
  --contrast-foreground: 0 0% 100%;

  /* Neutral aliases */
  --neutral-50: var(--slate-1);
  --neutral-100: var(--slate-2);
  --neutral-200: var(--slate-3);
  --neutral-300: var(--slate-4);
  --neutral-400: var(--slate-6);
  --neutral-500: var(--slate-7);
  --neutral-600: var(--slate-8);
  --neutral-700: var(--slate-9);
  --neutral-800: var(--slate-10);
  --neutral-900: var(--slate-12);

  /* Surface system */
  --background: var(--slate-1);
  --background-secondary: var(--slate-2);
  --background-tertiary: var(--slate-3);
  --foreground: var(--slate-12);
  --foreground-secondary: var(--slate-11);
  --foreground-tertiary: var(--slate-9);

  --card: var(--gray-1);
  --card-foreground: var(--gray-12);
  --card-elevated: var(--gray-2);
  --card-interactive: var(--mint-3);
  --surface: var(--card);
  --surface-foreground: var(--card-foreground);
  --surface-elevated: var(--card-elevated);
  --surface-overlay: var(--mint-a3);

  --popover: var(--gray-1);
  --popover-foreground: var(--gray-12);

  /* Primary palette */
  --primary: var(--mint-9);
  --primary-foreground: var(--gray-1);
  --primary-hover: var(--mint-10);
  --primary-active: var(--mint-11);
  --primary-50: var(--mint-1);
  --primary-100: var(--mint-2);
  --primary-200: var(--mint-3);
  --primary-300: var(--mint-4);
  --primary-400: var(--mint-5);
  --primary-500: var(--mint-6);
  --primary-600: var(--mint-7);
  --primary-700: var(--mint-8);
  --primary-800: var(--mint-9);
  --primary-900: var(--mint-10);

  --secondary: var(--slate-3);
  --secondary-foreground: var(--slate-12);
  --secondary-hover: var(--slate-4);

  --muted: var(--slate-3);
  --muted-foreground: var(--slate-10); /* AA for small text */

  --accent: var(--mint-3);
  --accent-foreground: var(--mint-11);
  --accent-50: var(--mint-1);
  --accent-100: var(--mint-2);
  --accent-200: var(--mint-3);
  --accent-300: var(--mint-4);
  --accent-400: var(--mint-5);
  --accent-500: var(--mint-6);

  /* Semantic tokens */
  --success: var(--green-9);
  --success-foreground: var(--gray-1);
  --success-50: var(--green-1);
  --success-100: var(--green-2);
  --success-200: var(--green-3);
  --success-300: var(--green-4);
  --success-400: var(--green-5);
  --success-500: var(--green-6);

  /* Warning palette tuned for WCAG AA contrast */
  --warning: 24 82% 48%;
  --warning-foreground: var(--gray-1);
  --warning-50: 24 100% 96%;
  --warning-100: 24 95% 88%;
  --warning-200: 24 92% 78%;
  --warning-300: 24 88% 68%;
  --warning-400: 24 78% 42%; /* Darker for better contrast (WCAG AA) */
  --warning-500: 24 82% 48%;
  --warning-600: 24 78% 40%;
  --warning-700: 24 72% 34%;

  --info: 217 90% 60%;
  --info-foreground: var(--gray-1);
  --info-50: 210 100% 96%;
  --info-100: 211 97% 90%;
  --info-200: 213 94% 82%;
  --info-300: 215 92% 72%;
  --info-400: 217 90% 60%;
  --info-500: 219 84% 52%;

  --destructive: 356 84% 54%;
  --destructive-foreground: var(--gray-1);
  --error: var(--destructive);
  --error-foreground: var(--destructive-foreground);
  --error-50: 356 100% 96%;
  --error-100: 356 96% 88%;
  --error-200: 356 92% 80%;
  --error-300: 356 88% 70%;
  --error-400: 356 84% 54%;
  --error-500: 356 78% 46%;

  --border: var(--slate-6);
  --border-secondary: var(--slate-5);
  --input: var(--gray-1);
  --input-border: var(--slate-6);
  --ring: var(--mint-9);

  /* Overlays */
  --overlay-weak: hsla(0, 0%, 0%, 0.12); --overlay-weak: color(display-p3 0 0 0 / 0.12);
  --overlay-strong: hsla(0, 0%, 0%, 0.32); --overlay-strong: color(display-p3 0 0 0 / 0.32);
  --backdrop: hsla(0, 0%, 0%, 0.56); --backdrop: color(display-p3 0 0 0 / 0.56); /* Stronger */
  --overlay: hsla(0, 0%, 0%, 0.65); --overlay: color(display-p3 0 0 0 / 0.65);

  /* Charts */
  --chart-1: 167 70.4% 72.2%;
  --chart-2: 151 54.7% 41.6%;
  --chart-3: 38 92% 60%;
  --chart-4: 270 85% 60%;
  --chart-5: 330 79% 58%;
  --chart-6: 210 88% 60%;
  --chart-7: 260 82% 62%;
  --chart-8: 46 96% 62%;
  --chart-9: 213 85% 66%;
  --chart-10: 28 96% 58%;

  /* Layout tokens */
  --radius: 0.625rem;
  --radius-sm: 0.375rem;
  --radius-lg: 0.875rem;
  --radius-xl: 1rem;
  --spacing: 0.25rem;

  /* Motion */
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --duration-slow: 300ms;
  --duration-slower: 450ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-decel: cubic-bezier(0, 0, 0.2, 1);
  --ease-accel: cubic-bezier(0.4, 0, 1, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  /* Gradients */
  --gradient-brand-1-from: var(--mint-9);
  --gradient-brand-1-to: var(--mint-7);
  --gradient-ocean-from: 210 88% 60%;
  --gradient-ocean-to: 190 80% 62%;
  --gradient-aurora-from: var(--mint-9);
  --gradient-aurora-to: var(--green-8);
  --gradient-sunset-from: 38 92% 60%;
  --gradient-sunset-to: 14 100% 57%;
  --gradient-overlay: color(display-p3 0 0 0 / 0.16);

  /* Sidebar + navigation */
  --sidebar: var(--slate-2);
  --sidebar-foreground: var(--slate-11);
  --sidebar-primary: var(--mint-9);
  --sidebar-primary-foreground: var(--gray-1);
  --sidebar-accent: var(--slate-3);
  --sidebar-accent-foreground: var(--slate-11);
  --sidebar-border: var(--slate-4);
  --sidebar-ring: var(--mint-9);
  --sidebar-elevated: var(--slate-1);

  --menu-text: var(--slate-10);
  --menu-text-hover: var(--mint-9);
  --menu-text-active: var(--mint-10);
  --menu-icon: var(--slate-8);
  --menu-icon-hover: var(--mint-8);
  --menu-section-label: var(--slate-8);

  /* Status */
  --status-online: var(--green-9);
  --status-offline: var(--slate-6);
  --status-busy: 14 100% 57%;
  --status-away: 46 96% 62%;

  /* Accessibility */
  --a11y-outline: var(--ring);
  --a11y-outline-hc: 55 100% 50%;
  --a11y-bg-hc: var(--contrast-surface);
  --a11y-fg-hc: var(--contrast-foreground);

  /* Brand aliases */
  --brand-1: var(--mint-1);
  --brand-2: var(--mint-2);
  --brand-3: var(--mint-3);
  --brand-4: var(--mint-4);
  --brand-5: var(--mint-5);
  --brand-6: var(--mint-6);
  --brand-7: var(--mint-7);
  --brand-8: var(--mint-8);
  --brand-9: var(--mint-9);
  --brand-10: var(--mint-10);
  --brand-11: var(--mint-11);
  --brand-12: var(--mint-12);

  /* Buttons & links */
  --btn-primary-bg: var(--primary-active); /* Darker base for white text AA */
  --btn-primary-fg: var(--primary-foreground);
  --btn-primary-hover: var(--primary-hover);
  --btn-primary-active: var(--primary-active);

  --btn-secondary-bg: var(--secondary);
  --btn-secondary-fg: var(--secondary-foreground);
  --btn-secondary-hover: var(--secondary-hover);

  --btn-ghost-bg: transparent;
  --btn-ghost-hover: var(--mint-a3);
  --btn-ghost-active: var(--mint-a4);

  --btn-gradient-from: var(--mint-9);
  --btn-gradient-to: var(--mint-7);
  --btn-gradient-hover-from: var(--mint-10);
  --btn-gradient-hover-to: var(--mint-8);

  --link: var(--mint-11);
  --link-hover: var(--mint-12);
  --link-visited: var(--mint-10);

  --route-progress-gradient-from: var(--mint-9);
  --route-progress-gradient-via: var(--mint-6);
  --route-progress-gradient-to: var(--green-9);

  --focus-ring: var(--ring);

  --alert-success-bg: var(--green-1);
  --alert-success-fg: var(--gray-12);
  --alert-success-border: var(--green-4);

  --alert-warning-bg: var(--warning-50);
  --alert-warning-fg: var(--foreground);
  --alert-warning-border: var(--warning-300);

  --alert-error-bg: var(--error-50);
  --alert-error-fg: var(--foreground);
  --alert-error-border: var(--error-300);

  --alert-info-bg: var(--info-50);
  --alert-info-fg: var(--foreground);
  --alert-info-border: var(--info-300);

  /* Card stat gradients */
  --card-stat-gradient-from: var(--accent-foreground);
  --card-stat-gradient-to: var(--primary);
}
.dark {
  /* Resend palette (dark theme) */
  --gray-1: 0 0% 6.7%;
  --gray-2: 0 0% 9.8%;
  --gray-3: 0 0% 13.3%;
  --gray-4: 0 0% 16.5%;
  --gray-5: 0 0% 19.2%;
  --gray-6: 0 0% 22.7%;
  --gray-7: 0 0% 28.2%;
  --gray-8: 0 0% 37.6%;
  --gray-9: 0 0% 43.1%;
  --gray-10: 0 0% 48.2%;
  --gray-11: 0 0% 70.6%;
  --gray-12: 0 0% 93.3%;

  --slate-1: 240 5.6% 7.1%;
  --slate-2: 220 5.9% 10%;
  --slate-3: 225 5.7% 13.7%;
  --slate-4: 210 7.1% 16.5%;
  --slate-5: 214 7.1% 19.4%;
  --slate-6: 213 7.7% 22.9%;
  --slate-7: 213 7.6% 28.4%;
  --slate-8: 212 7.7% 38.2%;
  --slate-9: 219 6.3% 43.9%;
  --slate-10: 222 5.2% 49.2%;
  --slate-11: 216 6.8% 71%;
  --slate-12: 220 9.1% 93.5%;

  --green-1: 154 20% 6.9%;
  --green-2: 153 20% 8.8%;
  --green-3: 152 40.6% 12.5%;
  --green-4: 154 55.3% 14.9%;
  --green-5: 154 52.1% 18.8%;
  --green-6: 153 46.2% 23.3%;
  --green-7: 152 44.4% 28.2%;
  --green-8: 151 45% 33.5%;
  --green-9: 151 54.7% 41.6%;
  --green-10: 151 55.1% 44.5%;
  --green-11: 151 65.1% 53.9%;
  --green-12: 144 69.6% 82%;

  --mint-1: 180 20% 6.9%;
  --mint-2: 180 28.6% 8.2%;
  --mint-3: 178 66% 10.4%;
  --mint-4: 178 100% 11.4%;
  --mint-5: 177 100% 13.9%;
  --mint-6: 175 68.6% 20%;
  --mint-7: 173 55.2% 26.3%;
  --mint-8: 170 53% 32.5%;
  --mint-9: 167 70.4% 72.2%;
  --mint-10: 168 79.4% 81%;
  --mint-11: 167 59.8% 59%;
  --mint-12: 156 71% 86.5%;

  --neutral-50: var(--slate-1);
  --neutral-100: var(--slate-2);
  --neutral-200: var(--slate-3);
  --neutral-300: var(--slate-4);
  --neutral-400: var(--slate-5);
  --neutral-500: var(--slate-6);
  --neutral-600: var(--slate-8);
  --neutral-700: var(--slate-9);
  --neutral-800: var(--slate-10);
  --neutral-900: var(--slate-12);

  --background: var(--slate-1);
  --background-secondary: var(--slate-2);
  --background-tertiary: var(--slate-3);
  --foreground: var(--slate-12);
  --foreground-secondary: var(--slate-11);
  --foreground-tertiary: var(--slate-10);

  --card: var(--slate-2);
  --card-foreground: var(--slate-12);
  --card-elevated: var(--slate-3);
  --card-interactive: var(--mint-5);
  --surface: var(--card);
  --surface-foreground: var(--card-foreground);
  --surface-elevated: var(--card-elevated);
  --surface-overlay: var(--mint-a4);

  --popover: var(--slate-2);
  --popover-foreground: var(--slate-12);

  --primary: var(--mint-9);
  --primary-foreground: var(--gray-12);
  --primary-hover: var(--mint-10);
  --primary-active: var(--mint-11);

  --secondary: var(--slate-3);
  --secondary-foreground: var(--slate-12);
  --secondary-hover: var(--slate-4);

  --muted: var(--slate-4);
  --muted-foreground: var(--slate-10);

  --accent: var(--mint-5);
  --accent-foreground: var(--mint-11);

  --success: var(--green-9);
  --success-foreground: var(--gray-12);

  /* Warning palette tuned for WCAG AA contrast */
  --warning: 28 85% 52%;
  --warning-foreground: var(--gray-12);
  --warning-50: 28 70% 22%;
  --warning-100: 28 72% 28%;
  --warning-200: 28 74% 34%;
  --warning-300: 28 78% 40%;
  --warning-400: 28 82% 46%;
  --warning-500: 28 85% 52%;
  --warning-600: 28 88% 58%;
  --warning-700: 28 90% 64%;

  --info: 216 92% 70%;
  --info-foreground: var(--gray-12);
  --info-50: 215 92% 20%;
  --info-100: 215 92% 26%;
  --info-200: 216 92% 32%;
  --info-300: 216 92% 40%;
  --info-400: 216 92% 52%;
  --info-500: 216 92% 70%;

  --destructive: 358 74% 62%;
  --destructive-foreground: var(--gray-12);
  --error: var(--destructive);
  --error-foreground: var(--destructive-foreground);
  --error-50: 358 70% 18%;
  --error-100: 358 70% 24%;
  --error-200: 358 74% 32%;
  --error-300: 358 74% 40%;
  --error-400: 358 74% 52%;
  --error-500: 358 74% 62%;

  --border: var(--slate-6);
  --border-secondary: var(--slate-4); /* Increased contrast for subtle borders in dark theme */
  --input: var(--slate-3);
  --input-border: var(--slate-6);
  --ring: var(--mint-9);

  --overlay-weak: color(display-p3 0 0 0 / 0.15);
  --overlay-strong: color(display-p3 0 0 0 / 0.35);
  --backdrop: color(display-p3 0 0 0 / 0.5);
  --overlay: color(display-p3 0 0 0 / 0.85);

  --chart-1: 167 70.4% 72.2%;
  --chart-2: 151 54.7% 41.6%;
  --chart-3: 38 92% 60%;
  --chart-4: 270 85% 66%;
  --chart-5: 330 79% 64%;
  --chart-6: 210 88% 66%;
  --chart-7: 260 82% 68%;
  --chart-8: 46 96% 66%;
  --chart-9: 213 85% 70%;
  --chart-10: 28 96% 66%;

  --gradient-brand-1-from: var(--mint-9);
  --gradient-brand-1-to: var(--mint-7);
  --gradient-ocean-from: 210 88% 62%;
  --gradient-ocean-to: 190 80% 64%;
  --gradient-aurora-from: var(--mint-9);
  --gradient-aurora-to: var(--green-8);
  --gradient-sunset-from: 38 92% 60%;
  --gradient-sunset-to: 14 100% 57%;
  --gradient-overlay: color(display-p3 0 0 0 / 0.28);

  --sidebar: var(--slate-2);
  --sidebar-foreground: var(--slate-11);
  --sidebar-primary: var(--mint-9);
  --sidebar-primary-foreground: var(--gray-12);
  --sidebar-accent: var(--slate-3);
  --sidebar-accent-foreground: var(--slate-12);
  --sidebar-border: var(--slate-4);
  --sidebar-ring: var(--mint-9);
  --sidebar-elevated: var(--slate-1);

  --menu-text: var(--slate-11);
  --menu-text-hover: var(--mint-9);
  --menu-text-active: var(--mint-10);
  --menu-icon: var(--slate-9);
  --menu-icon-hover: var(--mint-9);
  --menu-section-label: var(--slate-8);

  --status-online: var(--green-9);
  --status-offline: var(--slate-6);
  --status-busy: 14 100% 61%;
  --status-away: 46 96% 66%;

  --a11y-outline: var(--ring);
  --a11y-outline-hc: 55 100% 50%;
  --a11y-bg-hc: var(--contrast-surface);
  --a11y-fg-hc: var(--contrast-foreground);

  --brand-1: var(--mint-1);
  --brand-2: var(--mint-2);
  --brand-3: var(--mint-3);
  --brand-4: var(--mint-4);
  --brand-5: var(--mint-5);
  --brand-6: var(--mint-6);
  --brand-7: var(--mint-7);
  --brand-8: var(--mint-8);
  --brand-9: var(--mint-9);
  --brand-10: var(--mint-10);
  --brand-11: var(--mint-11);
  --brand-12: var(--mint-12);

  --btn-primary-bg: var(--primary-active); /* Darker base for white text AA */
  --btn-primary-fg: var(--primary-foreground);
  --btn-primary-hover: var(--primary-hover);
  --btn-primary-active: var(--primary-active);

  --btn-secondary-bg: var(--secondary);
  --btn-secondary-fg: var(--secondary-foreground);
  --btn-secondary-hover: var(--secondary-hover);
  --btn-secondary-active: var(--slate-5);

  --btn-ghost-bg: transparent;
  --btn-ghost-fg: var(--foreground-secondary);
  --btn-ghost-hover: var(--accent);
  --btn-ghost-hover-fg: var(--accent-foreground);
  --btn-ghost-active: var(--mint-a5);

  --link: var(--mint-11);
  --link-hover: var(--mint-12);
  --link-visited: var(--mint-10);

  --route-progress-gradient-from: var(--mint-9);
  --route-progress-gradient-via: var(--mint-6);
  --route-progress-gradient-to: var(--green-9);

  --focus-ring: var(--ring);

  --alert-success-bg: var(--green-3);
  --alert-success-fg: var(--gray-12);
  --alert-success-border: var(--green-6);

  --alert-warning-bg: var(--warning-100);
  --alert-warning-fg: var(--foreground);
  --alert-warning-border: var(--warning-300);

  --alert-error-bg: var(--error-100);
  --alert-error-fg: var(--foreground);
  --alert-error-border: var(--error-300);

  --alert-info-bg: var(--info-100);
  --alert-info-fg: var(--foreground);
  --alert-info-border: var(--info-300);

  /* Card stat gradients */
  --card-stat-gradient-from: var(--accent-foreground);
  --card-stat-gradient-to: var(--primary);
}
/* === COMPREHENSIVE COMPONENT SYSTEM === */
/* Styled scrollbar utilities */
.styled-scrollbar {
  scrollbar-width: thin; /* Firefox */
  scrollbar-color: hsl(var(--muted-foreground)) hsl(var(--muted));
}
.styled-scrollbar::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.styled-scrollbar::-webkit-scrollbar-track {
  background: hsl(var(--muted));
  border-radius: 8px;
}
.styled-scrollbar::-webkit-scrollbar-thumb {
  background-color: hsl(var(--muted-foreground) / 0.4);
  border-radius: 8px;
  border: 2px solid transparent; /* create padding around thumb */
  background-clip: padding-box;
}
.styled-scrollbar::-webkit-scrollbar-thumb:hover {
  background-color: hsl(var(--muted-foreground) / 0.6);
}
/* Optional darker scrollbar adjustments used via `dark:scrollbar-dark` */
.scrollbar-dark {
  scrollbar-color: hsl(var(--neutral-600)) hsl(var(--neutral-100));
}
.scrollbar-dark::-webkit-scrollbar-track {
  background: hsl(var(--neutral-100));
}
.scrollbar-dark::-webkit-scrollbar-thumb {
  background-color: hsl(var(--neutral-600) / 0.5);
}
.scrollbar-dark::-webkit-scrollbar-thumb:hover {
  background-color: hsl(var(--neutral-600) / 0.7);
}
/* Additional psychological comfort enhancements */
@media (prefers-reduced-motion: no-preference) {
    * {
        scroll-behavior: smooth;
    }

    /* Micro-interactions for better user experience */
    button,
    .button {
        transition: all 0.15s ease-in-out;
    }

    button:hover,
    .button:hover {
        transform: translateY(-1px);
    }

    button:active,
    .button:active {
        transform: translateY(0);
    }
}
/* High contrast mode support */
@media (prefers-contrast: high) {
    :root {
        --border: 215 25% 70%;
        --ring: 215 28% 17%;
    }
}
.dark\:prose-invert:is(.dark *) { --tw-prose-body: var(--tw-prose-invert-body); --tw-prose-headings: var(--tw-prose-invert-headings); --tw-prose-lead: var(--tw-prose-invert-lead); --tw-prose-links: var(--tw-prose-invert-links); --tw-prose-bold: var(--tw-prose-invert-bold); --tw-prose-counters: var(--tw-prose-invert-counters); --tw-prose-bullets: var(--tw-prose-invert-bullets); --tw-prose-hr: var(--tw-prose-invert-hr); --tw-prose-quotes: var(--tw-prose-invert-quotes); --tw-prose-quote-borders: var(--tw-prose-invert-quote-borders); --tw-prose-captions: var(--tw-prose-invert-captions); --tw-prose-kbd: var(--tw-prose-invert-kbd); --tw-prose-kbd-shadows: var(--tw-prose-invert-kbd-shadows); --tw-prose-code: var(--tw-prose-invert-code); --tw-prose-pre-code: var(--tw-prose-invert-pre-code); --tw-prose-pre-bg: var(--tw-prose-invert-pre-bg); --tw-prose-th-borders: var(--tw-prose-invert-th-borders); --tw-prose-td-borders: var(--tw-prose-invert-td-borders);
}
@media (min-width: 640px) {
  .sm\:prose-base { font-size: 1rem; line-height: 1.75;
  }
  .sm\:prose-base :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em;
  }
  .sm\:prose-base :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.25em; line-height: 1.6; margin-top: 1.2em; margin-bottom: 1.2em;
  }
  .sm\:prose-base :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.6em; margin-bottom: 1.6em; padding-inline-start: 1em;
  }
  .sm\:prose-base :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 2.25em; margin-top: 0; margin-bottom: 0.8888889em; line-height: 1.1111111;
  }
  .sm\:prose-base :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.5em; margin-top: 2em; margin-bottom: 1em; line-height: 1.3333333;
  }
  .sm\:prose-base :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.25em; margin-top: 1.6em; margin-bottom: 0.6em; line-height: 1.6;
  }
  .sm\:prose-base :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.5em; margin-bottom: 0.5em; line-height: 1.5;
  }
  .sm\:prose-base :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
  }
  .sm\:prose-base :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
  }
  .sm\:prose-base :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
  }
  .sm\:prose-base :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
  }
  .sm\:prose-base :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em; border-radius: 0.3125rem; padding-top: 0.1875em; padding-inline-end: 0.375em; padding-bottom: 0.1875em; padding-inline-start: 0.375em;
  }
  .sm\:prose-base :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em;
  }
  .sm\:prose-base :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em;
  }
  .sm\:prose-base :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.9em;
  }
  .sm\:prose-base :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em; line-height: 1.7142857; margin-top: 1.7142857em; margin-bottom: 1.7142857em; border-radius: 0.375rem; padding-top: 0.8571429em; padding-inline-end: 1.1428571em; padding-bottom: 0.8571429em; padding-inline-start: 1.1428571em;
  }
  .sm\:prose-base :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em; padding-inline-start: 1.625em;
  }
  .sm\:prose-base :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em; padding-inline-start: 1.625em;
  }
  .sm\:prose-base :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5em; margin-bottom: 0.5em;
  }
  .sm\:prose-base :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.375em;
  }
  .sm\:prose-base :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.375em;
  }
  .sm\:prose-base :where(.sm\:prose-base > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.75em; margin-bottom: 0.75em;
  }
  .sm\:prose-base :where(.sm\:prose-base > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em;
  }
  .sm\:prose-base :where(.sm\:prose-base > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.25em;
  }
  .sm\:prose-base :where(.sm\:prose-base > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em;
  }
  .sm\:prose-base :where(.sm\:prose-base > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.25em;
  }
  .sm\:prose-base :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.75em; margin-bottom: 0.75em;
  }
  .sm\:prose-base :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em; margin-bottom: 1.25em;
  }
  .sm\:prose-base :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.25em;
  }
  .sm\:prose-base :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.5em; padding-inline-start: 1.625em;
  }
  .sm\:prose-base :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 3em; margin-bottom: 3em;
  }
  .sm\:prose-base :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .sm\:prose-base :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .sm\:prose-base :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .sm\:prose-base :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .sm\:prose-base :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em; line-height: 1.7142857;
  }
  .sm\:prose-base :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0.5714286em; padding-bottom: 0.5714286em; padding-inline-start: 0.5714286em;
  }
  .sm\:prose-base :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
  }
  .sm\:prose-base :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
  }
  .sm\:prose-base :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-top: 0.5714286em; padding-inline-end: 0.5714286em; padding-bottom: 0.5714286em; padding-inline-start: 0.5714286em;
  }
  .sm\:prose-base :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
  }
  .sm\:prose-base :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
  }
  .sm\:prose-base :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 2em; margin-bottom: 2em;
  }
  .sm\:prose-base :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
  }
  .sm\:prose-base :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em; line-height: 1.4285714; margin-top: 0.8571429em;
  }
  .sm\:prose-base :where(.sm\:prose-base > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .sm\:prose-base :where(.sm\:prose-base > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 0;
  }
}
@media (min-width: 1024px) {
  .lg\:prose-lg { font-size: 1.125rem; line-height: 1.7777778;
  }
  .lg\:prose-lg :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em; margin-bottom: 1.3333333em;
  }
  .lg\:prose-lg :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.2222222em; line-height: 1.4545455; margin-top: 1.0909091em; margin-bottom: 1.0909091em;
  }
  .lg\:prose-lg :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.6666667em; margin-bottom: 1.6666667em; padding-inline-start: 1em;
  }
  .lg\:prose-lg :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 2.6666667em; margin-top: 0; margin-bottom: 0.8333333em; line-height: 1;
  }
  .lg\:prose-lg :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.6666667em; margin-top: 1.8666667em; margin-bottom: 1.0666667em; line-height: 1.3333333;
  }
  .lg\:prose-lg :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 1.3333333em; margin-top: 1.6666667em; margin-bottom: 0.6666667em; line-height: 1.5;
  }
  .lg\:prose-lg :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7777778em; margin-bottom: 0.4444444em; line-height: 1.5555556;
  }
  .lg\:prose-lg :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7777778em; margin-bottom: 1.7777778em;
  }
  .lg\:prose-lg :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7777778em; margin-bottom: 1.7777778em;
  }
  .lg\:prose-lg :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
  }
  .lg\:prose-lg :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7777778em; margin-bottom: 1.7777778em;
  }
  .lg\:prose-lg :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em; border-radius: 0.3125rem; padding-top: 0.2222222em; padding-inline-end: 0.4444444em; padding-bottom: 0.2222222em; padding-inline-start: 0.4444444em;
  }
  .lg\:prose-lg :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em;
  }
  .lg\:prose-lg :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8666667em;
  }
  .lg\:prose-lg :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.875em;
  }
  .lg\:prose-lg :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em; line-height: 1.75; margin-top: 2em; margin-bottom: 2em; border-radius: 0.375rem; padding-top: 1em; padding-inline-end: 1.5em; padding-bottom: 1em; padding-inline-start: 1.5em;
  }
  .lg\:prose-lg :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em; margin-bottom: 1.3333333em; padding-inline-start: 1.5555556em;
  }
  .lg\:prose-lg :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em; margin-bottom: 1.3333333em; padding-inline-start: 1.5555556em;
  }
  .lg\:prose-lg :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.6666667em; margin-bottom: 0.6666667em;
  }
  .lg\:prose-lg :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.4444444em;
  }
  .lg\:prose-lg :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0.4444444em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.8888889em; margin-bottom: 0.8888889em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > ul > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > ul > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.3333333em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > ol > li > p:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > ol > li > p:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 1.3333333em;
  }
  .lg\:prose-lg :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.8888889em; margin-bottom: 0.8888889em;
  }
  .lg\:prose-lg :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em; margin-bottom: 1.3333333em;
  }
  .lg\:prose-lg :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.3333333em;
  }
  .lg\:prose-lg :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0.6666667em; padding-inline-start: 1.5555556em;
  }
  .lg\:prose-lg :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 3.1111111em; margin-bottom: 3.1111111em;
  }
  .lg\:prose-lg :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .lg\:prose-lg :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .lg\:prose-lg :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .lg\:prose-lg :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .lg\:prose-lg :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em; line-height: 1.5;
  }
  .lg\:prose-lg :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0.75em; padding-bottom: 0.75em; padding-inline-start: 0.75em;
  }
  .lg\:prose-lg :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
  }
  .lg\:prose-lg :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
  }
  .lg\:prose-lg :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-top: 0.75em; padding-inline-end: 0.75em; padding-bottom: 0.75em; padding-inline-start: 0.75em;
  }
  .lg\:prose-lg :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-start: 0;
  }
  .lg\:prose-lg :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { padding-inline-end: 0;
  }
  .lg\:prose-lg :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 1.7777778em; margin-bottom: 1.7777778em;
  }
  .lg\:prose-lg :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0; margin-bottom: 0;
  }
  .lg\:prose-lg :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) { font-size: 0.8888889em; line-height: 1.5; margin-top: 1em;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-top: 0;
  }
  .lg\:prose-lg :where(.lg\:prose-lg > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) { margin-bottom: 0;
  }
}
.selection\:bg-primary *::-moz-selection { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.selection\:bg-primary *::selection { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.selection\:text-primary-foreground *::-moz-selection { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.selection\:text-primary-foreground *::selection { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.selection\:bg-primary::-moz-selection { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.selection\:bg-primary::selection { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.selection\:text-primary-foreground::-moz-selection { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.selection\:text-primary-foreground::selection { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.file\:inline-flex::file-selector-button { display: inline-flex;
}
.file\:h-7::file-selector-button { height: 1.75rem;
}
.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 { --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.placeholder\:text-muted-foreground::-moz-placeholder { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.placeholder\:text-muted-foreground::placeholder { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.before\:absolute::before { content: var(--tw-content); position: absolute;
}
.before\:inset-0::before { content: var(--tw-content); inset: 0px;
}
.before\:rounded-\[inherit\]::before { content: var(--tw-content); border-radius: inherit;
}
.before\:bg-accent-foreground\/10::before { content: var(--tw-content); background-color: hsl(var(--accent-foreground) / 0.1);
}
.before\:opacity-60::before { content: var(--tw-content); opacity: 0.6;
}
.before\:content-\[\"\"\]::before { --tw-content: ""; content: var(--tw-content);
}
.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\:left-1\/2::after { content: var(--tw-content); left: 50%;
}
.after\:w-1::after { content: var(--tw-content); width: 0.25rem;
}
.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));
}
.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;
}
.last\:rounded-r-md:last-child { border-top-right-radius: calc(var(--radius) - 2px); border-bottom-right-radius: calc(var(--radius) - 2px);
}
.last\:border-b-0:last-child { border-bottom-width: 0px;
}
.focus-within\:not-sr-only:focus-within { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip: auto; white-space: normal;
}
.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-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));
}
.focus-within\:ring-offset-2:focus-within { --tw-ring-offset-width: 2px;
}
.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\: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-\[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\:border-accent-foreground\/30:hover { border-color: hsl(var(--accent-foreground) / 0.3);
}
.hover\:border-border:hover { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.hover\:border-muted:hover { --tw-border-opacity: 1; border-color: hsl(var(--muted) / var(--tw-border-opacity, 1));
}
.hover\:border-primary\/30:hover { border-color: hsl(var(--primary) / 0.3);
}
.hover\:border-primary\/50:hover { border-color: hsl(var(--primary) / 0.5);
}
.hover\:bg-\[hsl\(var\(--btn-primary-hover\)\)\]:hover { background-color: hsl(var(--btn-primary-hover));
}
.hover\:bg-accent:hover { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.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-accent\/60:hover { background-color: hsl(var(--accent) / 0.6);
}
.hover\:bg-accent\/70:hover { background-color: hsl(var(--accent) / 0.7);
}
.hover\:bg-background:hover { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
}
.hover\:bg-background\/50:hover { background-color: hsl(var(--background) / 0.5);
}
.hover\:bg-background\/80:hover { background-color: hsl(var(--background) / 0.8);
}
.hover\:bg-destructive\/15:hover { background-color: hsl(var(--destructive) / 0.15);
}
.hover\:bg-destructive\/90:hover { background-color: hsl(var(--destructive) / 0.9);
}
.hover\:bg-error:hover { --tw-bg-opacity: 1; background-color: hsl(var(--error) / var(--tw-bg-opacity, 1));
}
.hover\:bg-error\/10:hover { background-color: hsl(var(--error) / 0.1);
}
.hover\:bg-error\/15:hover { background-color: hsl(var(--error) / 0.15);
}
.hover\:bg-error\/90:hover { background-color: hsl(var(--error) / 0.9);
}
.hover\:bg-info:hover { --tw-bg-opacity: 1; background-color: hsl(var(--info) / var(--tw-bg-opacity, 1));
}
.hover\:bg-info\/15:hover { background-color: hsl(var(--info) / 0.15);
}
.hover\:bg-muted:hover { --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));
}
.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\/80:hover { background-color: hsl(var(--muted) / 0.8);
}
.hover\:bg-primary-hover:hover { --tw-bg-opacity: 1; background-color: hsl(var(--primary-hover) / var(--tw-bg-opacity, 1));
}
.hover\:bg-primary\/20:hover { background-color: hsl(var(--primary) / 0.2);
}
.hover\:bg-primary\/30:hover { background-color: hsl(var(--primary) / 0.3);
}
.hover\:bg-primary\/5:hover { background-color: hsl(var(--primary) / 0.05);
}
.hover\:bg-primary\/90:hover { background-color: hsl(var(--primary) / 0.9);
}
.hover\:bg-secondary-hover:hover { --tw-bg-opacity: 1; background-color: hsl(var(--secondary-hover) / var(--tw-bg-opacity, 1));
}
.hover\:bg-sidebar-accent:hover { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-accent) / var(--tw-bg-opacity, 1));
}
.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\/90:hover { background-color: hsl(var(--success) / 0.9);
}
.hover\:bg-transparent:hover { background-color: transparent;
}
.hover\:bg-warning-100:hover { --tw-bg-opacity: 1; background-color: hsl(var(--warning-100) / var(--tw-bg-opacity, 1));
}
.hover\:bg-warning\/15:hover { background-color: hsl(var(--warning) / 0.15);
}
.hover\:from-\[hsl\(var\(--badge-gradient-hover-from\)\)\]:hover { --tw-gradient-from: hsl(var(--badge-gradient-hover-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--badge-gradient-hover-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:from-\[hsl\(var\(--btn-gradient-hover-from\)\)\]:hover { --tw-gradient-from: hsl(var(--btn-gradient-hover-from)) var(--tw-gradient-from-position); --tw-gradient-to: hsl(var(--btn-gradient-hover-from) / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.hover\:to-\[hsl\(var\(--badge-gradient-hover-to\)\)\]:hover { --tw-gradient-to: hsl(var(--badge-gradient-hover-to)) var(--tw-gradient-to-position);
}
.hover\:to-\[hsl\(var\(--btn-gradient-hover-to\)\)\]:hover { --tw-gradient-to: hsl(var(--btn-gradient-hover-to)) var(--tw-gradient-to-position);
}
.hover\:text-\[hsl\(var\(--link-hover\)\)\]:hover { color: hsl(var(--link-hover));
}
.hover\:text-accent-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.hover\:text-error:hover { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.hover\:text-error-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--error-foreground) / var(--tw-text-opacity, 1));
}
.hover\:text-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.hover\:text-muted-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.hover\:text-primary:hover { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.hover\:text-primary-hover:hover { --tw-text-opacity: 1; color: hsl(var(--primary-hover) / var(--tw-text-opacity, 1));
}
.hover\:text-primary\/90:hover { color: hsl(var(--primary) / 0.9);
}
.hover\:text-sidebar-accent-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / 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-80:hover { opacity: 0.8;
}
.hover\:opacity-90:hover { opacity: 0.9;
}
.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-elevation-1:hover { --tw-shadow: 0 1px 2px 0 hsl(var(--primary) / 0.08); --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-elevation-2:hover { --tw-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12); --tw-shadow-colored: 0 2px 4px -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-elevation-3:hover { --tw-shadow: 0 4px 8px -2px hsl(var(--primary) / 0.16); --tw-shadow-colored: 0 4px 8px -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-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\:after\:bg-sidebar-border:hover::after { content: var(--tw-content); --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-border) / var(--tw-bg-opacity, 1));
}
.focus\:not-sr-only:focus { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip: auto; white-space: normal;
}
.focus\:fixed:focus { position: fixed;
}
.focus\:absolute:focus { position: absolute;
}
.focus\:left-2:focus { left: 0.5rem;
}
.focus\:left-4:focus { left: 1rem;
}
.focus\:top-2:focus { top: 0.5rem;
}
.focus\:top-4:focus { top: 1rem;
}
.focus\:z-10:focus { z-index: 10;
}
.focus\:z-\[200\]:focus { z-index: 200;
}
.focus\:rounded-md:focus { border-radius: calc(var(--radius) - 2px);
}
.focus\:border-border:focus { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.focus\:border-error:focus { --tw-border-opacity: 1; border-color: hsl(var(--error) / var(--tw-border-opacity, 1));
}
.focus\:border-transparent:focus { border-color: transparent;
}
.focus\:bg-accent:focus { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.focus\:bg-error\/10:focus { background-color: hsl(var(--error) / 0.1);
}
.focus\:bg-primary:focus { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.focus\:px-4:focus { padding-left: 1rem; padding-right: 1rem;
}
.focus\:py-2:focus { padding-top: 0.5rem; padding-bottom: 0.5rem;
}
.focus\:text-accent-foreground:focus { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.focus\:text-error:focus { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.focus\:text-primary-foreground:focus { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.focus\:shadow:focus { --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);
}
.focus\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px;
}
.focus\:outline:focus { outline-style: solid;
}
.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-destructive:focus { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--destructive) / var(--tw-ring-opacity, 1));
}
.focus\:ring-destructive\/20:focus { --tw-ring-color: hsl(var(--destructive) / 0.2);
}
.focus\:ring-primary:focus { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--primary) / var(--tw-ring-opacity, 1));
}
.focus\:ring-primary-foreground:focus { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--primary-foreground) / var(--tw-ring-opacity, 1));
}
.focus\:ring-ring:focus { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));
}
.focus\:ring-success\/20:focus { --tw-ring-color: hsl(var(--success) / 0.2);
}
.focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px;
}
.focus\:ring-offset-primary:focus { --tw-ring-offset-color: hsl(var(--primary) / 1);
}
.focus-visible\:z-10:focus-visible { z-index: 10;
}
.focus-visible\:-translate-y-0\.5:focus-visible { --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));
}
.focus-visible\:border-border:focus-visible { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.focus-visible\:border-destructive:focus-visible { --tw-border-opacity: 1; border-color: hsl(var(--destructive) / var(--tw-border-opacity, 1));
}
.focus-visible\:border-primary:focus-visible { --tw-border-opacity: 1; border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));
}
.focus-visible\:border-ring:focus-visible { --tw-border-opacity: 1; border-color: hsl(var(--ring) / var(--tw-border-opacity, 1));
}
.focus-visible\:bg-background:focus-visible { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
}
.focus-visible\:bg-muted\/70:focus-visible { background-color: hsl(var(--muted) / 0.7);
}
.focus-visible\:bg-primary\/20:focus-visible { background-color: hsl(var(--primary) / 0.2);
}
.focus-visible\:shadow-elevation-2:focus-visible { --tw-shadow: 0 2px 4px -1px hsl(var(--primary) / 0.12); --tw-shadow-colored: 0 2px 4px -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);
}
.focus-visible\:shadow-none:focus-visible { --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);
}
.focus-visible\:outline-none:focus-visible { outline: 2px solid transparent; outline-offset: 2px;
}
.focus-visible\:outline-1:focus-visible { outline-width: 1px;
}
.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-\[3px\]: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(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);
}
.focus-visible\:ring-\[hsl\(var\(--focus-ring\)\)\]:focus-visible { --tw-ring-color: hsl(var(--focus-ring));
}
.focus-visible\:ring-destructive\/20:focus-visible { --tw-ring-color: hsl(var(--destructive) / 0.2);
}
.focus-visible\:ring-destructive\/30:focus-visible { --tw-ring-color: hsl(var(--destructive) / 0.3);
}
.focus-visible\:ring-primary:focus-visible { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--primary) / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-ring:focus-visible { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-ring\/20:focus-visible { --tw-ring-color: hsl(var(--ring) / 0.2);
}
.focus-visible\:ring-ring\/30:focus-visible { --tw-ring-color: hsl(var(--ring) / 0.3);
}
.focus-visible\:ring-ring\/50:focus-visible { --tw-ring-color: hsl(var(--ring) / 0.5);
}
.focus-visible\:ring-success\/20:focus-visible { --tw-ring-color: hsl(var(--success) / 0.2);
}
.focus-visible\:ring-offset-0:focus-visible { --tw-ring-offset-width: 0px;
}
.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) / 1);
}
.active\:translate-y-0:active { --tw-translate-y: 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));
}
.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\:bg-\[hsl\(var\(--btn-ghost-active\)\)\]:active { background-color: hsl(var(--btn-ghost-active));
}
.active\:bg-\[hsl\(var\(--btn-primary-active\)\)\]:active { background-color: hsl(var(--btn-primary-active));
}
.active\:bg-sidebar-accent:active { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-accent) / var(--tw-bg-opacity, 1));
}
.active\:text-sidebar-accent-foreground:active { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.active\:shadow-md:active { --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);
}
.disabled\:pointer-events-none:disabled { pointer-events: none;
}
.disabled\:cursor-not-allowed:disabled { cursor: not-allowed;
}
.disabled\:border-border:disabled { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.disabled\:bg-muted:disabled { --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));
}
.disabled\:text-foreground\/60:disabled { color: hsl(var(--foreground) / 0.6);
}
.disabled\:opacity-50:disabled { opacity: 0.5;
}
.disabled\:opacity-60:disabled { opacity: 0.6;
}
.disabled\:shadow-none:disabled { --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);
}
.disabled\:hover\:bg-transparent:hover:disabled { background-color: transparent;
}
.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100 { opacity: 1;
}
.group:hover .group-hover\:visible { visibility: visible;
}
.group:hover .group-hover\:translate-x-1 { --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));
}
.group:hover .group-hover\:border-primary { --tw-border-opacity: 1; border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));
}
.group:hover .group-hover\:bg-primary\/20 { background-color: hsl(var(--primary) / 0.2);
}
.group:hover .group-hover\:text-foreground { --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-primary { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-primary-hover { --tw-text-opacity: 1; color: hsl(var(--primary-hover) / var(--tw-text-opacity, 1));
}
.group\/menu-item:hover .group-hover\/menu-item\:opacity-100 { opacity: 1;
}
.group:hover .group-hover\:opacity-100 { opacity: 1;
}
.group.destructive .group-\[\.destructive\]\:bg-error-foreground { --tw-bg-opacity: 1; background-color: hsl(var(--error-foreground) / var(--tw-bg-opacity, 1));
}
.group.destructive .group-\[\.destructive\]\:text-error { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.group.destructive .group-\[\.destructive\]\:text-error-foreground\/80 { color: hsl(var(--error-foreground) / 0.8);
}
.group.destructive .group-\[\.destructive\]\:hover\:bg-error-foreground\/90:hover { background-color: hsl(var(--error-foreground) / 0.9);
}
.group.destructive .group-\[\.destructive\]\:hover\:text-error-foreground:hover { --tw-text-opacity: 1; color: hsl(var(--error-foreground) / var(--tw-text-opacity, 1));
}
.group.destructive .group-\[\.destructive\]\:focus-visible\:ring-error:focus-visible { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--error) / var(--tw-ring-opacity, 1));
}
.group.destructive .group-\[\.destructive\]\:focus-visible\:ring-offset-error:focus-visible { --tw-ring-offset-color: hsl(var(--error) / 1);
}
.peer\/menu-button:hover ~ .peer-hover\/menu-button\:text-sidebar-accent-foreground { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.peer:disabled ~ .peer-disabled\:cursor-not-allowed { cursor: not-allowed;
}
.peer:disabled ~ .peer-disabled\:opacity-50 { opacity: 0.5;
}
.peer:disabled ~ .peer-disabled\:opacity-70 { opacity: 0.7;
}
.has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(>svg) { grid-template-columns: calc(var(--spacing) * 4) 1fr;
}
.has-\[\>svg\]\:gap-x-3:has(>svg) { -moz-column-gap: 0.75rem; column-gap: 0.75rem;
}
.aria-disabled\:pointer-events-none[aria-disabled="true"] { pointer-events: none;
}
.aria-disabled\:opacity-50[aria-disabled="true"] { opacity: 0.5;
}
.data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] { pointer-events: none;
}
.data-\[disabled\]\:pointer-events-none[data-disabled] { pointer-events: none;
}
.data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction="bottom"] { left: 0px; right: 0px;
}
.data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction="left"] { top: 0px; bottom: 0px;
}
.data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction="right"] { top: 0px; bottom: 0px;
}
.data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction="top"] { left: 0px; right: 0px;
}
.data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction="bottom"] { bottom: 0px;
}
.data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction="left"] { left: 0px;
}
.data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction="right"] { right: 0px;
}
.data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction="top"] { top: 0px;
}
.data-\[active\=true\]\:z-10[data-active="true"] { z-index: 10;
}
.data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction="bottom"] { margin-top: 6rem;
}
.data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction="top"] { margin-bottom: 6rem;
}
.data-\[density\=comfortable\]\:h-16[data-density="comfortable"] { height: 4rem;
}
.data-\[density\=compact\]\:h-10[data-density="compact"] { height: 2.5rem;
}
.data-\[orientation\=horizontal\]\:h-px[data-orientation="horizontal"] { height: 1px;
}
.data-\[orientation\=vertical\]\:h-full[data-orientation="vertical"] { height: 100%;
}
.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction="vertical"] { height: 1px;
}
.data-\[size\=default\]\:h-9[data-size="default"] { height: 2.25rem;
}
.data-\[size\=sm\]\:h-8[data-size="sm"] { height: 2rem;
}
.data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction="bottom"] { max-height: 80vh;
}
.data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction="top"] { max-height: 80vh;
}
.data-\[orientation\=horizontal\]\:w-full[data-orientation="horizontal"] { width: 100%;
}
.data-\[orientation\=vertical\]\:w-px[data-orientation="vertical"] { width: 1px;
}
.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction="vertical"] { width: 100%;
}
.data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction="left"] { width: 75%;
}
.data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction="right"] { width: 75%;
}
.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\]\:flex-col[data-panel-group-direction="vertical"] { flex-direction: column;
}
.data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction="bottom"] { border-top-left-radius: var(--radius); border-top-right-radius: var(--radius);
}
.data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction="top"] { border-bottom-right-radius: var(--radius); border-bottom-left-radius: var(--radius);
}
.data-\[variant\=outline\]\:border-l-0[data-variant="outline"] { border-left-width: 0px;
}
.data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction="bottom"] { border-top-width: 1px;
}
.data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction="left"] { border-right-width: 1px;
}
.data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction="right"] { border-left-width: 1px;
}
.data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction="top"] { border-bottom-width: 1px;
}
.data-\[active\=true\]\:border-ring[data-active="true"] { --tw-border-opacity: 1; border-color: hsl(var(--ring) / var(--tw-border-opacity, 1));
}
.data-\[state\=checked\]\:border-primary[data-state="checked"] { --tw-border-opacity: 1; border-color: hsl(var(--primary) / var(--tw-border-opacity, 1));
}
.data-\[active\=true\]\:bg-accent\/50[data-active="true"] { background-color: hsl(var(--accent) / 0.5);
}
.data-\[active\=true\]\:bg-sidebar-accent[data-active="true"] { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-accent) / var(--tw-bg-opacity, 1));
}
.data-\[selected\=true\]\:bg-accent[data-selected="true"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=active\]\:bg-background[data-state="active"] { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
}
.data-\[state\=checked\]\:bg-primary[data-state="checked"] { --tw-bg-opacity: 1; background-color: hsl(var(--primary) / var(--tw-bg-opacity, 1));
}
.data-\[state\=on\]\:bg-accent[data-state="on"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:bg-accent[data-state="open"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:bg-accent\/50[data-state="open"] { background-color: hsl(var(--accent) / 0.5);
}
.data-\[state\=open\]\:bg-secondary[data-state="open"] { --tw-bg-opacity: 1; background-color: hsl(var(--secondary) / var(--tw-bg-opacity, 1));
}
.data-\[state\=selected\]\:bg-muted[data-state="selected"] { --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));
}
.data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] { --tw-bg-opacity: 1; background-color: hsl(var(--input) / var(--tw-bg-opacity, 1));
}
.data-\[inset\]\:pl-8[data-inset] { padding-left: 2rem;
}
.data-\[active\=true\]\:font-medium[data-active="true"] { font-weight: 500;
}
.data-\[active\=true\]\:text-accent-foreground[data-active="true"] { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active="true"] { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[error\=true\]\:text-error[data-error="true"] { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.data-\[placeholder\]\:text-muted-foreground[data-placeholder] { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.data-\[selected\=true\]\:text-accent-foreground[data-selected="true"] { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[state\=active\]\:text-primary[data-state="active"] { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] { --tw-text-opacity: 1; color: hsl(var(--primary-foreground) / var(--tw-text-opacity, 1));
}
.data-\[state\=on\]\:text-accent-foreground[data-state="on"] { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[state\=open\]\:text-accent-foreground[data-state="open"] { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[state\=open\]\:text-muted-foreground[data-state="open"] { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.data-\[variant\=destructive\]\:text-error[data-variant="destructive"] { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.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[data-state="active"] { --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);
}
.data-\[active\=true\]\:ring-\[3px\][data-active="true"] { --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);
}
.data-\[state\=selected\]\:ring-1[data-state="selected"] { --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-\[active\=true\]\:ring-ring\/50[data-active="true"] { --tw-ring-color: hsl(var(--ring) / 0.5);
}
.data-\[state\=selected\]\:ring-ring\/30[data-state="selected"] { --tw-ring-color: hsl(var(--ring) / 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-\[motion\^\=from-\]\:animate-in[data-motion^="from-"] { 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\=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\=visible\]\:animate-in[data-state="visible"] { 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-\[motion\^\=to-\]\:animate-out[data-motion^="to-"] { 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\]\: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-\[state\=hidden\]\:animate-out[data-state="hidden"] { 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-\[motion\^\=from-\]\:fade-in[data-motion^="from-"] { --tw-enter-opacity: 0;
}
.data-\[motion\^\=to-\]\:fade-out[data-motion^="to-"] { --tw-exit-opacity: 0;
}
.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\=hidden\]\:fade-out[data-state="hidden"] { --tw-exit-opacity: 0;
}
.data-\[state\=open\]\:fade-in-0[data-state="open"] { --tw-enter-opacity: 0;
}
.data-\[state\=open\]\:fade-in-90[data-state="open"] { --tw-enter-opacity: 0.9;
}
.data-\[state\=visible\]\:fade-in[data-state="visible"] { --tw-enter-opacity: 0;
}
.data-\[state\=closed\]\:zoom-out-95[data-state="closed"] { --tw-exit-scale: .95;
}
.data-\[state\=open\]\:zoom-in-90[data-state="open"] { --tw-enter-scale: .9;
}
.data-\[state\=open\]\:zoom-in-95[data-state="open"] { --tw-enter-scale: .95;
}
.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion="from-end"] { --tw-enter-translate-x: 13rem;
}
.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion="from-start"] { --tw-enter-translate-x: -13rem;
}
.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion="to-end"] { --tw-exit-translate-x: 13rem;
}
.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion="to-start"] { --tw-exit-translate-x: -13rem;
}
.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-bottom-full[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-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-bottom-full[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\=closed\]\:duration-300[data-state="closed"] { animation-duration: 300ms;
}
.data-\[state\=open\]\:duration-500[data-state="open"] { animation-duration: 500ms;
}
.\*\:data-\[slot\=select-value\]\:line-clamp-1[data-slot="select-value"] > * { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1;
}
.\*\:data-\[slot\=select-value\]\:flex[data-slot="select-value"] > * { display: flex;
}
.\*\:data-\[slot\=select-value\]\:items-center[data-slot="select-value"] > * { align-items: center;
}
.\*\:data-\[slot\=select-value\]\:gap-2[data-slot="select-value"] > * { gap: 0.5rem;
}
.\*\:data-\[slot\=alert-description\]\:text-destructive\/90[data-slot="alert-description"] > * { color: hsl(var(--destructive) / 0.9);
}
.\*\:data-\[slot\=alert-description\]\:text-info\/90[data-slot="alert-description"] > * { color: hsl(var(--info) / 0.9);
}
.\*\:data-\[slot\=alert-description\]\:text-muted-foreground\/90[data-slot="alert-description"] > * { color: hsl(var(--muted-foreground) / 0.9);
}
.\*\:data-\[slot\=alert-description\]\:text-success\/90[data-slot="alert-description"] > * { color: hsl(var(--success) / 0.9);
}
.\*\:data-\[slot\=alert-description\]\:text-warning-600\/90[data-slot="alert-description"] > * { color: hsl(var(--warning-600) / 0.9);
}
.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-\[variant\=outline\]\:first\:border-l:first-child[data-variant="outline"] { border-left-width: 1px;
}
.data-\[active\=true\]\:hover\:bg-accent:hover[data-active="true"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:hover\:bg-accent:hover[data-state="open"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state="open"] { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar-accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state="open"] { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.data-\[active\=true\]\:focus\:bg-accent:focus[data-active="true"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[state\=open\]\:focus\:bg-accent:focus[data-state="open"] { --tw-bg-opacity: 1; background-color: hsl(var(--accent) / var(--tw-bg-opacity, 1));
}
.data-\[variant\=destructive\]\:focus\:bg-error\/10:focus[data-variant="destructive"] { background-color: hsl(var(--error) / 0.1);
}
.data-\[variant\=destructive\]\:focus\:text-error:focus[data-variant="destructive"] { --tw-text-opacity: 1; color: hsl(var(--error) / var(--tw-text-opacity, 1));
}
.group[data-disabled="true"] .group-data-\[disabled\=true\]\:pointer-events-none { pointer-events: none;
}
.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\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:top-full { top: 100%;
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:-mt-8 { margin-top: -2rem;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5 { margin-top: 0.375rem;
}
.group\/drawer-content[data-vaul-drawer-direction="bottom"] .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block { display: block;
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:hidden { display: none;
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\] { width: calc(var(--sidebar-width-icon) + (--spacing(4)) + 2px);
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+0\.5rem\)\] { width: calc(var(--sidebar-width-icon) + 0.5rem);
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:w-\[var\(--sidebar-width-icon\)\] { width: var(--sidebar-width-icon);
}
.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\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden { overflow: hidden;
}
.group[data-variant="floating"] .group-data-\[variant\=floating\]\:rounded-lg { border-radius: var(--radius);
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:rounded-md { border-radius: calc(var(--radius) - 2px);
}
.group[data-variant="floating"] .group-data-\[variant\=floating\]\:border { border-width: 1px;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\: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 { --tw-border-opacity: 1; border-color: hsl(var(--sidebar-border) / var(--tw-border-opacity, 1));
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:bg-popover { --tw-bg-opacity: 1; background-color: hsl(var(--popover) / var(--tw-bg-opacity, 1));
}
.group\/drawer-content[data-vaul-drawer-direction="bottom"] .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:text-center { text-align: center;
}
.group\/drawer-content[data-vaul-drawer-direction="top"] .group-data-\[vaul-drawer-direction\=top\]\/drawer-content\:text-center { text-align: center;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground { --tw-text-opacity: 1; color: hsl(var(--popover-foreground) / var(--tw-text-opacity, 1));
}
.group[data-collapsible="icon"] .group-data-\[collapsible\=icon\]\:opacity-0 { opacity: 0;
}
.group[data-disabled="true"] .group-data-\[disabled\=true\]\:opacity-50 { opacity: 0.5;
}
.group[data-variant="floating"] .group-data-\[variant\=floating\]\: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);
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\: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\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:duration-200 { transition-duration: 200ms; animation-duration: 200ms;
}
.group[data-collapsible="offcanvas"] .group-data-\[collapsible\=offcanvas\]\:after\:left-full::after { content: var(--tw-content); left: 100%;
}
.group[data-collapsible="offcanvas"] .hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover { --tw-bg-opacity: 1; background-color: hsl(var(--sidebar) / var(--tw-bg-opacity, 1));
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\: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;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\: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;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0[data-state="closed"] { --tw-exit-opacity: 0;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0[data-state="open"] { --tw-enter-opacity: 0;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95[data-state="closed"] { --tw-exit-scale: .95;
}
.group\/navigation-menu[data-viewport="false"] .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95[data-state="open"] { --tw-enter-scale: .95;
}
.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\/menu-button[data-active="true"] ~ .peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.prose-headings\:font-display :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))) { font-family: var(--font-poppins), Poppins, system-ui, sans-serif;
}
.prose-headings\:tracking-tight :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))) { letter-spacing: -0.025em;
}
.prose-headings\:text-primary :is(:where(h1, h2, h3, h4, h5, h6, th):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.prose-h2\:mb-4 :is(:where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *))) { margin-bottom: 1rem;
}
.prose-h2\:mt-12 :is(:where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *))) { margin-top: 3rem;
}
.prose-h2\:scroll-mt-28 :is(:where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *))) { scroll-margin-top: 7rem;
}
.prose-h2\:text-2xl :is(:where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *))) { font-size: 1.5rem; line-height: 2rem;
}
.prose-p\:leading-7 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { line-height: 1.75rem;
}
.prose-p\:text-primary\/90 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { color: hsl(var(--primary) / 0.9);
}
.prose-a\:text-primary :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.hover\:prose-a\:text-primary-hover :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))):hover { --tw-text-opacity: 1; color: hsl(var(--primary-hover) / var(--tw-text-opacity, 1));
}
.prose-blockquote\:border-l-2 :is(:where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *))) { border-left-width: 2px;
}
.prose-blockquote\:border-primary\/30 :is(:where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *))) { border-color: hsl(var(--primary) / 0.3);
}
.prose-strong\:text-primary :is(:where(strong):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-text-opacity: 1; color: hsl(var(--primary) / var(--tw-text-opacity, 1));
}
.prose-code\:rounded-md :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))) { border-radius: calc(var(--radius) - 2px);
}
.prose-code\:bg-muted :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-bg-opacity: 1; background-color: hsl(var(--muted) / var(--tw-bg-opacity, 1));
}
.prose-code\:px-1\.5 :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))) { padding-left: 0.375rem; padding-right: 0.375rem;
}
.prose-code\:py-0\.5 :is(:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *))) { padding-top: 0.125rem; padding-bottom: 0.125rem;
}
.prose-ul\:my-4 :is(:where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *))) { margin-top: 1rem; margin-bottom: 1rem;
}
.prose-ul\:space-y-2 :is(:where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *))) > :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));
}
.prose-li\:my-1\.5 :is(:where(li):not(:where([class~="not-prose"],[class~="not-prose"] *))) { margin-top: 0.375rem; margin-bottom: 0.375rem;
}
.prose-li\:marker\:text-muted-foreground * :is(:where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)))::marker { color: hsl(var(--muted-foreground) );
}
.prose-li\:marker\:text-muted-foreground :is(:where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)))::marker { color: hsl(var(--muted-foreground) );
}
.prose-hr\:border-border :is(:where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *))) { --tw-border-opacity: 1; border-color: hsl(var(--border) / var(--tw-border-opacity, 1));
}
.high-contrast .hc\:border-2 { border-width: 2px;
}
.high-contrast .hc\:border-\[hsl\(var\(--contrast-foreground\)\)\] { border-color: hsl(var(--contrast-foreground));
}
.high-contrast .hc\:bg-\[hsl\(var\(--accent\)\)\] { background-color: hsl(var(--accent));
}
.high-contrast .hc\:bg-\[hsl\(var\(--contrast-surface\)\)\] { background-color: hsl(var(--contrast-surface));
}
.high-contrast .hc\:bg-\[hsl\(var\(--destructive\)\)\] { background-color: hsl(var(--destructive));
}
.high-contrast .hc\:bg-\[hsl\(var\(--primary\)\)\] { background-color: hsl(var(--primary));
}
.high-contrast .hc\:bg-\[hsl\(var\(--secondary\)\)\] { background-color: hsl(var(--secondary));
}
.high-contrast .hc\:bg-\[hsl\(var\(--success\)\)\] { background-color: hsl(var(--success));
}
.high-contrast .hc\:bg-\[hsl\(var\(--warning\)\)\] { background-color: hsl(var(--warning));
}
.high-contrast .hc\:text-\[hsl\(var\(--accent-foreground\)\)\] { color: hsl(var(--accent-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--contrast-foreground\)\)\] { color: hsl(var(--contrast-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--destructive-foreground\)\)\] { color: hsl(var(--destructive-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--primary-foreground\)\)\] { color: hsl(var(--primary-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--secondary-foreground\)\)\] { color: hsl(var(--secondary-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--success-foreground\)\)\] { color: hsl(var(--success-foreground));
}
.high-contrast .hc\:text-\[hsl\(var\(--warning-foreground\)\)\] { color: hsl(var(--warning-foreground));
}
@supports (backdrop-filter: var(--tw)) {
  .supports-\[backdrop-filter\]\:bg-background { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
  }
  .supports-\[backdrop-filter\]\:bg-background\/60 { background-color: hsl(var(--background) / 0.6);
  }
  .supports-\[backdrop-filter\]\:bg-background\/70 { background-color: hsl(var(--background) / 0.7);
  }
  .supports-\[backdrop-filter\]\:bg-background\/80 { background-color: hsl(var(--background) / 0.8);
  }
  .supports-\[backdrop-filter\]\:bg-muted\/50 { background-color: hsl(var(--muted) / 0.5);
  }
}
@media (prefers-reduced-motion: no-preference) {
  @keyframes dotBounce {
    0%, 100% { transform: translateY(0); opacity: 0.6;
    }
    50% { transform: translateY(-0.25rem); opacity: 1;
    }
  }
  .motion-safe\:animate-dot-bounce { animation: dotBounce 1s infinite ease-in-out;
  }
  @keyframes equalize {
    0%, 100% { transform: scaleY(0.5);
    }
    50% { transform: scaleY(1);
    }
  }
  .motion-safe\:animate-equalize { animation: equalize 1s infinite ease-in-out;
  }
  @keyframes fadeIn {
    from { opacity: 0; transform: translateY(6px);
    }
    to { opacity: 1; transform: translateY(0);
    }
  }
  .motion-safe\:animate-fade-in { animation: fadeIn 0.6s ease-out both;
  }
  @keyframes pulse {
    50% { opacity: .5;
    }
  }
  .motion-safe\:animate-pulse { animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  }
  @keyframes slideUp {
    from { opacity: 0; transform: translateY(20px);
    }
    to { opacity: 1; transform: translateY(0);
    }
  }
  .motion-safe\:animate-slide-up { animation: slideUp 0.6s ease-out;
  }
  @keyframes spin {
    to { transform: rotate(360deg);
    }
  }
  .motion-safe\:animate-spin { animation: spin 1s linear infinite;
  }
    .motion-safe\:animate-fade-in {
        animation: fadeIn 0.6s ease-out both;
    }

    .motion-safe\:animate-slide-up {
        animation: slideUp 0.6s ease-out forwards;
    }
}
@media (prefers-reduced-motion: reduce) {
  .motion-reduce\:transition-none { transition-property: none;
  }
}
.dark\:block:is(.dark *) { display: block;
}
.dark\:hidden:is(.dark *) { display: none;
}
.dark\:border-accent\/40:is(.dark *) { border-color: hsl(var(--accent) / 0.4);
}
.dark\:border-border\/60:is(.dark *) { border-color: hsl(var(--border) / 0.6);
}
.dark\:border-border\/70:is(.dark *) { border-color: hsl(var(--border) / 0.7);
}
.dark\:border-border\/80:is(.dark *) { border-color: hsl(var(--border) / 0.8);
}
.dark\:border-destructive\/50:is(.dark *) { border-color: hsl(var(--destructive) / 0.5);
}
.dark\:border-error\/40:is(.dark *) { border-color: hsl(var(--error) / 0.4);
}
.dark\:border-error\/50:is(.dark *) { border-color: hsl(var(--error) / 0.5);
}
.dark\:border-success\/40:is(.dark *) { border-color: hsl(var(--success) / 0.4);
}
.dark\:border-warning-400\/40:is(.dark *) { border-color: hsl(var(--warning-400) / 0.4);
}
.dark\:border-warning\/40:is(.dark *) { border-color: hsl(var(--warning) / 0.4);
}
.dark\:bg-accent\/20:is(.dark *) { background-color: hsl(var(--accent) / 0.2);
}
.dark\:bg-background:is(.dark *) { --tw-bg-opacity: 1; background-color: hsl(var(--background) / var(--tw-bg-opacity, 1));
}
.dark\:bg-background\/60:is(.dark *) { background-color: hsl(var(--background) / 0.6);
}
.dark\:bg-background\/80:is(.dark *) { background-color: hsl(var(--background) / 0.8);
}
.dark\:bg-destructive\/20:is(.dark *) { background-color: hsl(var(--destructive) / 0.2);
}
.dark\:bg-destructive\/25:is(.dark *) { background-color: hsl(var(--destructive) / 0.25);
}
.dark\:bg-error\/20:is(.dark *) { background-color: hsl(var(--error) / 0.2);
}
.dark\:bg-input\/30:is(.dark *) { background-color: hsl(var(--input) / 0.3);
}
.dark\:bg-muted\/40:is(.dark *) { background-color: hsl(var(--muted) / 0.4);
}
.dark\:bg-neutral-700:is(.dark *) { --tw-bg-opacity: 1; background-color: hsl(var(--neutral-700) / var(--tw-bg-opacity, 1));
}
.dark\:bg-primary-900\/30:is(.dark *) { background-color: hsl(var(--primary-900) / 0.3);
}
.dark\:bg-success\/15:is(.dark *) { background-color: hsl(var(--success) / 0.15);
}
.dark\:bg-success\/20:is(.dark *) { background-color: hsl(var(--success) / 0.2);
}
.dark\:bg-warning-500\/10:is(.dark *) { background-color: hsl(var(--warning-500) / 0.1);
}
.dark\:bg-warning-500\/15:is(.dark *) { background-color: hsl(var(--warning-500) / 0.15);
}
.dark\:bg-warning-500\/20:is(.dark *) { background-color: hsl(var(--warning-500) / 0.2);
}
.dark\:text-accent-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--accent-foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-destructive-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--destructive-foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-error-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--error-400) / var(--tw-text-opacity, 1));
}
.dark\:text-error-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--error-foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-info-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--info-400) / var(--tw-text-opacity, 1));
}
.dark\:text-muted-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-muted-foreground\/90:is(.dark *) { color: hsl(var(--muted-foreground) / 0.9);
}
.dark\:text-neutral-100:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--neutral-100) / var(--tw-text-opacity, 1));
}
.dark\:text-neutral-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--neutral-400) / var(--tw-text-opacity, 1));
}
.dark\:text-primary-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--primary-400) / var(--tw-text-opacity, 1));
}
.dark\:text-success-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--success-400) / var(--tw-text-opacity, 1));
}
.dark\:text-success-foreground:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--success-foreground) / var(--tw-text-opacity, 1));
}
.dark\:text-warning-200:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--warning-200) / var(--tw-text-opacity, 1));
}
.dark\:text-warning-400:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--warning-400) / var(--tw-text-opacity, 1));
}
.dark\:shadow-none:is(.dark *) { --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);
}
.dark\:hover\:bg-input\/50:hover:is(.dark *) { background-color: hsl(var(--input) / 0.5);
}
.dark\:\*\:data-\[slot\=alert-description\]\:text-warning-200[data-slot="alert-description"] > *:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--warning-200) / var(--tw-text-opacity, 1));
}
.dark\:data-\[variant\=destructive\]\:focus\:bg-error\/20:focus[data-variant="destructive"]:is(.dark *) { background-color: hsl(var(--error) / 0.2);
}
@media (min-width: 640px) {
  .sm\:col-span-2 { grid-column: span 2 / span 2;
  }
  .sm\:mb-12 { margin-bottom: 3rem;
  }
  .sm\:mb-8 { margin-bottom: 2rem;
  }
  .sm\:mr-2 { margin-right: 0.5rem;
  }
  .sm\:mt-0 { margin-top: 0px;
  }
  .sm\:mt-6 { margin-top: 1.5rem;
  }
  .sm\:block { display: block;
  }
  .sm\:inline { display: inline;
  }
  .sm\:flex { display: flex;
  }
  .sm\:hidden { display: none;
  }
  .sm\:min-h-\[40px\] { min-height: 40px;
  }
  .sm\:w-32 { width: 8rem;
  }
  .sm\:w-40 { width: 10rem;
  }
  .sm\:w-64 { width: 16rem;
  }
  .sm\:w-auto { width: auto;
  }
  .sm\:max-w-lg { max-width: 32rem;
  }
  .sm\:max-w-md { max-width: 28rem;
  }
  .sm\:max-w-sm { max-width: 24rem;
  }
  .sm\:flex-none { flex: none;
  }
  .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-\[1fr_auto\] { grid-template-columns: 1fr auto;
  }
  .sm\:flex-row { flex-direction: row;
  }
  .sm\:flex-nowrap { flex-wrap: nowrap;
  }
  .sm\:items-start { align-items: flex-start;
  }
  .sm\:items-end { align-items: flex-end;
  }
  .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\.5 { gap: 0.625rem;
  }
  .sm\:gap-3 { gap: 0.75rem;
  }
  .sm\:gap-4 { gap: 1rem;
  }
  .sm\:gap-6 { gap: 1.5rem;
  }
  .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-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));
  }
  .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\:rounded-lg { border-radius: var(--radius);
  }
  .sm\:p-4 { padding: 1rem;
  }
  .sm\:p-6 { padding: 1.5rem;
  }
  .sm\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem;
  }
  .sm\:py-12 { padding-top: 3rem; padding-bottom: 3rem;
  }
  .sm\:py-16 { padding-top: 4rem; padding-bottom: 4rem;
  }
  .sm\:py-8 { padding-top: 2rem; padding-bottom: 2rem;
  }
  .sm\:pl-2\.5 { padding-left: 0.625rem;
  }
  .sm\:pr-2\.5 { padding-right: 0.625rem;
  }
  .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-4xl { font-size: 2.25rem; line-height: 2.5rem;
  }
  .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-xl { font-size: 1.25rem; line-height: 1.75rem;
  }
  .data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction="left"] { max-width: 24rem;
  }
  .data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction="right"] { max-width: 24rem;
  }
  .sm\:data-\[state\=closed\]\:slide-out-to-right-full[data-state="closed"] { --tw-exit-translate-x: 100%;
  }
  .sm\:data-\[state\=open\]\:slide-in-from-right-full[data-state="open"] { --tw-enter-translate-x: 100%;
  }
  .sm\:prose-h2\:text-3xl :is(:where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *))) { font-size: 1.875rem; line-height: 2.25rem;
  }
  .sm\:prose-p\:leading-8 :is(:where(p):not(:where([class~="not-prose"],[class~="not-prose"] *))) { line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .md\:not-sr-only { position: static; width: auto; height: auto; padding: 0; margin: 0; overflow: visible; clip: auto; white-space: normal;
  }
  .md\:absolute { position: absolute;
  }
  .md\:sticky { position: sticky;
  }
  .md\:right-4 { right: 1rem;
  }
  .md\:top-28 { top: 7rem;
  }
  .md\:top-4 { top: 1rem;
  }
  .md\:order-first { order: -9999;
  }
  .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\:ml-1 { margin-left: 0.25rem;
  }
  .md\:ml-16 { margin-left: 4rem;
  }
  .md\:ml-72 { margin-left: 18rem;
  }
  .md\:block { display: block;
  }
  .md\:inline { display: inline;
  }
  .md\:flex { display: flex;
  }
  .md\:inline-flex { display: inline-flex;
  }
  .md\:hidden { display: none;
  }
  .md\:w-64 { width: 16rem;
  }
  .md\:w-\[200px\] { width: 200px;
  }
  .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] { width: var(--radix-navigation-menu-viewport-width);
  }
  .md\:w-auto { width: auto;
  }
  .md\:grid-cols-10 { grid-template-columns: repeat(10, 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-\[1fr_auto\] { grid-template-columns: 1fr auto;
  }
  .md\:grid-cols-\[260px_minmax\(0\2c 1fr\)\] { grid-template-columns: 260px minmax(0,1fr);
  }
  .md\:flex-row { flex-direction: row;
  }
  .md\:items-center { align-items: center;
  }
  .md\:justify-between { justify-content: space-between;
  }
  .md\:gap-1\.5 { gap: 0.375rem;
  }
  .md\:gap-2 { gap: 0.5rem;
  }
  .md\:gap-3 { gap: 0.75rem;
  }
  .md\:gap-4 { gap: 1rem;
  }
  .md\:self-start { align-self: flex-start;
  }
  .md\:whitespace-nowrap { white-space: nowrap;
  }
  .md\:p-4 { padding: 1rem;
  }
  .md\:p-6 { padding: 1.5rem;
  }
  .md\:pb-4 { padding-bottom: 1rem;
  }
  .md\:pr-0 { padding-right: 0px;
  }
  .md\:pt-6 { padding-top: 1.5rem;
  }
  .md\:text-left { text-align: left;
  }
  .md\:text-2xl { font-size: 1.5rem; line-height: 2rem;
  }
  .md\:text-3xl { font-size: 1.875rem; line-height: 2.25rem;
  }
  .md\:text-4xl { font-size: 2.25rem; line-height: 2.5rem;
  }
  .md\:text-6xl { font-size: 3.75rem; line-height: 1;
  }
  .md\:text-8xl { font-size: 6rem; line-height: 1;
  }
  .md\:text-lg { font-size: 1.125rem; line-height: 1.75rem;
  }
  .md\:text-sm { font-size: 0.875rem; line-height: 1.25rem;
  }
  .md\:opacity-0 { opacity: 0;
  }
  .md\:backdrop-blur { --tw-backdrop-blur: blur(8px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  }
  .md\:backdrop-blur-sm { --tw-backdrop-blur: blur(4px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  }
  .md\:after\:hidden::after { content: var(--tw-content); display: none;
  }
  .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:m-2 { margin: 0.5rem;
  }
  .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:ml-0 { margin-left: 0px;
  }
  .peer[data-variant="inset"][data-state="collapsed"] ~ .md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2 { margin-left: 0.5rem;
  }
  .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\:rounded-xl { border-radius: var(--radius-xl);
  }
  .peer[data-variant="inset"] ~ .md\:peer-data-\[variant\=inset\]\: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);
  }
}
@media (min-width: 1024px) {
  .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\:block { display: block;
  }
  .lg\:inline { display: inline;
  }
  .lg\:flex { display: flex;
  }
  .lg\:inline-flex { display: inline-flex;
  }
  .lg\:hidden { display: none;
  }
  .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-\[minmax\(0\2c 2fr\)_minmax\(0\2c 1fr\)\] { grid-template-columns: minmax(0,2fr) minmax(0,1fr);
  }
  .lg\:flex-row { flex-direction: row;
  }
  .lg\:items-center { align-items: center;
  }
  .lg\:gap-12 { gap: 3rem;
  }
  .lg\:px-8 { padding-left: 2rem; padding-right: 2rem;
  }
  .lg\:py-16 { padding-top: 4rem; padding-bottom: 4rem;
  }
}
@media (min-width: 1280px) {
  .xl\:inline { display: inline;
  }
  .xl\:hidden { display: none;
  }
  .xl\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .xl\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]) { padding-right: 0px;
}
.\[\&\>\*\]\:relative>* { position: relative;
}
.\[\&\>\*\]\:z-10>* { z-index: 10;
}
.\[\&\>\*\]\:h-full>* { height: 100%;
}
.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox] { --tw-translate-y: 2px; 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));
}
.\[\&\>button\]\:hidden>button { display: none;
}
.\[\&\>div\]\:bg-warning-500>div { --tw-bg-opacity: 1; background-color: hsl(var(--warning-500) / var(--tw-bg-opacity, 1));
}
.\[\&\>span\:last-child\]\:truncate>span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.\[\&\>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\]\:w-2\.5>svg { width: 0.625rem;
}
.\[\&\>svg\]\:w-3>svg { width: 0.75rem;
}
.\[\&\>svg\]\:shrink-0>svg { flex-shrink: 0;
}
.\[\&\>svg\]\:translate-y-0\.5>svg { --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));
}
.\[\&\>svg\]\:text-current>svg { color: currentColor;
}
.\[\&\>svg\]\:text-destructive>svg { --tw-text-opacity: 1; color: hsl(var(--destructive) / var(--tw-text-opacity, 1));
}
.\[\&\>svg\]\:text-info>svg { --tw-text-opacity: 1; color: hsl(var(--info) / var(--tw-text-opacity, 1));
}
.\[\&\>svg\]\:text-muted-foreground>svg { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.\[\&\>svg\]\:text-sidebar-accent-foreground>svg { --tw-text-opacity: 1; color: hsl(var(--sidebar-accent-foreground) / var(--tw-text-opacity, 1));
}
.\[\&\>svg\]\:text-success>svg { --tw-text-opacity: 1; color: hsl(var(--success) / var(--tw-text-opacity, 1));
}
.\[\&\>svg\]\:text-warning-600>svg { --tw-text-opacity: 1; color: hsl(var(--warning-600) / var(--tw-text-opacity, 1));
}
.dark\:\[\&\>svg\]\:text-warning-200>svg:is(.dark *) { --tw-text-opacity: 1; color: hsl(var(--warning-200) / var(--tw-text-opacity, 1));
}
.\[\&\>tr\]\:last\:border-b-0:last-child>tr { border-bottom-width: 0px;
}
.\[\&\[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));
}
.\[\&_\*\:last-child\]\:flex *:last-child { display: flex;
}
.\[\&_\*\:last-child\]\:items-center *:last-child { align-items: center;
}
.\[\&_\*\:last-child\]\:gap-2 *:last-child { gap: 0.5rem;
}
.\[\&_\*\]\:h-3 * { height: 0.75rem;
}
.\[\&_\*\]\:h-4 * { height: 1rem;
}
.\[\&_\*\]\:h-5 * { height: 1.25rem;
}
.\[\&_\*\]\:w-3 * { width: 0.75rem;
}
.\[\&_\*\]\:w-4 * { width: 1rem;
}
.\[\&_\*\]\:w-5 * { width: 1.25rem;
}
.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text { fill: hsl(var(--muted-foreground) / 1);
}
.\[\&_\.recharts-cartesian-axis-tick_text\]\:font-mono .recharts-cartesian-axis-tick text { font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
}
.\[\&_\.recharts-cartesian-axis-tick_text\]\:tabular-nums .recharts-cartesian-axis-tick text { --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);
}
.\[\&_\.recharts-cartesian-grid_line\]\:stroke-border\/50 .recharts-cartesian-grid line { stroke: hsl(var(--border) / 0.5);
}
.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor { stroke: hsl(var(--border) / 1);
}
.\[\&_\.recharts-legend-item\]\:rounded-sm .recharts-legend-item { border-radius: var(--radius-sm);
}
.\[\&_\.recharts-legend-item\]\:text-muted-foreground .recharts-legend-item { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.\[\&_\.recharts-legend-item\]\:outline-none .recharts-legend-item { outline: 2px solid transparent; outline-offset: 2px;
}
.\[\&_\.recharts-legend-item\]\:focus-visible\:ring-2:focus-visible .recharts-legend-item { --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);
}
.\[\&_\.recharts-legend-item\]\:focus-visible\:ring-ring:focus-visible .recharts-legend-item { --tw-ring-opacity: 1; --tw-ring-color: hsl(var(--ring) / var(--tw-ring-opacity, 1));
}
.\[\&_\.recharts-polar-grid_line\]\:stroke-border .recharts-polar-grid line { stroke: hsl(var(--border) / 1);
}
.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector { fill: hsl(var(--muted) / 1);
}
.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor { fill: hsl(var(--muted) / 1);
}
.\[\&_\.recharts-reference-line\]\:stroke-border .recharts-reference-line { stroke: hsl(var(--border) / 1);
}
.\[\&_\.recharts-sector\]\:stroke-transparent .recharts-sector { stroke: transparent;
}
.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] { padding-left: 0.5rem; padding-right: 0.5rem;
}
.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] { padding-top: 0.375rem; padding-bottom: 0.375rem;
}
.\[\&_\[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\]\]\:text-muted-foreground [cmdk-group-heading] { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.\[\&_\[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;
}
.\[\&_\[data-slot\=command-input-wrapper\]\]\:h-12 [data-slot=command-input-wrapper] { height: 3rem;
}
.\[\&_p\]\:leading-relaxed p { line-height: 1.625;
}
.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*='size-']) { width: 1rem; height: 1rem;
}
.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*='text-']) { --tw-text-opacity: 1; color: hsl(var(--muted-foreground) / var(--tw-text-opacity, 1));
}
.\[\&_svg\]\:pointer-events-none svg { pointer-events: none;
}
.\[\&_svg\]\:shrink-0 svg { flex-shrink: 0;
}
.\[\&_tr\:last-child\]\:border-0 tr:last-child { border-width: 0px;
}
.\[\&_tr\]\:border-b tr { border-bottom-width: 1px;
}
[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=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;
}



/*# sourceMappingURL=fab80ea6cf103509.css.map*/