/*
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)
2. [UnoCSS]: allow to override the default border color with css var `--un-default-border-color`
*/

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

::before,
::after {
  --un-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 */
  tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 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]) {
  text-decoration: underline dotted;
}

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

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

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

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

small {
  font-size: 80%;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  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,
[type='button'],
[type='reset'],
[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 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;
}

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

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

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

/*
Set the default cursor for buttons.
*/

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

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

:disabled {
  cursor: default;
}

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

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

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

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

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

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
*,::before,::after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / 0.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: ;}::backdrop{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / 0.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: ;}        *,*::before,*::after{box-sizing:border-box;border-color:var(--border)}        body{background:var(--bg);color:var(--text)}        ::-webkit-scrollbar{width:8px;height:8px}        ::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}        ::-webkit-scrollbar-track{background:transparent}      .input-base{width:100%;border-width:1px;border-color:var(--border);border-radius:var(--radius);background-color:var(--surface);padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;color:var(--text);outline:2px solid transparent;outline-offset:2px;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;}.skeleton{animation:pulse 2s cubic-bezier(0.4,0,.6,1) infinite;border-radius:var(--radius);background-color:var(--surface-3);}.card{border-width:1px;border-color:var(--border);border-radius:var(--radius-lg);background-color:var(--surface);}.input-base::placeholder{color:var(--text-3);}.input-base:focus-visible{--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);--un-ring-offset-width:1px;--un-ring-color:var(--ring);--un-ring-offset-color:var(--bg);}.data-\[disabled\]\:pointer-events-none[data-disabled],.pointer-events-none{pointer-events:none;}.disabled\:pointer-events-none:disabled{pointer-events:none;}.visible{visibility:visible;}.absolute{position:absolute;}.fixed{position:fixed;}.relative{position:relative;}.sticky{position:sticky;}.inset-0{inset:0;}.inset-x-0{left:0;right:0;}.inset-y-0{top:0;bottom:0;}.-bottom-12{bottom:-3rem;}.-right-0\.5{right:-0.125rem;}.-right-8{right:-2rem;}.-top-0\.5{top:-0.125rem;}.-top-10{top:-2.5rem;}.bottom-0{bottom:0;}.bottom-4{bottom:1rem;}.left-0{left:0;}.left-1\/2{left:50%;}.left-2{left:0.5rem;}.left-2\.5{left:0.625rem;}.left-3{left:0.75rem;}.right-12{right:3rem;}.right-2\.5{right:0.625rem;}.top-0{top:0;}.top-1\/2{top:50%;}.top-24{top:6rem;}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;}.z-\[60\]{z-index:60;}.z-20{z-index:20;}.z-30{z-index:30;}.z-40{z-index:40;}.z-50{z-index:50;}.grid{display:grid;}.col-span-2{grid-column:span 2/span 2;}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr));}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}.grid-cols-24{grid-template-columns:repeat(24,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));}.m\[inp\.field\]{margin:inp.field;}.-mx-3{margin-left:-0.75rem;margin-right:-0.75rem;}.mx-0\.5{margin-left:0.125rem;margin-right:0.125rem;}.mx-1{margin-left:0.25rem;margin-right:0.25rem;}.mx-4{margin-left:1rem;margin-right:1rem;}.mx-auto{margin-left:auto;margin-right:auto;}.my-1{margin-top:0.25rem;margin-bottom:0.25rem;}.my-2{margin-top:0.5rem;margin-bottom:0.5rem;}.mb-1{margin-bottom:0.25rem;}.mb-1\.5{margin-bottom:0.375rem;}.mb-2{margin-bottom:0.5rem;}.mb-3{margin-bottom:0.75rem;}.mb-4{margin-bottom:1rem;}.mb-5{margin-bottom:1.25rem;}.mb-8{margin-bottom:2rem;}.ml-0\.5{margin-left:0.125rem;}.ml-1{margin-left:0.25rem;}.ml-3{margin-left:0.75rem;}.ml-6{margin-left:1.5rem;}.ml-auto{margin-left:auto;}.mr-1{margin-right:0.25rem;}.mt-0\.5{margin-top:0.125rem;}.mt-1{margin-top:0.25rem;}.mt-1\.5{margin-top:0.375rem;}.mt-2{margin-top:0.5rem;}.mt-2\.5{margin-top:0.625rem;}.mt-3{margin-top:0.75rem;}.mt-4{margin-top:1rem;}.mt-5{margin-top:1.25rem;}.mt-6{margin-top:1.5rem;}.mt-7{margin-top:1.75rem;}.mt-8{margin-top:2rem;}.inline{display:inline;}.block{display:block;}.inline-block{display:inline-block;}.hidden{display:none;}.h-\[17px\]{height:17px;}.h-\[18px\]{height:18px;}.h-\[22px\]{height:22px;}.h-\[calc\(100vh-190px\)\]{height:calc(100vh - 190px);}.h-\[var\(--header-h\)\]{height:var(--header-h);}.h-1,.h1{height:0.25rem;}.h-1\.5{height:0.375rem;}.h-10{height:2.5rem;}.h-11{height:2.75rem;}.h-12{height:3rem;}.h-16{height:4rem;}.h-24{height:6rem;}.h-3,.h3{height:0.75rem;}.h-3\.5{height:0.875rem;}.h-32{height:8rem;}.h-4,.h4{height:1rem;}.h-5{height:1.25rem;}.h-5\.5{height:1.375rem;}.h-7{height:1.75rem;}.h-8{height:2rem;}.h-9{height:2.25rem;}.h-full{height:100%;}.h-px{height:1px;}.h-screen{height:100vh;}.h2{height:0.5rem;}.max-h-\[70vh\]{max-height:70vh;}.max-h-\[80vh\]{max-height:80vh;}.max-h-60{max-height:15rem;}.max-h-64{max-height:16rem;}.max-h-72{max-height:18rem;}.max-h-80{max-height:20rem;}.max-w-\[1200px\]{max-width:1200px;}.max-w-\[1400px\]{max-width:1400px;}.max-w-\[380px\]{max-width:380px;}.max-w-\[480px\]{max-width:480px;}.max-w-\[5\.5rem\]{max-width:5.5rem;}.max-w-\[980px\]{max-width:980px;}.max-w-\[9rem\]{max-width:9rem;}.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-lg{max-width:32rem;}.max-w-md{max-width:28rem;}.max-w-sm{max-width:24rem;}.max-w-xl{max-width:36rem;}.min-h-\[calc\(100vh-8rem\)\]{min-height:calc(100vh - 8rem);}.min-h-100{min-height:25rem;}.min-h-8{min-height:2rem;}.min-h-screen{min-height:100vh;}.min-w-\[140px\]{min-width:140px;}.min-w-\[var\(--reka-select-trigger-width\)\]{min-width:var(--reka-select-trigger-width);}.min-w-0{min-width:0;}.min-w-4{min-width:1rem;}.min-w-40{min-width:10rem;}.min-w-7{min-width:1.75rem;}.w-\[17px\]{width:17px;}.w-\[18px\]{width:18px;}.w-\[22px\]{width:22px;}.w-\[300px\]{width:300px;}.w-\[46\%\]{width:46%;}.w-\[calc\(100vw-32px\)\]{width:calc(100vw - 32px);}.w-\[var\(--sidebar-w-collapsed\)\]{width:var(--sidebar-w-collapsed);}.w-\[var\(--sidebar-w\)\]{width:var(--sidebar-w);}.w-1{width:0.25rem;}.w-1\.5{width:0.375rem;}.w-1\/2{width:50%;}.w-10{width:2.5rem;}.w-11{width:2.75rem;}.w-12{width:3rem;}.w-14{width:3.5rem;}.w-16{width:4rem;}.w-2\/5{width:40%;}.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-4{width:1rem;}.w-48{width:12rem;}.w-5{width:1.25rem;}.w-5\.5{width:1.375rem;}.w-52{width:13rem;}.w-56{width:14rem;}.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-full{width:100%;}.flex{display:flex;}.inline-flex{display:inline-flex;}.flex-1{flex:1 1 0%;}.flex-shrink{flex-shrink:1;}.shrink-0{flex-shrink:0;}.flex-col{flex-direction:column;}.flex-wrap{flex-wrap:wrap;}.flex-nowrap{flex-wrap:nowrap;}.table{display:table;}.border-collapse{border-collapse:collapse;}.-translate-x-1\/2{--un-translate-x:-50%;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.-translate-x-full{--un-translate-x:-100%;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.-translate-y-1\/2{--un-translate-y:-50%;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--un-translate-x:1rem;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.translate-x-0{--un-translate-x:0;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.rotate-180{--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-rotate:180deg;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.active\:scale-95:active{--un-scale-x:0.95;--un-scale-y:0.95;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite;}.data-\[state\=open\]\:animate-\[pop-enter_0\.16s_ease\][data-state=open]{animation:pop-enter 0.16s ease;}@keyframes pulse{0%, 100% {opacity:1} 50% {opacity:.5}}.cursor-default{cursor:default;}.cursor-pointer{cursor:pointer;}.cursor-not-allowed{cursor:not-allowed;}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed;}.select-none{-webkit-user-select:none;user-select:none;}.resize-y{resize:vertical;}.resize{resize:both;}.resize-none{resize:none;}.scroll-mt-24{scroll-margin-top:6rem;}.items-start{align-items:flex-start;}.items-end{align-items:flex-end;}.items-center{align-items:center;}.items-baseline{align-items:baseline;}.justify-end{justify-content:flex-end;}.justify-center{justify-content:center;}.justify-between{justify-content:space-between;}.gap-0{gap:0;}.gap-0\.5{gap:0.125rem;}.gap-1{gap:0.25rem;}.gap-1\.5{gap:0.375rem;}.gap-2{gap:0.5rem;}.gap-2\.5{gap:0.625rem;}.gap-3{gap:0.75rem;}.gap-4{gap:1rem;}.gap-5{gap:1.25rem;}.gap-x-3{column-gap:0.75rem;}.gap-x-4{column-gap:1rem;}.gap-x-8{column-gap:2rem;}.gap-y-\[5px\]{row-gap:5px;}.gap-y-1{row-gap:0.25rem;}.gap-y-2{row-gap:0.5rem;}.gap-y-3{row-gap:0.75rem;}.gap-y-3\.5{row-gap:0.875rem;}.space-y-0\.5>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.125rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.125rem * var(--un-space-y-reverse));}.space-y-1\.5>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.375rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.375rem * var(--un-space-y-reverse));}.space-y-1>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.25rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.25rem * var(--un-space-y-reverse));}.space-y-2>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.5rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.5rem * var(--un-space-y-reverse));}.space-y-3>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(0.75rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(0.75rem * var(--un-space-y-reverse));}.space-y-4>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1rem * var(--un-space-y-reverse));}.space-y-5>:not([hidden])~:not([hidden]){--un-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--un-space-y-reverse)));margin-bottom:calc(1.25rem * var(--un-space-y-reverse));}.divide-y>:not([hidden])~:not([hidden]){--un-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--un-divide-y-reverse)));border-bottom-width:calc(1px * var(--un-divide-y-reverse));}.border-line,.border-line\/50,.border-line\/60,.border-line\/70,.divide-\[var\(--border\)\]>:not([hidden])~:not([hidden]),.divide-line>:not([hidden])~:not([hidden]){border-color:var(--border);}.overflow-auto{overflow:auto;}.overflow-hidden{overflow:hidden;}.overflow-x-auto{overflow-x:auto;}.overflow-x-hidden{overflow-x:hidden;}.overflow-y-auto{overflow-y:auto;}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.whitespace-nowrap{white-space:nowrap;}.whitespace-pre-wrap{white-space:pre-wrap;}.break-words{overflow-wrap:break-word;}.break-all{word-break:break-all;}.b,.border{border-width:1px;}.border-0{border-width:0px;}.border-2{border-width:2px;}.last\:border-0:last-child{border-width:0px;}.border-b{border-bottom-width:1px;}.border-l{border-left-width:1px;}.border-l-2{border-left-width:2px;}.border-r{border-right-width:1px;}.border-t{border-top-width:1px;}.border-\[\#dcdee2\]{--un-border-opacity:1;border-color:rgb(220 222 226 / var(--un-border-opacity));}.border-bad,.border-bad\/40{border-color:var(--danger);}.border-brand,.data-\[state\=checked\]\:border-brand[data-state=checked],.data-\[state\=indeterminate\]\:border-brand[data-state=indeterminate]{border-color:var(--primary);}.border-line-strong{border-color:var(--border-strong);}.border-red-200{--un-border-opacity:1;border-color:rgb(254 202 202 / var(--un-border-opacity));}.border-transparent{border-color:transparent;}.hover\:border-brand\/40:hover{border-color:var(--primary);}.focus\:border-brand:focus{border-color:var(--primary);}.rounded,.rounded-md{border-radius:var(--radius);}.rounded-\[4px\]{border-radius:4px;}.rounded-2xl{border-radius:1rem;}.rounded-3xl{border-radius:1.5rem;}.rounded-full{border-radius:9999px;}.rounded-lg{border-radius:var(--radius-lg);}.rounded-xl{border-radius:var(--radius-xl);}.border-dashed{border-style:dashed;}.bg-\[\#f0faff\]{--un-bg-opacity:1;background-color:rgb(240 250 255 / var(--un-bg-opacity));}.bg-\[var\(--border\)\],.bg-line{background-color:var(--border);}.bg-amber-50{--un-bg-opacity:1;background-color:rgb(255 251 235 / var(--un-bg-opacity));}.bg-bad{background-color:var(--danger);}.bg-bad-soft,.data-\[highlighted\]\:bg-bad-soft[data-highlighted]{background-color:var(--danger-soft);}.bg-bg{background-color:var(--bg);}.bg-black\/25{background-color:rgb(0 0 0 / 0.25);}.bg-black\/40{background-color:rgb(0 0 0 / 0.4);}.bg-blue-100{--un-bg-opacity:1;background-color:rgb(219 234 254 / var(--un-bg-opacity));}.bg-blue-500{--un-bg-opacity:1;background-color:rgb(59 130 246 / var(--un-bg-opacity));}.bg-brand,.bg-brand\/40,.data-\[state\=checked\]\:bg-brand[data-state=checked],.data-\[state\=indeterminate\]\:bg-brand[data-state=indeterminate]{background-color:var(--primary);}.bg-brand-soft{background-color:var(--primary-soft);}.bg-emerald-500{--un-bg-opacity:1;background-color:rgb(16 185 129 / var(--un-bg-opacity));}.bg-green-100{--un-bg-opacity:1;background-color:rgb(220 252 231 / var(--un-bg-opacity));}.bg-green-50{--un-bg-opacity:1;background-color:rgb(240 253 244 / var(--un-bg-opacity));}.bg-info{background-color:var(--info);}.bg-info-soft{background-color:var(--info-soft);}.bg-ink{background-color:var(--text);}.bg-ink-3{background-color:var(--text-3);}.bg-ok{background-color:var(--success);}.bg-ok-soft{background-color:var(--success-soft);}.bg-orange-500{--un-bg-opacity:1;background-color:rgb(249 115 22 / var(--un-bg-opacity));}.bg-red-50{--un-bg-opacity:1;background-color:rgb(254 242 242 / var(--un-bg-opacity));}.bg-surface,.bg-surface\/90{background-color:var(--surface);}.bg-surface-2,.bg-surface-2\/40,.bg-surface-2\/50,.bg-surface-2\/60,.data-\[highlighted\]\:bg-surface-2[data-highlighted]{background-color:var(--surface-2);}.bg-surface-3{background-color:var(--surface-3);}.bg-warn{background-color:var(--warning);}.bg-warn-soft{background-color:var(--warning-soft);}.bg-white{--un-bg-opacity:1;background-color:rgb(255 255 255 / var(--un-bg-opacity));}.bg-white\/10{background-color:rgb(255 255 255 / 0.1);}.bg-white\/15{background-color:rgb(255 255 255 / 0.15);}.bg-white\/5{background-color:rgb(255 255 255 / 0.05);}.hover\:bg-\[\#f3f3f3\]:hover{--un-bg-opacity:1;background-color:rgb(243 243 243 / var(--un-bg-opacity));}.hover\:bg-\[var\(--primary-soft-hover\)\]:hover{background-color:var(--primary-soft-hover);}.hover\:bg-bad-soft:hover{background-color:var(--danger-soft);}.hover\:bg-brand-hover:hover{background-color:var(--primary-hover);}.hover\:bg-red-50:hover{--un-bg-opacity:1;background-color:rgb(254 242 242 / var(--un-bg-opacity));}.hover\:bg-surface-2:hover{background-color:var(--surface-2);}.hover\:bg-surface-2\/60:hover{background-color:var(--surface-2);}.hover\:bg-surface-3:hover{background-color:var(--surface-3);}.focus\:bg-surface:focus{background-color:var(--surface);}.active\:bg-surface-2:active{background-color:var(--surface-2);}.from-blue-500{--un-gradient-from-position:0%;--un-gradient-from:rgb(59 130 246 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(59 130 246 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-blue-600{--un-gradient-from-position:0%;--un-gradient-from:rgb(37 99 235 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(37 99 235 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-emerald-500{--un-gradient-from-position:0%;--un-gradient-from:rgb(16 185 129 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(16 185 129 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-orange-400{--un-gradient-from-position:0%;--un-gradient-from:rgb(251 146 60 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(251 146 60 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-slate-400{--un-gradient-from-position:0%;--un-gradient-from:rgb(148 163 184 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(148 163 184 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-teal-400{--un-gradient-from-position:0%;--un-gradient-from:rgb(45 212 191 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(45 212 191 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.from-violet-500{--un-gradient-from-position:0%;--un-gradient-from:rgb(139 92 246 / var(--un-from-opacity, 1)) var(--un-gradient-from-position);--un-gradient-to-position:100%;--un-gradient-to:rgb(139 92 246 / 0) var(--un-gradient-to-position);--un-gradient-stops:var(--un-gradient-from), var(--un-gradient-to);}.via-blue-600{--un-gradient-via-position:50%;--un-gradient-to:rgb(37 99 235 / 0);--un-gradient-stops:var(--un-gradient-from), rgb(37 99 235 / var(--un-via-opacity, 1)) var(--un-gradient-via-position), var(--un-gradient-to);}.to-blue-500{--un-gradient-to-position:100%;--un-gradient-to:rgb(59 130 246 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-blue-600{--un-gradient-to-position:100%;--un-gradient-to:rgb(37 99 235 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-green-600{--un-gradient-to-position:100%;--un-gradient-to:rgb(22 163 74 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-orange-500{--un-gradient-to-position:100%;--un-gradient-to:rgb(249 115 22 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-purple-600{--un-gradient-to-position:100%;--un-gradient-to:rgb(147 51 234 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-slate-600{--un-gradient-to-position:100%;--un-gradient-to:rgb(71 85 105 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.to-teal-600{--un-gradient-to-position:100%;--un-gradient-to:rgb(13 148 136 / var(--un-to-opacity, 1)) var(--un-gradient-to-position);}.bg-gradient-to-br{--un-gradient-shape:to bottom right in oklch;--un-gradient:var(--un-gradient-shape), var(--un-gradient-stops);background-image:linear-gradient(var(--un-gradient));}.p-0{padding:0;}.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-3\.5{padding:0.875rem;}.p-4{padding:1rem;}.p-5{padding:1.25rem;}.p-6{padding:1.5rem;}.px,.px-4{padding-left:1rem;padding-right:1rem;}.px-0{padding-left:0;padding-right:0;}.px-1{padding-left:0.25rem;padding-right:0.25rem;}.px-1\.5{padding-left:0.375rem;padding-right:0.375rem;}.px-10{padding-left:2.5rem;padding-right:2.5rem;}.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-3\.5{padding-left:0.875rem;padding-right:0.875rem;}.px-5{padding-left:1.25rem;padding-right:1.25rem;}.px-6{padding-left:1.5rem;padding-right:1.5rem;}.py-0\.5{padding-top:0.125rem;padding-bottom:0.125rem;}.py-1{padding-top:0.25rem;padding-bottom:0.25rem;}.py-1\.5{padding-top:0.375rem;padding-bottom:0.375rem;}.py-10{padding-top:2.5rem;padding-bottom:2.5rem;}.py-12{padding-top:3rem;padding-bottom:3rem;}.py-16{padding-top:4rem;padding-bottom:4rem;}.py-2{padding-top:0.5rem;padding-bottom:0.5rem;}.py-2\.5{padding-top:0.625rem;padding-bottom:0.625rem;}.py-3{padding-top:0.75rem;padding-bottom:0.75rem;}.py-4{padding-top:1rem;padding-bottom:1rem;}.py-5{padding-top:1.25rem;padding-bottom:1.25rem;}.py-6{padding-top:1.5rem;padding-bottom:1.5rem;}.py-8{padding-top:2rem;padding-bottom:2rem;}.py-px{padding-top:1px;padding-bottom:1px;}.pb-\[calc\(var\(--tab-bar-h\,60px\)\+env\(safe-area-inset-bottom\,0px\)\)\]{padding-bottom:calc(var(--tab-bar-h,60px) + env(safe-area-inset-bottom,0px));}.pb-1\.5{padding-bottom:0.375rem;}.pb-2{padding-bottom:0.5rem;}.pb-4{padding-bottom:1rem;}.pl-1{padding-left:0.25rem;}.pl-2{padding-left:0.5rem;}.pl-2\.5{padding-left:0.625rem;}.pl-3{padding-left:0.75rem;}.pl-7{padding-left:1.75rem;}.pl-8{padding-left:2rem;}.pl-9{padding-left:2.25rem;}.pr-1\.5{padding-right:0.375rem;}.pr-10{padding-right:2.5rem;}.pr-14{padding-right:3.5rem;}.pr-2{padding-right:0.5rem;}.pr-2\.5{padding-right:0.625rem;}.pr-3{padding-right:0.75rem;}.ps{padding-inline-start:1rem;}.pt-0\.5{padding-top:0.125rem;}.pt-1{padding-top:0.25rem;}.pt-2{padding-top:0.5rem;}.pt-2\.5{padding-top:0.625rem;}.pt-3{padding-top:0.75rem;}.pt-4{padding-top:1rem;}.pie{padding-inline-end:1rem;}.text-center{text-align:center;}.text-left{text-align:left;}.text-right{text-align:right;}.align-middle{vertical-align:middle;}.text-\[10px\]{font-size:10px;}.text-\[11px\]{font-size:11px;}.text-\[12px\]{font-size:12px;}.text-\[13px\]{font-size:13px;}.text-\[14px\]{font-size:14px;}.text-\[15px\]{font-size:15px;}.text-\[16px\]{font-size:16px;}.text-\[19px\]{font-size:19px;}.text-\[21px\]{font-size:21px;}.text-\[22px\]{font-size:22px;}.text-\[30px\]{font-size:30px;}.text-2xl{font-size:1.5rem;line-height:2rem;}.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;}.data-\[highlighted\]\:text-ink[data-highlighted],.text-ink{color:var(--text);}.data-\[placeholder\]\:text-ink-3[data-placeholder],.text-ink-3,.text-ink-3\/60{color:var(--text-3);}.text-\[\#2d8cf0\]{--un-text-opacity:1;color:rgb(45 140 240 / var(--un-text-opacity));}.text-\[\#515a6e\]{--un-text-opacity:1;color:rgb(81 90 110 / var(--un-text-opacity));}.text-\[\#808695\]{--un-text-opacity:1;color:rgb(128 134 149 / var(--un-text-opacity));}.text-\[\#ed4014\]{--un-text-opacity:1;color:rgb(237 64 20 / var(--un-text-opacity));}.text-\[var\(--bg\)\]{color:var(--bg);}.text-\[var\(--color-text-danger\)\]{color:var(--color-text-danger);}.text-amber-600{--un-text-opacity:1;color:rgb(217 119 6 / var(--un-text-opacity));}.text-bad{color:var(--danger);}.text-blue-700{--un-text-opacity:1;color:rgb(29 78 216 / var(--un-text-opacity));}.text-brand{color:var(--primary);}.text-brand-fg{color:var(--primary-fg);}.text-green-600{--un-text-opacity:1;color:rgb(22 163 74 / var(--un-text-opacity));}.text-green-700{--un-text-opacity:1;color:rgb(21 128 61 / var(--un-text-opacity));}.text-info{color:var(--info);}.text-ink-2{color:var(--text-2);}.text-ok{color:var(--success);}.text-red-500{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity));}.text-red-600{--un-text-opacity:1;color:rgb(220 38 38 / var(--un-text-opacity));}.text-warn{color:var(--warning);}.text-white{--un-text-opacity:1;color:rgb(255 255 255 / var(--un-text-opacity));}.text-white\/50{color:rgb(255 255 255 / 0.5);}.text-white\/60{color:rgb(255 255 255 / 0.6);}.text-white\/70{color:rgb(255 255 255 / 0.7);}.text-white\/75{color:rgb(255 255 255 / 0.75);}.text-white\/85{color:rgb(255 255 255 / 0.85);}.hover\:text-\[\#2d8cf0\]:hover{--un-text-opacity:1;color:rgb(45 140 240 / var(--un-text-opacity));}.hover\:text-\[\#ed4014\]:hover{--un-text-opacity:1;color:rgb(237 64 20 / var(--un-text-opacity));}.hover\:text-bad:hover{color:var(--danger);}.hover\:text-bad\/80:hover{color:var(--danger);}.hover\:text-brand:hover{color:var(--primary);}.hover\:text-ink-2:hover{color:var(--text-2);}.hover\:text-ink:hover{color:var(--text);}.hover\:text-red-500:hover{--un-text-opacity:1;color:rgb(239 68 68 / var(--un-text-opacity));}.placeholder\:text-ink-3::placeholder{color:var(--text-3);}.font-medium{font-weight:500;}.font-normal{font-weight:400;}.font-semibold,.fw600{font-weight:600;}.leading-4{line-height:1rem;}.leading-5{line-height:1.25rem;}.leading-6{line-height:1.5rem;}.leading-none{line-height:1;}.leading-relaxed{line-height:1.625;}.leading-snug{line-height:1.375;}.leading-tight{line-height:1.25;}.tracking-tight{letter-spacing:-0.025em;}.tracking-wide{letter-spacing:0.025em;}.tracking-wider{letter-spacing:0.05em;}.font-mono{font-family:"JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;}.uppercase{text-transform:uppercase;}.underline{text-decoration-line:underline;}.hover\:underline:hover{text-decoration-line:underline;}.underline-offset-2{text-underline-offset:2px;}.underline-offset-4{text-underline-offset:4px;}.tab{-moz-tab-size:4;-o-tab-size:4;tab-size:4;}.data-\[disabled\]\:opacity-40[data-disabled],.opacity-40{opacity:0.4;}.opacity-0{opacity:0;}.opacity-25{opacity:0.25;}.opacity-50{opacity:0.5;}.opacity-60{opacity:0.6;}.hover\:opacity-80:hover{opacity:0.8;}.hover\:opacity-90:hover{opacity:0.9;}.active\:opacity-70:active{opacity:0.7;}.disabled\:opacity-40:disabled{opacity:0.4;}.disabled\:opacity-50:disabled{opacity:0.5;}.shadow{--un-shadow:var(--un-shadow-inset) 0 1px 3px 0 var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 1px 2px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.shadow-lg{--un-shadow:var(--un-shadow-inset) 0 10px 15px -3px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 4px 6px -4px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.shadow-md{--un-shadow:var(--un-shadow-inset) 0 4px 6px -1px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 2px 4px -2px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.shadow-sm{--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.shadow-xl{--un-shadow:var(--un-shadow-inset) 0 20px 25px -5px var(--un-shadow-color, rgb(0 0 0 / 0.1)),var(--un-shadow-inset) 0 8px 10px -6px var(--un-shadow-color, rgb(0 0 0 / 0.1));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.hover\:shadow-sm:hover{--un-shadow:var(--un-shadow-inset) 0 1px 2px 0 var(--un-shadow-color, rgb(0 0 0 / 0.05));box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.outline{outline-style:solid;}.outline-none{outline:2px solid transparent;outline-offset:2px;}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px;}.focus-ring:focus{--un-ring-width:3px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.focus\:ring-2:focus{--un-ring-width:2px;--un-ring-offset-shadow:var(--un-ring-inset) 0 0 0 var(--un-ring-offset-width) var(--un-ring-offset-color);--un-ring-shadow:var(--un-ring-inset) 0 0 0 calc(var(--un-ring-width) + var(--un-ring-offset-width)) var(--un-ring-color);box-shadow:var(--un-ring-offset-shadow), var(--un-ring-shadow), var(--un-shadow);}.focus\:ring-brand\/30:focus{--un-ring-color:var(--primary);}.focus-visible\:ring-\[var\(--danger\)\]:focus-visible{--un-ring-color:var(--danger);}.backdrop-blur{--un-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);}.backdrop-blur-sm{--un-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-backdrop-sepia);backdrop-filter:var(--un-backdrop-blur) var(--un-backdrop-brightness) var(--un-backdrop-contrast) var(--un-backdrop-grayscale) var(--un-backdrop-hue-rotate) var(--un-backdrop-invert) var(--un-backdrop-opacity) var(--un-backdrop-saturate) var(--un-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-\[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-opacity{transition-property:opacity;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-200{transition-duration:200ms;}.ease-out{transition-timing-function:cubic-bezier(0, 0, 0.2, 1);}@media (min-width: 640px){.sm\:col-span-1{grid-column:span 1/span 1;}.sm\:col-span-2{grid-column:span 2/span 2;}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}.sm\:block{display:block;}.sm\:w-72{width:18rem;}.sm\:w-auto{width:auto;}}@media (min-width: 768px){.md\:grid-cols-\[260px_1fr\]{grid-template-columns:260px 1fr;}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}.md\:block{display:block;}.md\:hidden{display:none;}.md\:table{display:table;}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2/span 2;}.lg\:grid-cols-\[220px_1fr\]{grid-template-columns:220px 1fr;}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr));}.lg\:block{display:block;}.lg\:hidden{display:none;}.lg\:flex{display:flex;}.lg\:p-6{padding:1.5rem;}.lg\:px-6{padding-left:1.5rem;padding-right:1.5rem;}.lg\:py-6{padding-top:1.5rem;padding-bottom:1.5rem;}}@media (min-width: 1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}.xl\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr));}}/*
 * sarva-next 设计令牌
 * 单一事实来源：所有组件/页面只消费这里的变量，不写死颜色。
 * 亮/暗双主题通过 <html class="dark"> 切换。
 */

:root {
  /* —— 中性面 —— */
  --bg: #f6f7f9;
  --surface: #ffffff;
  --surface-2: #f2f4f7;
  --surface-3: #eceff3;
  --border: #e3e7ec;
  --border-strong: #cfd5dd;

  /* —— 文字 —— */
  --text: #101828;
  --text-2: #475467;
  --text-3: #8a94a6;
  --text-inverse: #ffffff;

  /* —— 品牌 —— */
  --primary: #2563eb;
  --primary-hover: #1d4ed8;
  --primary-active: #1e40af;
  --primary-soft: #eff6ff;
  --primary-soft-hover: #dbeafe;
  --primary-fg: #ffffff;
  --ring: #93c5fd;

  /* —— 语义色 —— */
  --success: #12b76a;
  --success-soft: #e7f8ef;
  --warning: #f79009;
  --warning-soft: #fef4e6;
  --danger: #f04438;
  --danger-soft: #fee4e2;
  --info: #2e90fa;
  --info-soft: #e8f3fe;

  /* —— 图表序列色 —— */
  --chart-1: #2563eb;
  --chart-2: #12b76a;
  --chart-3: #f79009;
  --chart-4: #9b51e0;
  --chart-5: #2e90fa;

  /* —— 几何 —— */
  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --sidebar-w: 232px;
  --sidebar-w-collapsed: 72px;
  --header-h: 60px;

  /* —— 阴影（极克制，仅浮层用） —— */
  --shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.05);
  --shadow-md: 0 4px 12px rgba(16, 24, 40, 0.08);
  --shadow-lg: 0 12px 32px rgba(16, 24, 40, 0.12);

  color-scheme: light;
}

.dark {
  --bg: #0e1117;
  --surface: #161b22;
  --surface-2: #1c222b;
  --surface-3: #232a35;
  --border: #2a313c;
  --border-strong: #3a4350;

  --text: #e8ecf2;
  --text-2: #9aa5b4;
  --text-3: #6b7684;
  --text-inverse: #0e1117;

  --primary: #4f8dfb;
  --primary-hover: #6ba0fc;
  --primary-active: #3b7ae8;
  --primary-soft: #16233a;
  --primary-soft-hover: #1d2f4d;
  --primary-fg: #08111f;
  --ring: #2563eb;

  --success: #3ccB7f;
  --success-soft: #10261c;
  --warning: #f5a524;
  --warning-soft: #2b1f0e;
  --danger: #f97066;
  --danger-soft: #2c1614;
  --info: #58a6ff;
  --info-soft: #10233c;

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.45);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.55);

  color-scheme: dark;
}
:root {
  --font-sans: "Inter var", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI",
    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

html,
body,
#app {
  height: 100%;
}

body {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-variant-numeric: tabular-nums;
}

/* 中文正文不加 tabular-nums，避免标点间距异常 */
.zh {
  font-variant-numeric: normal;
}

::selection {
  background: var(--primary-soft);
  color: var(--text);
}

/* 路由转场 */
.route-fade-enter-active,
.route-fade-leave-active {
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.route-fade-enter-from {
  opacity: 0;
  transform: translateY(6px);
}
.route-fade-leave-to {
  opacity: 0;
  transform: translateY(-4px);
}

/* reka-ui 浮层动画 */
.pop-enter-active,
.pop-leave-active {
  transition: opacity 0.14s ease, transform 0.14s ease;
}
.pop-enter-from,
.pop-leave-to {
  opacity: 0;
  transform: scale(0.97) translateY(-4px);
}

/* 数据进入动画 */
@keyframes rise {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.rise {
  animation: rise 0.32s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@media (prefers-reduced-motion: reduce) {
  .rise,
  .route-fade-enter-active,
  .route-fade-leave-active {
    animation: none !important;
    transition: none !important;
  }
}
