tempest-react-sdk 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +114 -22
- package/dist/index.d.ts +91 -0
- package/dist/styles.css +1 -1
- package/dist/tempest-react-sdk.cjs +3 -3
- package/dist/tempest-react-sdk.cjs.map +1 -1
- package/dist/tempest-react-sdk.js +1073 -991
- package/dist/tempest-react-sdk.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,6 +33,7 @@ The goal is to start every new React frontend with the same opinionated foundati
|
|
|
33
33
|
- [JWT helpers & refresh queue](#jwt-helpers--refresh-queue-recipe)
|
|
34
34
|
- [Code-splitting with retry](#code-splitting-with-retry-recipe)
|
|
35
35
|
- [React Query](#react-query-recipe)
|
|
36
|
+
- [Form layout (`Form`, `FormSection`, `FormRow`, `FormActions`)](#form-layout-recipe)
|
|
36
37
|
- [Forms (zod)](#forms-zod-recipe)
|
|
37
38
|
- [BR validators & masked inputs](#br-validators--masked-inputs-recipe)
|
|
38
39
|
- [ViaCEP lookup](#viacep-lookup-recipe)
|
|
@@ -149,28 +150,28 @@ The styles ship hashed under the `tempest_` namespace — they do **not** collid
|
|
|
149
150
|
|
|
150
151
|
Every module is re-exported from the package root — `import { Button, useDebounce, createApiClient } from "tempest-react-sdk"` always works.
|
|
151
152
|
|
|
152
|
-
| Module | Exports
|
|
153
|
-
| ------------------------------------------ |
|
|
154
|
-
| `components` | `Avatar`, `Badge`, `Breadcrumbs`, `Button`, `Card`, `Checkbox`, `ChipInput`, `ConfirmDialog`, `Container`, `DatePicker`, `Drawer`, `EmptyState`, `ErrorState`, `FileUpload`, `Grid`, `Input`, `Modal`, `Pagination`, `Progress`, `Radio`, `RadioGroup`, `SearchBar`, `Select`, `Skeleton`, `Spinner`, `Stack`, `Stepper`, `Switch`, `Table`, `Tabs`, `Textarea`, `Toast` (`ToastProvider`, `useToast`), `Tooltip`, `VirtualList` |
|
|
155
|
-
| `hooks` | `useDebounce`, `usePagination`, `useClientFilter`, `useMediaQuery`, `useOnline`, `useDocumentVisibility`, `useIntersectionObserver`, `useResizeObserver`, `useClipboard`, `useKeyboardShortcut`, `useBeforeInstallPrompt`, `useIdle`, `useGeolocation`, `useScrollLock`, `useFocusTrap`, `useStableCallback`, `useDeepMemo`
|
|
156
|
-
| `http` | `createApiClient`, `parseResponse`, `uploadWithProgress`, `retry`, `generateIdempotencyKey`, `usePoll`, types: `ApiClient`, `ApiClientConfig`, `ApiError`, `RequestOptions`, `RetryOptions`, `UploadProgressEvent`, `UploadWithProgressOptions`, `UsePollOptions`, `UsePollResult`
|
|
157
|
-
| `auth` _(peer: `zustand`)_ | `createAuthStore`, `AuthGuard`, `decodeJWT`, `isJWTExpired`, `lazyWithRetry`, `createRefreshQueue`, types: `AuthState`, `CreateAuthStoreOptions`, `AuthGuardProps`, `DecodedJWT`, `LazyWithRetryOptions`
|
|
158
|
-
| `query` _(peer: `@tanstack/react-query`)_ | `QueryProvider`, `createQueryKeys`, `STALE_TIME`, `CACHE_TIME`, `REFETCH_TIME`
|
|
159
|
-
| `forms` _(peer: `zod`, `react-hook-form`)_ | `validateForm`, `zodResolver`, `useZodForm`, `validateCPF`, `validateCNPJ`, `formatCEP`, `formatCNPJ`, `unmask`, `CPFInput`, `CNPJInput`, `PhoneInput`, `CEPInput`, `MoneyInput`, `useViaCEP`
|
|
160
|
-
| `sse` | `createEventStream`, `useEventStream`
|
|
161
|
-
| `ws` | `createWebSocket`, `useWebSocket`
|
|
162
|
-
| `push` | `WebPushClient`, `WebPushUnsupportedError`, `WebPushPermissionDeniedError`, `usePushSubscription`, `urlBase64ToUint8Array`, `isPushSupported`
|
|
163
|
-
| `sw` | `registerServiceWorker`, `skipWaiting`, `unregisterAllServiceWorkers`, `installPushHandler`, `installNotificationClickHandler`, `installSkipWaitingListener`
|
|
164
|
-
| `audio` | `createAudioPlayer`, `playAudio`, `stopAudio`, `useAudio`
|
|
165
|
-
| `offline` _(peer: `dexie`)_ | `createOfflineStore`, types: `OfflineStore`, `OfflineStoreConfig`, `ListOptions`
|
|
166
|
-
| `error-boundary` | `ErrorBoundary`, `useErrorHandler`, types: `ErrorBoundaryProps`, `ErrorBoundaryRenderProps`
|
|
167
|
-
| `theme` | `ThemeProvider`, `useTheme`, `getInitialTheme`, `themeInitScript`, types: `ThemeMode`, `ResolvedTheme`
|
|
168
|
-
| `i18n` | `createI18n`, `I18nProvider`, `useI18n`, `useTranslate`, types: `Catalog`, `Messages`, `I18n`, `InterpolationValues`
|
|
169
|
-
| `logger` | `createLogger`, `consoleSink`, types: `Logger`, `LogEntry`, `LogLevel`, `LoggerSink`
|
|
170
|
-
| `telemetry` | `TelemetryProvider`, `useTelemetry`, `consoleTelemetryAdapter`, types: `TelemetryAdapter`, `TelemetryEvent`, `TelemetryUser`
|
|
171
|
-
| `feature-flags` | `FeatureFlagsProvider`, `useFeatureFlag`, `useFlagValue`, `createInMemoryFlags`, types: `FeatureFlagsAdapter`, `FlagValue`
|
|
172
|
-
| `share` | `share`, `isShareSupported`, types: `SharePayload`, `ShareResult`
|
|
173
|
-
| `utils` | `cn`, `formatCurrency`, `formatDate`, `formatDateTime`, `formatPhone`, `formatCPF`, `formatPercent`, `storage`
|
|
153
|
+
| Module | Exports |
|
|
154
|
+
| ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
155
|
+
| `components` | `Avatar`, `Badge`, `Breadcrumbs`, `Button`, `Card`, `Checkbox`, `ChipInput`, `ConfirmDialog`, `Container`, `DatePicker`, `Drawer`, `EmptyState`, `ErrorState`, `FileUpload`, `Form` (`FormSection`, `FormRow`, `FormActions`), `Grid`, `Input`, `Modal`, `Pagination`, `Progress`, `Radio`, `RadioGroup`, `SearchBar`, `Select`, `Skeleton`, `Spinner`, `Stack`, `Stepper`, `Switch`, `Table`, `Tabs`, `Textarea`, `Toast` (`ToastProvider`, `useToast`), `Tooltip`, `VirtualList` |
|
|
156
|
+
| `hooks` | `useDebounce`, `usePagination`, `useClientFilter`, `useMediaQuery`, `useOnline`, `useDocumentVisibility`, `useIntersectionObserver`, `useResizeObserver`, `useClipboard`, `useKeyboardShortcut`, `useBeforeInstallPrompt`, `useIdle`, `useGeolocation`, `useScrollLock`, `useFocusTrap`, `useStableCallback`, `useDeepMemo` |
|
|
157
|
+
| `http` | `createApiClient`, `parseResponse`, `uploadWithProgress`, `retry`, `generateIdempotencyKey`, `usePoll`, types: `ApiClient`, `ApiClientConfig`, `ApiError`, `RequestOptions`, `RetryOptions`, `UploadProgressEvent`, `UploadWithProgressOptions`, `UsePollOptions`, `UsePollResult` |
|
|
158
|
+
| `auth` _(peer: `zustand`)_ | `createAuthStore`, `AuthGuard`, `decodeJWT`, `isJWTExpired`, `lazyWithRetry`, `createRefreshQueue`, types: `AuthState`, `CreateAuthStoreOptions`, `AuthGuardProps`, `DecodedJWT`, `LazyWithRetryOptions` |
|
|
159
|
+
| `query` _(peer: `@tanstack/react-query`)_ | `QueryProvider`, `createQueryKeys`, `STALE_TIME`, `CACHE_TIME`, `REFETCH_TIME` |
|
|
160
|
+
| `forms` _(peer: `zod`, `react-hook-form`)_ | `validateForm`, `zodResolver`, `useZodForm`, `validateCPF`, `validateCNPJ`, `formatCEP`, `formatCNPJ`, `unmask`, `CPFInput`, `CNPJInput`, `PhoneInput`, `CEPInput`, `MoneyInput`, `useViaCEP` |
|
|
161
|
+
| `sse` | `createEventStream`, `useEventStream` |
|
|
162
|
+
| `ws` | `createWebSocket`, `useWebSocket` |
|
|
163
|
+
| `push` | `WebPushClient`, `WebPushUnsupportedError`, `WebPushPermissionDeniedError`, `usePushSubscription`, `urlBase64ToUint8Array`, `isPushSupported` |
|
|
164
|
+
| `sw` | `registerServiceWorker`, `skipWaiting`, `unregisterAllServiceWorkers`, `installPushHandler`, `installNotificationClickHandler`, `installSkipWaitingListener` |
|
|
165
|
+
| `audio` | `createAudioPlayer`, `playAudio`, `stopAudio`, `useAudio` |
|
|
166
|
+
| `offline` _(peer: `dexie`)_ | `createOfflineStore`, types: `OfflineStore`, `OfflineStoreConfig`, `ListOptions` |
|
|
167
|
+
| `error-boundary` | `ErrorBoundary`, `useErrorHandler`, types: `ErrorBoundaryProps`, `ErrorBoundaryRenderProps` |
|
|
168
|
+
| `theme` | `ThemeProvider`, `useTheme`, `getInitialTheme`, `themeInitScript`, types: `ThemeMode`, `ResolvedTheme` |
|
|
169
|
+
| `i18n` | `createI18n`, `I18nProvider`, `useI18n`, `useTranslate`, types: `Catalog`, `Messages`, `I18n`, `InterpolationValues` |
|
|
170
|
+
| `logger` | `createLogger`, `consoleSink`, types: `Logger`, `LogEntry`, `LogLevel`, `LoggerSink` |
|
|
171
|
+
| `telemetry` | `TelemetryProvider`, `useTelemetry`, `consoleTelemetryAdapter`, types: `TelemetryAdapter`, `TelemetryEvent`, `TelemetryUser` |
|
|
172
|
+
| `feature-flags` | `FeatureFlagsProvider`, `useFeatureFlag`, `useFlagValue`, `createInMemoryFlags`, types: `FeatureFlagsAdapter`, `FlagValue` |
|
|
173
|
+
| `share` | `share`, `isShareSupported`, types: `SharePayload`, `ShareResult` |
|
|
174
|
+
| `utils` | `cn`, `formatCurrency`, `formatDate`, `formatDateTime`, `formatPhone`, `formatCPF`, `formatPercent`, `storage` |
|
|
174
175
|
|
|
175
176
|
Full per-module docs in [`docs/`](./docs) (one markdown per module + draw.io diagrams in [`docs/diagrams/`](./docs/diagrams)).
|
|
176
177
|
|
|
@@ -531,6 +532,97 @@ export const eventKeys = createQueryKeys("event", {
|
|
|
531
532
|
// eventKeys.byId("42") === ["event", "42"]
|
|
532
533
|
```
|
|
533
534
|
|
|
535
|
+
### Form layout recipe
|
|
536
|
+
|
|
537
|
+
`Form` is a `<form>` wrapper with a built-in layout variant — pick `stack` for stacked fields (one per row), `inline` for a wrapping horizontal row, or `grid` for an `N`-column layout. Pair with `FormSection` (titled subgroup), `FormRow` (forces side-by-side inside a stacked form), and `FormActions` (footer button row).
|
|
538
|
+
|
|
539
|
+
**Stacked (default) — one field per row:**
|
|
540
|
+
|
|
541
|
+
```tsx
|
|
542
|
+
import { Form, FormActions, Input, Button } from "tempest-react-sdk";
|
|
543
|
+
|
|
544
|
+
<Form layout="stack" gap={4} onSubmit={onSubmit}>
|
|
545
|
+
<Input label="Nome" {...form.register("name")} />
|
|
546
|
+
<Input label="Email" type="email" {...form.register("email")} />
|
|
547
|
+
<Input label="Senha" type="password" {...form.register("password")} />
|
|
548
|
+
<FormActions align="end">
|
|
549
|
+
<Button type="submit">Criar conta</Button>
|
|
550
|
+
</FormActions>
|
|
551
|
+
</Form>;
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
**Grid — side-by-side columns:**
|
|
555
|
+
|
|
556
|
+
```tsx
|
|
557
|
+
import { Form, FormActions, Input, Button } from "tempest-react-sdk";
|
|
558
|
+
|
|
559
|
+
<Form layout="grid" columns={2} gap={4} onSubmit={onSubmit}>
|
|
560
|
+
<Input label="Nome" {...register("name")} />
|
|
561
|
+
<Input label="Sobrenome" {...register("last_name")} />
|
|
562
|
+
<Input label="Email" type="email" {...register("email")} />
|
|
563
|
+
<Input label="Telefone" {...register("phone")} />
|
|
564
|
+
<FormActions align="end" style={{ gridColumn: "1 / -1" }}>
|
|
565
|
+
<Button type="submit">Salvar</Button>
|
|
566
|
+
</FormActions>
|
|
567
|
+
</Form>;
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
`columns` accepts a number (`repeat(N, minmax(0, 1fr))`) or a raw `grid-template-columns` string (e.g. `"2fr 1fr"`).
|
|
571
|
+
|
|
572
|
+
**Inline — search-style filter row:**
|
|
573
|
+
|
|
574
|
+
```tsx
|
|
575
|
+
import { Form, Input, Select, Button } from "tempest-react-sdk";
|
|
576
|
+
|
|
577
|
+
<Form layout="inline" gap={2} onSubmit={onSubmit}>
|
|
578
|
+
<Input label="Buscar" placeholder="nome…" />
|
|
579
|
+
<Select label="Status" options={statusOptions} />
|
|
580
|
+
<Button type="submit">Filtrar</Button>
|
|
581
|
+
</Form>;
|
|
582
|
+
```
|
|
583
|
+
|
|
584
|
+
`inline` aligns children at `flex-end` and wraps — perfect for filter bars or short login forms.
|
|
585
|
+
|
|
586
|
+
**Sections + grouped rows:**
|
|
587
|
+
|
|
588
|
+
`FormSection` lets you nest layouts (e.g. a stacked form with a 3-column "Address" group inside):
|
|
589
|
+
|
|
590
|
+
```tsx
|
|
591
|
+
import { Form, FormSection, FormRow, FormActions, Input, Button } from "tempest-react-sdk";
|
|
592
|
+
|
|
593
|
+
<Form layout="stack" gap={5}>
|
|
594
|
+
<Input label="Email" {...register("email")} />
|
|
595
|
+
|
|
596
|
+
<FormSection title="Endereço" description="Usado para entrega" layout="grid" columns={3} gap={3}>
|
|
597
|
+
<Input label="CEP" {...register("cep")} />
|
|
598
|
+
<Input label="Cidade" {...register("city")} />
|
|
599
|
+
<Input label="UF" {...register("state")} />
|
|
600
|
+
<Input label="Rua" style={{ gridColumn: "1 / -1" }} {...register("street")} />
|
|
601
|
+
</FormSection>
|
|
602
|
+
|
|
603
|
+
<FormRow>
|
|
604
|
+
<Input label="Validade" placeholder="MM/AA" {...register("expiry")} />
|
|
605
|
+
<Input label="CVV" {...register("cvv")} />
|
|
606
|
+
</FormRow>
|
|
607
|
+
|
|
608
|
+
<FormActions align="between">
|
|
609
|
+
<Button variant="ghost" type="button" onClick={onCancel}>
|
|
610
|
+
Cancelar
|
|
611
|
+
</Button>
|
|
612
|
+
<Button type="submit">Salvar</Button>
|
|
613
|
+
</FormActions>
|
|
614
|
+
</Form>;
|
|
615
|
+
```
|
|
616
|
+
|
|
617
|
+
| Component | Default layout | What it does |
|
|
618
|
+
| ------------- | ------------------------- | --------------------------------------------------------------------------------------------- |
|
|
619
|
+
| `Form` | `stack` | `<form>` element + flex/grid container. `onSubmit` works as expected. |
|
|
620
|
+
| `FormSection` | `stack` body | Titled subgroup with its own independent layout / columns / gap. |
|
|
621
|
+
| `FormRow` | always horizontal | Forces a wrapping side-by-side row regardless of parent layout. Children share width equally. |
|
|
622
|
+
| `FormActions` | horizontal, `align="end"` | Footer button row. `align` accepts `start` / `center` / `end` / `between`. |
|
|
623
|
+
|
|
624
|
+
Both `Form` and `FormSection` accept `gap` (number → multiple of 4px, or any CSS length string) and `columns` (number → `repeat(N, minmax(0, 1fr))`, or any `grid-template-columns` string).
|
|
625
|
+
|
|
534
626
|
### Forms (zod) recipe
|
|
535
627
|
|
|
536
628
|
Three levels of integration — pick the one that fits the form complexity.
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { default as default_2 } from 'dexie';
|
|
|
6
6
|
import { DefaultOptions } from '@tanstack/react-query';
|
|
7
7
|
import { ErrorInfo } from 'react';
|
|
8
8
|
import { FieldValues } from 'react-hook-form';
|
|
9
|
+
import { FormHTMLAttributes } from 'react';
|
|
9
10
|
import { ForwardRefExoticComponent } from 'react';
|
|
10
11
|
import { HTMLAttributes } from 'react';
|
|
11
12
|
import { InputHTMLAttributes } from 'react';
|
|
@@ -735,6 +736,42 @@ export declare type FilterPredicate<T> = (item: T, search: string) => boolean;
|
|
|
735
736
|
|
|
736
737
|
export declare type FlagValue = boolean | string | number | null;
|
|
737
738
|
|
|
739
|
+
/**
|
|
740
|
+
* Form wrapper with a built-in layout variant. Replaces ad-hoc `<form>` +
|
|
741
|
+
* `<Stack>` / `<Grid>` boilerplate; pair with [[FormRow]], [[FormSection]],
|
|
742
|
+
* and [[FormActions]] for richer layouts.
|
|
743
|
+
*
|
|
744
|
+
* @example
|
|
745
|
+
* <Form layout="grid" columns={2} gap={4} onSubmit={form.handleSubmit(save)}>
|
|
746
|
+
* <Input label="Nome" {...form.register("name")} />
|
|
747
|
+
* <Input label="Email" {...form.register("email")} />
|
|
748
|
+
* <FormActions align="end">
|
|
749
|
+
* <Button type="submit">Salvar</Button>
|
|
750
|
+
* </FormActions>
|
|
751
|
+
* </Form>
|
|
752
|
+
*/
|
|
753
|
+
export declare const Form: ForwardRefExoticComponent<FormProps & RefAttributes<HTMLFormElement>>;
|
|
754
|
+
|
|
755
|
+
/**
|
|
756
|
+
* Footer button row for a form. Use inside (or after) [[Form]] / [[FormSection]].
|
|
757
|
+
*
|
|
758
|
+
* @example
|
|
759
|
+
* <FormActions align="end">
|
|
760
|
+
* <Button variant="ghost" onClick={onCancel}>Cancelar</Button>
|
|
761
|
+
* <Button type="submit" loading={form.formState.isSubmitting}>Salvar</Button>
|
|
762
|
+
* </FormActions>
|
|
763
|
+
*/
|
|
764
|
+
export declare function FormActions({ align, gap, className, style, children, ...props }: FormActionsProps): JSX.Element;
|
|
765
|
+
|
|
766
|
+
export declare type FormActionsAlign = "start" | "center" | "end" | "between";
|
|
767
|
+
|
|
768
|
+
export declare interface FormActionsProps extends HTMLAttributes<HTMLDivElement> {
|
|
769
|
+
/** Horizontal alignment of buttons. Default `end`. */
|
|
770
|
+
align?: FormActionsAlign;
|
|
771
|
+
/** Gap between buttons. Numbers map to a multiple of the 4px scale (default `2` → 8px). */
|
|
772
|
+
gap?: number | string;
|
|
773
|
+
}
|
|
774
|
+
|
|
738
775
|
/** Format an 11-digit Brazilian CEP-like value as `00000-000`. */
|
|
739
776
|
export declare function formatCEP(value: string): string;
|
|
740
777
|
|
|
@@ -789,6 +826,51 @@ export declare function formatPercent(value: number): string;
|
|
|
789
826
|
*/
|
|
790
827
|
export declare function formatPhone(value: string): string;
|
|
791
828
|
|
|
829
|
+
export declare type FormLayout = "stack" | "inline" | "grid";
|
|
830
|
+
|
|
831
|
+
export declare interface FormProps extends FormHTMLAttributes<HTMLFormElement>, LayoutProps {
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
/**
|
|
835
|
+
* Forces a horizontal row regardless of parent layout — useful for grouping
|
|
836
|
+
* two short fields side-by-side inside an otherwise stacked form (e.g. CEP +
|
|
837
|
+
* city, expiry month + year).
|
|
838
|
+
*
|
|
839
|
+
* @example
|
|
840
|
+
* <Form layout="stack">
|
|
841
|
+
* <FormRow>
|
|
842
|
+
* <Input label="CEP" />
|
|
843
|
+
* <Input label="Cidade" />
|
|
844
|
+
* </FormRow>
|
|
845
|
+
* <Input label="Endereço completo" />
|
|
846
|
+
* </Form>
|
|
847
|
+
*/
|
|
848
|
+
export declare function FormRow({ gap, className, style, children, ...props }: FormRowProps): JSX.Element;
|
|
849
|
+
|
|
850
|
+
export declare interface FormRowProps extends HTMLAttributes<HTMLDivElement> {
|
|
851
|
+
/** Gap between row items. Numbers map to a multiple of the 4px scale (default `3` → 12px). */
|
|
852
|
+
gap?: number | string;
|
|
853
|
+
}
|
|
854
|
+
|
|
855
|
+
/**
|
|
856
|
+
* Visually grouped subset of fields with an optional title and description.
|
|
857
|
+
* Has its own `layout`/`columns`/`gap` so subsets can stack while the parent
|
|
858
|
+
* grids (or vice versa).
|
|
859
|
+
*
|
|
860
|
+
* @example
|
|
861
|
+
* <FormSection title="Endereço" description="Usado para entrega" layout="grid" columns={3}>
|
|
862
|
+
* <Input label="CEP" />
|
|
863
|
+
* <Input label="Rua" />
|
|
864
|
+
* <Input label="Número" />
|
|
865
|
+
* </FormSection>
|
|
866
|
+
*/
|
|
867
|
+
export declare function FormSection({ title, description, layout, columns, gap, className, style, children, ...props }: FormSectionProps): JSX.Element;
|
|
868
|
+
|
|
869
|
+
export declare interface FormSectionProps extends Omit<HTMLAttributes<HTMLElement>, "title">, LayoutProps {
|
|
870
|
+
title?: ReactNode;
|
|
871
|
+
description?: ReactNode;
|
|
872
|
+
}
|
|
873
|
+
|
|
792
874
|
/**
|
|
793
875
|
* Generate an RFC4122 v4 idempotency key (UUID). Use as the value for an
|
|
794
876
|
* `Idempotency-Key` header on POST/PATCH requests that must not run twice.
|
|
@@ -963,6 +1045,15 @@ export declare interface KeyboardShortcut {
|
|
|
963
1045
|
|
|
964
1046
|
declare type KeyBuilder = (...args: any[]) => readonly unknown[];
|
|
965
1047
|
|
|
1048
|
+
declare interface LayoutProps {
|
|
1049
|
+
/** Field arrangement. `stack` stacks fields vertically, `inline` lines them up in a wrapping row, `grid` arranges them in `columns` equal-width tracks. Default `stack`. */
|
|
1050
|
+
layout?: FormLayout;
|
|
1051
|
+
/** Number of columns when `layout="grid"`, or a custom `grid-template-columns` value. Default `2`. */
|
|
1052
|
+
columns?: number | string;
|
|
1053
|
+
/** Gap between fields. Numbers map to a multiple of the 4px scale (default `4` → 16px). */
|
|
1054
|
+
gap?: number | string;
|
|
1055
|
+
}
|
|
1056
|
+
|
|
966
1057
|
/**
|
|
967
1058
|
* Wrap `React.lazy` with automatic retry. Common cause of failure:
|
|
968
1059
|
* deployed-then-cached `index.html` references chunk filenames that no
|
package/dist/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.tempest_avatar_3xMuZ{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--tempest-surface-2);color:var(--tempest-text);overflow:hidden;font-weight:600;text-transform:uppercase;flex-shrink:0;-webkit-user-select:none;user-select:none}.tempest_image_ieqGp{width:100%;height:100%;object-fit:cover}.tempest_xs_oSaLL{width:24px;height:24px;font-size:10px}.tempest_sm_sZ2bk{width:32px;height:32px;font-size:12px}.tempest_md_Fdkbz{width:40px;height:40px;font-size:14px}.tempest_lg_pTTUA{width:56px;height:56px;font-size:18px}.tempest_xl_mW58F{width:80px;height:80px;font-size:24px}.tempest_status_ISBnL{position:relative}.tempest_dot_Wgfo-{position:absolute;bottom:0;right:0;width:28%;height:28%;border-radius:50%;border:2px solid var(--tempest-bg)}.tempest_dot_Wgfo-.tempest_online_-aWoW{background-color:var(--tempest-success)}.tempest_dot_Wgfo-.tempest_offline_-StX3{background-color:var(--tempest-text-subtle)}.tempest_dot_Wgfo-.tempest_busy_TbwuF{background-color:var(--tempest-danger)}.tempest_badge_RsuMz{display:inline-flex;align-items:center;gap:var(--tempest-space-1);padding:2px 8px;border-radius:var(--tempest-radius-full);font-size:12px;font-weight:600;line-height:1.4}.tempest_neutral_lulSm{background-color:var(--tempest-surface-2);color:var(--tempest-text)}.tempest_success_u9JiS{background-color:var(--tempest-success-bg);color:var(--tempest-success)}.tempest_warning_nsGp-{background-color:var(--tempest-warning-bg);color:var(--tempest-warning)}.tempest_danger_PD2hz{background-color:var(--tempest-danger-bg);color:var(--tempest-danger)}.tempest_info_na6DQ{background-color:var(--tempest-info-bg);color:var(--tempest-info)}.tempest_nav_H4g6P{display:flex;align-items:center;gap:var(--tempest-space-1);font-size:13px;color:var(--tempest-text-muted);flex-wrap:wrap}.tempest_item_O4g3P{display:inline-flex;align-items:center;gap:var(--tempest-space-1)}.tempest_link_7WM67{color:var(--tempest-text-muted);text-decoration:none;padding:2px 4px;border-radius:var(--tempest-radius-sm)}.tempest_link_7WM67:hover{color:var(--tempest-text);background-color:var(--tempest-surface)}.tempest_current_JdlcS{color:var(--tempest-text);font-weight:600}.tempest_separator_zGWyJ{color:var(--tempest-text-subtle);margin:0 2px}.tempest_button_2ZuB7{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--tempest-space-2);border:1px solid transparent;border-radius:var(--tempest-radius-md);font-weight:600;line-height:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease;-webkit-user-select:none;user-select:none}.tempest_button_2ZuB7:focus-visible{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_button_2ZuB7:active:not(:disabled){transform:translateY(1px)}.tempest_button_2ZuB7:disabled{opacity:.55}.tempest_primary_s1sM6{background-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_primary_s1sM6:hover:not(:disabled){background-color:var(--tempest-primary-hover)}.tempest_secondary_R0waJ{background-color:var(--tempest-surface);color:var(--tempest-text);border-color:var(--tempest-border)}.tempest_secondary_R0waJ:hover:not(:disabled){background-color:var(--tempest-surface-2)}.tempest_danger_V4fX8{background-color:var(--tempest-danger);color:#fff}.tempest_danger_V4fX8:hover:not(:disabled){background-color:#991b1b}.tempest_ghost_1KINV{background-color:transparent;color:var(--tempest-text)}.tempest_ghost_1KINV:hover:not(:disabled){background-color:var(--tempest-surface)}.tempest_sm_NhG0g{height:32px;padding:0 var(--tempest-space-3);font-size:13px}.tempest_md_hH4h3{height:40px;padding:0 var(--tempest-space-4);font-size:14px}.tempest_lg_2plQf{height:48px;padding:0 var(--tempest-space-5);font-size:16px}.tempest_fullWidth_36oJT{width:100%}.tempest_loading_EQAt2 .tempest_hiddenText_hIiJ2{visibility:hidden}.tempest_spinner_ZExvW{position:absolute;animation:tempest_tempest-spin_UOSVC .8s linear infinite}@keyframes tempest_tempest-spin_UOSVC{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tempest_card_Cb1o4{background-color:var(--tempest-bg);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);padding:var(--tempest-space-5);box-shadow:var(--tempest-shadow-sm)}.tempest_padded_oOxwN{padding:var(--tempest-space-5)}.tempest_flush_aiDZi{padding:0}.tempest_header_PTXf2{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_mSgoo{margin:0;font-size:15px;font-weight:600;color:var(--tempest-text)}.tempest_body_W441Z{padding:var(--tempest-space-5)}.tempest_wrapper_rpthW{display:inline-flex;align-items:flex-start;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_rpthW.tempest_disabled_x7-eg{cursor:not-allowed;opacity:.6}.tempest_input_2kt-h{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_box_OCPee{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--tempest-border-strong);border-radius:var(--tempest-radius-sm);background-color:var(--tempest-bg);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.tempest_input_2kt-h:focus-visible+.tempest_box_OCPee{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_input_2kt-h:checked+.tempest_box_OCPee{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_input_2kt-h:indeterminate+.tempest_box_OCPee{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_labelWrap_Ktbp0{display:flex;flex-direction:column;gap:2px;line-height:1.3}.tempest_label_cwRtI{font-size:14px;color:var(--tempest-text)}.tempest_description_rMhG1{font-size:12px;color:var(--tempest-text-muted)}.tempest_wrapper_KR4-F{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_Mz-wX{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_field_iIBJw{display:flex;align-items:center;flex-wrap:wrap;gap:var(--tempest-space-1);padding:4px var(--tempest-space-2);min-height:40px;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);cursor:text}.tempest_field_iIBJw:focus-within{border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_wrapper_KR4-F.tempest_error_O9n-9 .tempest_field_iIBJw{border-color:var(--tempest-danger)}.tempest_chip_GEwrc{display:inline-flex;align-items:center;gap:4px;background-color:var(--tempest-surface-2);color:var(--tempest-text);padding:2px 4px 2px 8px;border-radius:var(--tempest-radius-full);font-size:12px;font-weight:600}.tempest_remove_JYDIq{background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%}.tempest_remove_JYDIq:hover{background-color:#0000001a}.tempest_input_frJmk{border:none;outline:none;background:transparent;flex:1;min-width:80px;font-size:14px;color:var(--tempest-text)}.tempest_helper_Yts53{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_llJGq{font-size:12px;color:var(--tempest-danger)}.tempest_overlay_dd9h1{position:fixed;inset:0;background-color:#0f172a80;display:flex;align-items:center;justify-content:center;padding:var(--tempest-space-4);z-index:var(--tempest-z-modal);animation:tempest_tempest-fade-in_DvgSp .15s ease-out}.tempest_dialog_ptM-K{background-color:var(--tempest-bg);color:var(--tempest-text);border-radius:var(--tempest-radius-lg);box-shadow:var(--tempest-shadow-lg);width:100%;max-height:90vh;display:flex;flex-direction:column;animation:tempest_tempest-modal-in_UoxQC .15s ease-out}.tempest_sm_K5k3W{max-width:400px}.tempest_md_gvyR7{max-width:560px}.tempest_lg_BgB1a{max-width:800px}.tempest_xl_MR-68{max-width:1024px}.tempest_header_ILG9i{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_A5OeE{margin:0;font-size:16px;font-weight:600}.tempest_close_-ER1C{background:none;border:none;color:var(--tempest-text-muted);padding:var(--tempest-space-1);border-radius:var(--tempest-radius-sm);display:flex;align-items:center;justify-content:center}.tempest_close_-ER1C:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_body_lVhql{padding:var(--tempest-space-5);overflow-y:auto}.tempest_footer_rro2w{display:flex;justify-content:flex-end;gap:var(--tempest-space-2);padding:var(--tempest-space-4) var(--tempest-space-5);border-top:1px solid var(--tempest-border)}@keyframes tempest_tempest-fade-in_DvgSp{0%{opacity:0}to{opacity:1}}@keyframes tempest_tempest-modal-in_UoxQC{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.tempest_wrapper_iHNUs{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_-OEBL{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_CTss-{color:var(--tempest-danger);margin-left:2px}.tempest_field_65yGJ{position:relative;display:flex;align-items:center}.tempest_input_WjT81{width:100%;height:40px;padding:0 var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.tempest_input_WjT81::placeholder{color:var(--tempest-text-subtle)}.tempest_input_WjT81:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_input_WjT81:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_hasLeftIcon_xYO-v{padding-left:36px}.tempest_hasRightIcon_C7uyr{padding-right:36px}.tempest_iconLeft_KrUhI,.tempest_iconRight_Ssr47{position:absolute;display:flex;align-items:center;color:var(--tempest-text-muted);pointer-events:none}.tempest_iconLeft_KrUhI{left:12px}.tempest_iconRight_Ssr47{right:12px}.tempest_error_VLISa .tempest_input_WjT81{border-color:var(--tempest-danger)}.tempest_error_VLISa .tempest_input_WjT81:focus{box-shadow:0 0 0 3px #b91c1c2e}.tempest_helper_7Vc-s{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_xz4xS{font-size:12px;color:var(--tempest-danger)}.tempest_overlay_hcG1G{position:fixed;inset:0;background-color:#0f172a73;z-index:var(--tempest-z-modal);animation:tempest_tempest-drawer-overlay_XFbxY .15s ease-out}.tempest_panel_wUX0N{position:fixed;top:0;bottom:0;background-color:var(--tempest-bg);color:var(--tempest-text);box-shadow:var(--tempest-shadow-lg);display:flex;flex-direction:column;z-index:calc(var(--tempest-z-modal) + 1);animation-duration:.22s;animation-timing-function:ease-out;animation-fill-mode:both}.tempest_right_-oX-6{right:0;width:min(420px,92vw);animation-name:tempest_tempest-drawer-in-right_pWYHv}.tempest_left_xi3nD{left:0;width:min(420px,92vw);animation-name:tempest_tempest-drawer-in-left_o7JSb}.tempest_top_7rGCn{inset:0 0 auto;height:min(70vh,480px);animation-name:tempest_tempest-drawer-in-top_kn6AF}.tempest_bottom_zd-25{inset:auto 0 0;height:min(70vh,480px);animation-name:tempest_tempest-drawer-in-bottom_0x3u7}.tempest_header_sYoP1{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_LqUOu{margin:0;font-size:16px;font-weight:600}.tempest_close_tYPhU{background:none;border:none;color:var(--tempest-text-muted);padding:var(--tempest-space-1);border-radius:var(--tempest-radius-sm);display:flex;align-items:center}.tempest_close_tYPhU:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_body_aV9FG{padding:var(--tempest-space-5);overflow-y:auto;flex:1}.tempest_footer_AuvUP{display:flex;justify-content:flex-end;gap:var(--tempest-space-2);padding:var(--tempest-space-4) var(--tempest-space-5);border-top:1px solid var(--tempest-border)}@keyframes tempest_tempest-drawer-overlay_XFbxY{0%{opacity:0}to{opacity:1}}@keyframes tempest_tempest-drawer-in-right_pWYHv{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes tempest_tempest-drawer-in-left_o7JSb{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes tempest_tempest-drawer-in-top_kn6AF{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes tempest_tempest-drawer-in-bottom_0x3u7{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tempest_wrapper_gzyTd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--tempest-space-3);padding:var(--tempest-space-8) var(--tempest-space-4);text-align:center;color:var(--tempest-text-muted)}.tempest_icon_qVCyh{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--tempest-radius-full);background-color:var(--tempest-surface);color:var(--tempest-text-muted)}.tempest_title_xPfUf{margin:0;font-size:16px;font-weight:600;color:var(--tempest-text)}.tempest_description_oWwH1{margin:0;font-size:14px;color:var(--tempest-text-muted);max-width:480px}.tempest_action_dqxw1{margin-top:var(--tempest-space-2)}.tempest_wrapper_luRyF{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--tempest-space-3);padding:var(--tempest-space-8) var(--tempest-space-4);text-align:center}.tempest_icon_dEdBl{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--tempest-radius-full);background-color:var(--tempest-danger-bg);color:var(--tempest-danger)}.tempest_title_StutD{margin:0;font-size:16px;font-weight:600;color:var(--tempest-text)}.tempest_description_A2XCb{margin:0;font-size:14px;color:var(--tempest-text-muted);max-width:480px}.tempest_action_vm1LC{margin-top:var(--tempest-space-2)}.tempest_wrapper_E0qHs{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_lbMkx{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_dropzone_jqua0{border:2px dashed var(--tempest-border-strong);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-surface);padding:var(--tempest-space-6) var(--tempest-space-5);text-align:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.tempest_dropzone_jqua0:hover{border-color:var(--tempest-primary)}.tempest_dropzone_jqua0.tempest_active_CG9Uk{border-color:var(--tempest-primary);background-color:#0066ff0f}.tempest_dropzone_jqua0.tempest_disabled_WNUUl{opacity:.6;cursor:not-allowed}.tempest_icon_i9fGH{color:var(--tempest-text-muted);margin-bottom:var(--tempest-space-2)}.tempest_title_bTVFl{font-weight:600;color:var(--tempest-text);font-size:14px;margin:0}.tempest_subtitle_S54OV{color:var(--tempest-text-muted);font-size:12px;margin:var(--tempest-space-1) 0 0}.tempest_files_WljYm{margin-top:var(--tempest-space-3);display:flex;flex-direction:column;gap:var(--tempest-space-2)}.tempest_file_Lp-dR{display:flex;align-items:center;justify-content:space-between;gap:var(--tempest-space-3);padding:var(--tempest-space-2) var(--tempest-space-3);background-color:var(--tempest-bg);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);font-size:13px}.tempest_fileMeta_LTnN2{color:var(--tempest-text-muted);font-size:11px}.tempest_remove_jskra{background:none;border:none;color:var(--tempest-text-muted);cursor:pointer;padding:4px;border-radius:var(--tempest-radius-sm)}.tempest_remove_jskra:hover{background-color:var(--tempest-surface);color:var(--tempest-danger)}.tempest_hidden_ReEq6{display:none}.tempest_container_fJfOt{margin-left:auto;margin-right:auto;padding-left:var(--tempest-space-4);padding-right:var(--tempest-space-4);width:100%}.tempest_container_fJfOt.tempest_sm_k8D4-{max-width:640px}.tempest_container_fJfOt.tempest_md_EnpYy{max-width:768px}.tempest_container_fJfOt.tempest_lg_UU-Ig{max-width:1024px}.tempest_container_fJfOt.tempest_xl_2TEWj{max-width:1280px}.tempest_container_fJfOt.tempest_full_l8bvG{max-width:100%}.tempest_stack_sxR8u{display:flex}.tempest_stack_sxR8u.tempest_vertical_2TMf5{flex-direction:column}.tempest_stack_sxR8u.tempest_horizontal_r7-c-{flex-direction:row}.tempest_stack_sxR8u.tempest_center_EDSAh{align-items:center}.tempest_stack_sxR8u.tempest_start_ucQ-K{align-items:flex-start}.tempest_stack_sxR8u.tempest_end_pnKlF{align-items:flex-end}.tempest_stack_sxR8u.tempest_stretch_pX6l7{align-items:stretch}.tempest_stack_sxR8u.tempest_justifyStart_lHYsS{justify-content:flex-start}.tempest_stack_sxR8u.tempest_justifyCenter_JH2m6{justify-content:center}.tempest_stack_sxR8u.tempest_justifyEnd_EBisT{justify-content:flex-end}.tempest_stack_sxR8u.tempest_justifyBetween_mAJwT{justify-content:space-between}.tempest_stack_sxR8u.tempest_wrap_-xxOh{flex-wrap:wrap}.tempest_grid_o-JIX{display:grid;width:100%}.tempest_wrapper_cRGQm{display:flex;align-items:center;justify-content:space-between;gap:var(--tempest-space-3);padding:var(--tempest-space-3) 0;font-size:13px;color:var(--tempest-text-muted);flex-wrap:wrap}.tempest_controls_fdL-y{display:flex;align-items:center;gap:var(--tempest-space-1)}.tempest_page_WjG0l{min-width:32px;height:32px;padding:0 var(--tempest-space-2);border:1px solid var(--tempest-border);background-color:var(--tempest-bg);color:var(--tempest-text);border-radius:var(--tempest-radius-md);font-size:13px;font-weight:500}.tempest_page_WjG0l:hover:not(:disabled){background-color:var(--tempest-surface)}.tempest_page_WjG0l:disabled{opacity:.5}.tempest_active_1kqsJ{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_active_1kqsJ:hover{background-color:var(--tempest-primary-hover)}.tempest_ellipsis_V294k{padding:0 var(--tempest-space-2);color:var(--tempest-text-subtle)}.tempest_sizeSelect_ZayTo{height:32px;padding:0 var(--tempest-space-2);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:13px}.tempest_wrapper_BQek1{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_bar_uC-0x{width:100%;height:8px;background-color:var(--tempest-surface-2);border-radius:var(--tempest-radius-full);overflow:hidden}.tempest_fill_vmg7x{height:100%;background-color:var(--tempest-primary);border-radius:inherit;transition:width .18s ease}.tempest_fill_vmg7x.tempest_success_gWJ8U{background-color:var(--tempest-success)}.tempest_fill_vmg7x.tempest_warning_DGkPO{background-color:var(--tempest-warning)}.tempest_fill_vmg7x.tempest_danger_gfwHh{background-color:var(--tempest-danger)}.tempest_indeterminate_HojUj .tempest_fill_vmg7x{width:30%!important;animation:tempest_tempest-progress-loop_0nEdF 1.4s ease-in-out infinite}.tempest_label_qqHJM{font-size:12px;color:var(--tempest-text-muted);display:flex;justify-content:space-between}@keyframes tempest_tempest-progress-loop_0nEdF{0%{transform:translate(-100%)}to{transform:translate(360%)}}.tempest_wrapper_P-gFm{display:inline-flex;align-items:flex-start;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_P-gFm.tempest_disabled_0-cna{cursor:not-allowed;opacity:.6}.tempest_input_7R8ZN{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_dot_P7ejP{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--tempest-border-strong);border-radius:50%;background-color:var(--tempest-bg);display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease}.tempest_dot_P7ejP:after{content:"";width:10px;height:10px;border-radius:50%;background-color:var(--tempest-primary);transform:scale(0);transition:transform .15s ease}.tempest_input_7R8ZN:checked+.tempest_dot_P7ejP{border-color:var(--tempest-primary)}.tempest_input_7R8ZN:checked+.tempest_dot_P7ejP:after{transform:scale(1)}.tempest_input_7R8ZN:focus-visible+.tempest_dot_P7ejP{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_labelWrap_iQ1HR{display:flex;flex-direction:column;gap:2px;line-height:1.3}.tempest_label_vAFIP{font-size:14px;color:var(--tempest-text)}.tempest_description_bEB8u{font-size:12px;color:var(--tempest-text-muted)}.tempest_group_oi329{display:flex;flex-direction:column;gap:var(--tempest-space-2)}.tempest_group_oi329.tempest_horizontal_1Ovgu{flex-direction:row;gap:var(--tempest-space-4);flex-wrap:wrap}.tempest_wrapper_dKXJJ{position:relative;width:100%;max-width:360px}.tempest_input_m0lPc{width:100%;height:40px;padding:0 36px;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.tempest_input_m0lPc:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_iconLeft_030-U,.tempest_clear_nb6lG{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--tempest-text-muted)}.tempest_iconLeft_030-U{left:12px;pointer-events:none}.tempest_clear_nb6lG{right:8px;width:24px;height:24px;border:none;background:transparent;border-radius:var(--tempest-radius-full)}.tempest_clear_nb6lG:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_wrapper_KS2K3{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_Lmgos{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_PvDVJ{color:var(--tempest-danger);margin-left:2px}.tempest_field_h-wBy{position:relative;display:flex;align-items:center}.tempest_select_cjdcr{width:100%;height:40px;padding:0 36px 0 var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;appearance:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.tempest_select_cjdcr:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_select_cjdcr:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_caret_MdCao{position:absolute;right:12px;pointer-events:none;color:var(--tempest-text-muted)}.tempest_error_sw9MU .tempest_select_cjdcr{border-color:var(--tempest-danger)}.tempest_helper_frosK{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_-zd6i{font-size:12px;color:var(--tempest-danger)}.tempest_skeleton_CB4uF{display:block;background:linear-gradient(90deg,var(--tempest-surface) 0%,var(--tempest-surface-2) 50%,var(--tempest-surface) 100%);background-size:200% 100%;border-radius:var(--tempest-radius-md);animation:tempest_tempest-skeleton_H5Y8e 1.4s ease-in-out infinite}.tempest_text_-A8IF{height:14px;border-radius:var(--tempest-radius-sm)}.tempest_circle_DYcl8{border-radius:50%}@keyframes tempest_tempest-skeleton_H5Y8e{0%{background-position:200% 0}to{background-position:-200% 0}}.tempest_spinner_GpFZS{display:inline-block;border:2px solid var(--tempest-surface-2);border-top-color:var(--tempest-primary);border-radius:50%;animation:tempest_tempest-spinner_wKVCY .7s linear infinite}.tempest_sm_3sIoD{width:14px;height:14px}.tempest_md_M2sPj{width:20px;height:20px}.tempest_lg_IxTw2{width:32px;height:32px}@keyframes tempest_tempest-spinner_wKVCY{to{transform:rotate(360deg)}}.tempest_stepper_w3qjQ{display:flex;align-items:flex-start;gap:var(--tempest-space-2);width:100%}.tempest_stepper_w3qjQ.tempest_vertical_d4mOs{flex-direction:column;align-items:stretch}.tempest_step_s2nqL{display:flex;align-items:center;gap:var(--tempest-space-2);flex:1}.tempest_dot_d1bSL{width:28px;height:28px;border-radius:50%;border:2px solid var(--tempest-border-strong);background-color:var(--tempest-bg);color:var(--tempest-text-muted);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.tempest_step_s2nqL.tempest_completed_gcFHM .tempest_dot_d1bSL{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_step_s2nqL.tempest_active_kL-CH .tempest_dot_d1bSL{border-color:var(--tempest-primary);color:var(--tempest-primary)}.tempest_label_8irAI{font-size:13px;color:var(--tempest-text-muted);font-weight:600}.tempest_step_s2nqL.tempest_active_kL-CH .tempest_label_8irAI,.tempest_step_s2nqL.tempest_completed_gcFHM .tempest_label_8irAI{color:var(--tempest-text)}.tempest_connector_lyeWp{flex:1;height:2px;background-color:var(--tempest-border);margin:0 var(--tempest-space-1)}.tempest_connector_lyeWp.tempest_completed_gcFHM{background-color:var(--tempest-primary)}.tempest_stepper_w3qjQ.tempest_vertical_d4mOs .tempest_connector_lyeWp{width:2px;height:24px;margin:0 0 0 13px}.tempest_wrapper_kudO9{display:inline-flex;align-items:center;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_kudO9.tempest_disabled_2aZ0V{cursor:not-allowed;opacity:.6}.tempest_input_5BPNu{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_track_7ObdZ{width:36px;height:20px;background-color:var(--tempest-border-strong);border-radius:var(--tempest-radius-full);position:relative;transition:background-color .18s ease;flex-shrink:0}.tempest_thumb_-FTeK{position:absolute;top:2px;left:2px;width:16px;height:16px;background-color:#fff;border-radius:50%;box-shadow:var(--tempest-shadow-sm);transition:transform .18s ease}.tempest_input_5BPNu:checked+.tempest_track_7ObdZ{background-color:var(--tempest-primary)}.tempest_input_5BPNu:checked+.tempest_track_7ObdZ .tempest_thumb_-FTeK{transform:translate(16px)}.tempest_input_5BPNu:focus-visible+.tempest_track_7ObdZ{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_label_LrH7V{font-size:14px;color:var(--tempest-text)}.tempest_scroll_unrJp{width:100%;overflow-x:auto;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-bg)}.tempest_table_Dkosn{width:100%;border-collapse:collapse;font-size:14px}.tempest_th_PNuEx,.tempest_td_jv9tA{padding:var(--tempest-space-3) var(--tempest-space-4);text-align:left;border-bottom:1px solid var(--tempest-border)}.tempest_th_PNuEx{background-color:var(--tempest-surface);color:var(--tempest-text-muted);font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.tempest_tr_7UG8J:last-child .tempest_td_jv9tA{border-bottom:none}.tempest_tr_7UG8J.tempest_clickable_B6Si-{cursor:pointer}.tempest_tr_7UG8J.tempest_clickable_B6Si-:hover{background-color:var(--tempest-surface)}.tempest_alignRight_9hY0G{text-align:right}.tempest_alignCenter_YiUQy{text-align:center}.tempest_emptyRow_kdMiv{padding:var(--tempest-space-6);text-align:center;color:var(--tempest-text-muted)}.tempest_tablist_WR6ag{display:flex;gap:var(--tempest-space-1);border-bottom:1px solid var(--tempest-border);overflow-x:auto}.tempest_tab_IdDYc{background:transparent;border:none;padding:var(--tempest-space-3) var(--tempest-space-4);font-size:14px;font-weight:600;color:var(--tempest-text-muted);cursor:pointer;position:relative;white-space:nowrap;transition:color .15s ease}.tempest_tab_IdDYc:hover:not(:disabled){color:var(--tempest-text)}.tempest_tab_IdDYc.tempest_active_PTNtG{color:var(--tempest-primary)}.tempest_tab_IdDYc.tempest_active_PTNtG:after{content:"";position:absolute;left:var(--tempest-space-3);right:var(--tempest-space-3);bottom:-1px;height:2px;background-color:var(--tempest-primary);border-radius:var(--tempest-radius-sm) var(--tempest-radius-sm) 0 0}.tempest_tab_IdDYc:disabled{opacity:.5;cursor:not-allowed}.tempest_panel_08i9c{padding:var(--tempest-space-4) 0}.tempest_pill_lGuqn .tempest_tab_IdDYc{border-radius:var(--tempest-radius-full);padding:6px var(--tempest-space-3);font-size:13px}.tempest_pill_lGuqn .tempest_tab_IdDYc.tempest_active_PTNtG:after{display:none}.tempest_pill_lGuqn .tempest_tab_IdDYc.tempest_active_PTNtG{background-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_pill_lGuqn.tempest_tablist_WR6ag{border-bottom:none}.tempest_wrapper_C0gfg{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_cWLXP{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_rDZXE{color:var(--tempest-danger);margin-left:2px}.tempest_textarea_Z-y6g{width:100%;min-height:96px;padding:var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;font-family:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.tempest_textarea_Z-y6g::placeholder{color:var(--tempest-text-subtle)}.tempest_textarea_Z-y6g:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_textarea_Z-y6g:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_error_NWC9f .tempest_textarea_Z-y6g{border-color:var(--tempest-danger)}.tempest_helper_gedut{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_ey07q{font-size:12px;color:var(--tempest-danger)}.tempest_trigger_Dmc5E{display:inline-flex;position:relative}.tempest_bubble_TPGHB{position:absolute;z-index:var(--tempest-z-dropdown);background-color:#11151c;color:#fff;padding:4px 8px;border-radius:var(--tempest-radius-sm);font-size:12px;white-space:nowrap;pointer-events:none;box-shadow:var(--tempest-shadow-md);animation:tempest_tempest-tooltip-in_csYeZ .12s ease-out}.tempest_top_m2tnn{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tempest_bottom_9Twz4{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tempest_left_UPdrG{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.tempest_right_CV--T{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}@keyframes tempest_tempest-tooltip-in_csYeZ{0%{opacity:0;transform:scale(.95) translate(var(--tempest-tx, 0),var(--tempest-ty, 0))}to{opacity:1}}.tempest_container_x4-Qm{position:fixed;top:var(--tempest-space-4);right:var(--tempest-space-4);display:flex;flex-direction:column;gap:var(--tempest-space-2);z-index:var(--tempest-z-toast);pointer-events:none}.tempest_toast_FLdHz{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--tempest-space-3);padding:var(--tempest-space-3) var(--tempest-space-4);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);border:1px solid var(--tempest-border);box-shadow:var(--tempest-shadow-md);min-width:280px;max-width:420px;animation:tempest_tempest-toast-in_E2d-A .18s ease-out}.tempest_success_Oy694{border-left:4px solid var(--tempest-success)}.tempest_warning_84GC8{border-left:4px solid var(--tempest-warning)}.tempest_error_hrQAA{border-left:4px solid var(--tempest-danger)}.tempest_info_eq5bQ{border-left:4px solid var(--tempest-info)}.tempest_title_-H6R2{font-weight:600;font-size:14px;color:var(--tempest-text);margin:0}.tempest_description_-QwfC{font-size:13px;color:var(--tempest-text-muted);margin:2px 0 0}.tempest_close_i10-s{margin-left:auto;background:none;border:none;color:var(--tempest-text-muted);padding:4px;border-radius:var(--tempest-radius-sm);display:flex;align-items:center}.tempest_close_i10-s:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}@keyframes tempest_tempest-toast-in_E2d-A{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.tempest_scroll_8Giwl{position:relative;overflow:auto;width:100%}.tempest_spacer_P3Pvl{position:relative;width:100%}.tempest_row_Ff0VU{position:absolute;left:0;right:0}
|
|
1
|
+
.tempest_avatar_3xMuZ{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--tempest-surface-2);color:var(--tempest-text);overflow:hidden;font-weight:600;text-transform:uppercase;flex-shrink:0;-webkit-user-select:none;user-select:none}.tempest_image_ieqGp{width:100%;height:100%;object-fit:cover}.tempest_xs_oSaLL{width:24px;height:24px;font-size:10px}.tempest_sm_sZ2bk{width:32px;height:32px;font-size:12px}.tempest_md_Fdkbz{width:40px;height:40px;font-size:14px}.tempest_lg_pTTUA{width:56px;height:56px;font-size:18px}.tempest_xl_mW58F{width:80px;height:80px;font-size:24px}.tempest_status_ISBnL{position:relative}.tempest_dot_Wgfo-{position:absolute;bottom:0;right:0;width:28%;height:28%;border-radius:50%;border:2px solid var(--tempest-bg)}.tempest_dot_Wgfo-.tempest_online_-aWoW{background-color:var(--tempest-success)}.tempest_dot_Wgfo-.tempest_offline_-StX3{background-color:var(--tempest-text-subtle)}.tempest_dot_Wgfo-.tempest_busy_TbwuF{background-color:var(--tempest-danger)}.tempest_badge_RsuMz{display:inline-flex;align-items:center;gap:var(--tempest-space-1);padding:2px 8px;border-radius:var(--tempest-radius-full);font-size:12px;font-weight:600;line-height:1.4}.tempest_neutral_lulSm{background-color:var(--tempest-surface-2);color:var(--tempest-text)}.tempest_success_u9JiS{background-color:var(--tempest-success-bg);color:var(--tempest-success)}.tempest_warning_nsGp-{background-color:var(--tempest-warning-bg);color:var(--tempest-warning)}.tempest_danger_PD2hz{background-color:var(--tempest-danger-bg);color:var(--tempest-danger)}.tempest_info_na6DQ{background-color:var(--tempest-info-bg);color:var(--tempest-info)}.tempest_nav_H4g6P{display:flex;align-items:center;gap:var(--tempest-space-1);font-size:13px;color:var(--tempest-text-muted);flex-wrap:wrap}.tempest_item_O4g3P{display:inline-flex;align-items:center;gap:var(--tempest-space-1)}.tempest_link_7WM67{color:var(--tempest-text-muted);text-decoration:none;padding:2px 4px;border-radius:var(--tempest-radius-sm)}.tempest_link_7WM67:hover{color:var(--tempest-text);background-color:var(--tempest-surface)}.tempest_current_JdlcS{color:var(--tempest-text);font-weight:600}.tempest_separator_zGWyJ{color:var(--tempest-text-subtle);margin:0 2px}.tempest_button_2ZuB7{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--tempest-space-2);border:1px solid transparent;border-radius:var(--tempest-radius-md);font-weight:600;line-height:1;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .05s ease;-webkit-user-select:none;user-select:none}.tempest_button_2ZuB7:focus-visible{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_button_2ZuB7:active:not(:disabled){transform:translateY(1px)}.tempest_button_2ZuB7:disabled{opacity:.55}.tempest_primary_s1sM6{background-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_primary_s1sM6:hover:not(:disabled){background-color:var(--tempest-primary-hover)}.tempest_secondary_R0waJ{background-color:var(--tempest-surface);color:var(--tempest-text);border-color:var(--tempest-border)}.tempest_secondary_R0waJ:hover:not(:disabled){background-color:var(--tempest-surface-2)}.tempest_danger_V4fX8{background-color:var(--tempest-danger);color:#fff}.tempest_danger_V4fX8:hover:not(:disabled){background-color:#991b1b}.tempest_ghost_1KINV{background-color:transparent;color:var(--tempest-text)}.tempest_ghost_1KINV:hover:not(:disabled){background-color:var(--tempest-surface)}.tempest_sm_NhG0g{height:32px;padding:0 var(--tempest-space-3);font-size:13px}.tempest_md_hH4h3{height:40px;padding:0 var(--tempest-space-4);font-size:14px}.tempest_lg_2plQf{height:48px;padding:0 var(--tempest-space-5);font-size:16px}.tempest_fullWidth_36oJT{width:100%}.tempest_loading_EQAt2 .tempest_hiddenText_hIiJ2{visibility:hidden}.tempest_spinner_ZExvW{position:absolute;animation:tempest_tempest-spin_UOSVC .8s linear infinite}@keyframes tempest_tempest-spin_UOSVC{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tempest_card_Cb1o4{background-color:var(--tempest-bg);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);padding:var(--tempest-space-5);box-shadow:var(--tempest-shadow-sm)}.tempest_padded_oOxwN{padding:var(--tempest-space-5)}.tempest_flush_aiDZi{padding:0}.tempest_header_PTXf2{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_mSgoo{margin:0;font-size:15px;font-weight:600;color:var(--tempest-text)}.tempest_body_W441Z{padding:var(--tempest-space-5)}.tempest_wrapper_rpthW{display:inline-flex;align-items:flex-start;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_rpthW.tempest_disabled_x7-eg{cursor:not-allowed;opacity:.6}.tempest_input_2kt-h{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_box_OCPee{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--tempest-border-strong);border-radius:var(--tempest-radius-sm);background-color:var(--tempest-bg);display:inline-flex;align-items:center;justify-content:center;color:transparent;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.tempest_input_2kt-h:focus-visible+.tempest_box_OCPee{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_input_2kt-h:checked+.tempest_box_OCPee{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_input_2kt-h:indeterminate+.tempest_box_OCPee{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_labelWrap_Ktbp0{display:flex;flex-direction:column;gap:2px;line-height:1.3}.tempest_label_cwRtI{font-size:14px;color:var(--tempest-text)}.tempest_description_rMhG1{font-size:12px;color:var(--tempest-text-muted)}.tempest_wrapper_KR4-F{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_Mz-wX{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_field_iIBJw{display:flex;align-items:center;flex-wrap:wrap;gap:var(--tempest-space-1);padding:4px var(--tempest-space-2);min-height:40px;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);cursor:text}.tempest_field_iIBJw:focus-within{border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_wrapper_KR4-F.tempest_error_O9n-9 .tempest_field_iIBJw{border-color:var(--tempest-danger)}.tempest_chip_GEwrc{display:inline-flex;align-items:center;gap:4px;background-color:var(--tempest-surface-2);color:var(--tempest-text);padding:2px 4px 2px 8px;border-radius:var(--tempest-radius-full);font-size:12px;font-weight:600}.tempest_remove_JYDIq{background:none;border:none;color:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%}.tempest_remove_JYDIq:hover{background-color:#0000001a}.tempest_input_frJmk{border:none;outline:none;background:transparent;flex:1;min-width:80px;font-size:14px;color:var(--tempest-text)}.tempest_helper_Yts53{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_llJGq{font-size:12px;color:var(--tempest-danger)}.tempest_overlay_dd9h1{position:fixed;inset:0;background-color:#0f172a80;display:flex;align-items:center;justify-content:center;padding:var(--tempest-space-4);z-index:var(--tempest-z-modal);animation:tempest_tempest-fade-in_DvgSp .15s ease-out}.tempest_dialog_ptM-K{background-color:var(--tempest-bg);color:var(--tempest-text);border-radius:var(--tempest-radius-lg);box-shadow:var(--tempest-shadow-lg);width:100%;max-height:90vh;display:flex;flex-direction:column;animation:tempest_tempest-modal-in_UoxQC .15s ease-out}.tempest_sm_K5k3W{max-width:400px}.tempest_md_gvyR7{max-width:560px}.tempest_lg_BgB1a{max-width:800px}.tempest_xl_MR-68{max-width:1024px}.tempest_header_ILG9i{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_A5OeE{margin:0;font-size:16px;font-weight:600}.tempest_close_-ER1C{background:none;border:none;color:var(--tempest-text-muted);padding:var(--tempest-space-1);border-radius:var(--tempest-radius-sm);display:flex;align-items:center;justify-content:center}.tempest_close_-ER1C:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_body_lVhql{padding:var(--tempest-space-5);overflow-y:auto}.tempest_footer_rro2w{display:flex;justify-content:flex-end;gap:var(--tempest-space-2);padding:var(--tempest-space-4) var(--tempest-space-5);border-top:1px solid var(--tempest-border)}@keyframes tempest_tempest-fade-in_DvgSp{0%{opacity:0}to{opacity:1}}@keyframes tempest_tempest-modal-in_UoxQC{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.tempest_wrapper_iHNUs{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_-OEBL{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_CTss-{color:var(--tempest-danger);margin-left:2px}.tempest_field_65yGJ{position:relative;display:flex;align-items:center}.tempest_input_WjT81{width:100%;height:40px;padding:0 var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.tempest_input_WjT81::placeholder{color:var(--tempest-text-subtle)}.tempest_input_WjT81:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_input_WjT81:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_hasLeftIcon_xYO-v{padding-left:36px}.tempest_hasRightIcon_C7uyr{padding-right:36px}.tempest_iconLeft_KrUhI,.tempest_iconRight_Ssr47{position:absolute;display:flex;align-items:center;color:var(--tempest-text-muted);pointer-events:none}.tempest_iconLeft_KrUhI{left:12px}.tempest_iconRight_Ssr47{right:12px}.tempest_error_VLISa .tempest_input_WjT81{border-color:var(--tempest-danger)}.tempest_error_VLISa .tempest_input_WjT81:focus{box-shadow:0 0 0 3px #b91c1c2e}.tempest_helper_7Vc-s{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_xz4xS{font-size:12px;color:var(--tempest-danger)}.tempest_overlay_hcG1G{position:fixed;inset:0;background-color:#0f172a73;z-index:var(--tempest-z-modal);animation:tempest_tempest-drawer-overlay_XFbxY .15s ease-out}.tempest_panel_wUX0N{position:fixed;top:0;bottom:0;background-color:var(--tempest-bg);color:var(--tempest-text);box-shadow:var(--tempest-shadow-lg);display:flex;flex-direction:column;z-index:calc(var(--tempest-z-modal) + 1);animation-duration:.22s;animation-timing-function:ease-out;animation-fill-mode:both}.tempest_right_-oX-6{right:0;width:min(420px,92vw);animation-name:tempest_tempest-drawer-in-right_pWYHv}.tempest_left_xi3nD{left:0;width:min(420px,92vw);animation-name:tempest_tempest-drawer-in-left_o7JSb}.tempest_top_7rGCn{inset:0 0 auto;height:min(70vh,480px);animation-name:tempest_tempest-drawer-in-top_kn6AF}.tempest_bottom_zd-25{inset:auto 0 0;height:min(70vh,480px);animation-name:tempest_tempest-drawer-in-bottom_0x3u7}.tempest_header_sYoP1{display:flex;align-items:center;justify-content:space-between;padding:var(--tempest-space-4) var(--tempest-space-5);border-bottom:1px solid var(--tempest-border)}.tempest_title_LqUOu{margin:0;font-size:16px;font-weight:600}.tempest_close_tYPhU{background:none;border:none;color:var(--tempest-text-muted);padding:var(--tempest-space-1);border-radius:var(--tempest-radius-sm);display:flex;align-items:center}.tempest_close_tYPhU:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_body_aV9FG{padding:var(--tempest-space-5);overflow-y:auto;flex:1}.tempest_footer_AuvUP{display:flex;justify-content:flex-end;gap:var(--tempest-space-2);padding:var(--tempest-space-4) var(--tempest-space-5);border-top:1px solid var(--tempest-border)}@keyframes tempest_tempest-drawer-overlay_XFbxY{0%{opacity:0}to{opacity:1}}@keyframes tempest_tempest-drawer-in-right_pWYHv{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes tempest_tempest-drawer-in-left_o7JSb{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes tempest_tempest-drawer-in-top_kn6AF{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes tempest_tempest-drawer-in-bottom_0x3u7{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tempest_wrapper_gzyTd{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--tempest-space-3);padding:var(--tempest-space-8) var(--tempest-space-4);text-align:center;color:var(--tempest-text-muted)}.tempest_icon_qVCyh{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--tempest-radius-full);background-color:var(--tempest-surface);color:var(--tempest-text-muted)}.tempest_title_xPfUf{margin:0;font-size:16px;font-weight:600;color:var(--tempest-text)}.tempest_description_oWwH1{margin:0;font-size:14px;color:var(--tempest-text-muted);max-width:480px}.tempest_action_dqxw1{margin-top:var(--tempest-space-2)}.tempest_wrapper_luRyF{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--tempest-space-3);padding:var(--tempest-space-8) var(--tempest-space-4);text-align:center}.tempest_icon_dEdBl{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--tempest-radius-full);background-color:var(--tempest-danger-bg);color:var(--tempest-danger)}.tempest_title_StutD{margin:0;font-size:16px;font-weight:600;color:var(--tempest-text)}.tempest_description_A2XCb{margin:0;font-size:14px;color:var(--tempest-text-muted);max-width:480px}.tempest_action_vm1LC{margin-top:var(--tempest-space-2)}.tempest_wrapper_E0qHs{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_lbMkx{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_dropzone_jqua0{border:2px dashed var(--tempest-border-strong);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-surface);padding:var(--tempest-space-6) var(--tempest-space-5);text-align:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.tempest_dropzone_jqua0:hover{border-color:var(--tempest-primary)}.tempest_dropzone_jqua0.tempest_active_CG9Uk{border-color:var(--tempest-primary);background-color:#0066ff0f}.tempest_dropzone_jqua0.tempest_disabled_WNUUl{opacity:.6;cursor:not-allowed}.tempest_icon_i9fGH{color:var(--tempest-text-muted);margin-bottom:var(--tempest-space-2)}.tempest_title_bTVFl{font-weight:600;color:var(--tempest-text);font-size:14px;margin:0}.tempest_subtitle_S54OV{color:var(--tempest-text-muted);font-size:12px;margin:var(--tempest-space-1) 0 0}.tempest_files_WljYm{margin-top:var(--tempest-space-3);display:flex;flex-direction:column;gap:var(--tempest-space-2)}.tempest_file_Lp-dR{display:flex;align-items:center;justify-content:space-between;gap:var(--tempest-space-3);padding:var(--tempest-space-2) var(--tempest-space-3);background-color:var(--tempest-bg);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);font-size:13px}.tempest_fileMeta_LTnN2{color:var(--tempest-text-muted);font-size:11px}.tempest_remove_jskra{background:none;border:none;color:var(--tempest-text-muted);cursor:pointer;padding:4px;border-radius:var(--tempest-radius-sm)}.tempest_remove_jskra:hover{background-color:var(--tempest-surface);color:var(--tempest-danger)}.tempest_hidden_ReEq6{display:none}.tempest_form_jNBDR{display:flex;width:100%}.tempest_form_jNBDR.tempest_stack_O1Hl-{flex-direction:column}.tempest_form_jNBDR.tempest_inline_LBQAv{flex-direction:row;align-items:flex-end;flex-wrap:wrap}.tempest_form_jNBDR.tempest_grid_-B86T{display:grid;width:100%}.tempest_section_HGqw3{display:flex;flex-direction:column;width:100%}.tempest_sectionHeader_ji9hQ{display:flex;flex-direction:column;margin-bottom:var(--tempest-space-3)}.tempest_sectionTitle_GTPwe{font-size:var(--tempest-font-size-lg);font-weight:600;color:var(--tempest-text-primary);margin:0}.tempest_sectionDescription_KjW7k{font-size:var(--tempest-font-size-sm);color:var(--tempest-text-secondary);margin:var(--tempest-space-1) 0 0}.tempest_sectionBody_Vp2wz{display:flex;width:100%}.tempest_sectionBody_Vp2wz.tempest_stack_O1Hl-{flex-direction:column}.tempest_sectionBody_Vp2wz.tempest_inline_LBQAv{flex-direction:row;align-items:flex-end;flex-wrap:wrap}.tempest_sectionBody_Vp2wz.tempest_grid_-B86T{display:grid}.tempest_row_1EkVR{display:flex;flex-direction:row;align-items:flex-end;flex-wrap:wrap;width:100%}.tempest_row_1EkVR>*{flex:1 1 0;min-width:0}.tempest_actions_hK95I{display:flex;flex-direction:row;width:100%;margin-top:var(--tempest-space-2)}.tempest_actions_hK95I.tempest_start_gXnm3{justify-content:flex-start}.tempest_actions_hK95I.tempest_center_mKkz4{justify-content:center}.tempest_actions_hK95I.tempest_end_O3yDQ{justify-content:flex-end}.tempest_actions_hK95I.tempest_between_tte2z{justify-content:space-between}.tempest_container_fJfOt{margin-left:auto;margin-right:auto;padding-left:var(--tempest-space-4);padding-right:var(--tempest-space-4);width:100%}.tempest_container_fJfOt.tempest_sm_k8D4-{max-width:640px}.tempest_container_fJfOt.tempest_md_EnpYy{max-width:768px}.tempest_container_fJfOt.tempest_lg_UU-Ig{max-width:1024px}.tempest_container_fJfOt.tempest_xl_2TEWj{max-width:1280px}.tempest_container_fJfOt.tempest_full_l8bvG{max-width:100%}.tempest_stack_sxR8u{display:flex}.tempest_stack_sxR8u.tempest_vertical_2TMf5{flex-direction:column}.tempest_stack_sxR8u.tempest_horizontal_r7-c-{flex-direction:row}.tempest_stack_sxR8u.tempest_center_EDSAh{align-items:center}.tempest_stack_sxR8u.tempest_start_ucQ-K{align-items:flex-start}.tempest_stack_sxR8u.tempest_end_pnKlF{align-items:flex-end}.tempest_stack_sxR8u.tempest_stretch_pX6l7{align-items:stretch}.tempest_stack_sxR8u.tempest_justifyStart_lHYsS{justify-content:flex-start}.tempest_stack_sxR8u.tempest_justifyCenter_JH2m6{justify-content:center}.tempest_stack_sxR8u.tempest_justifyEnd_EBisT{justify-content:flex-end}.tempest_stack_sxR8u.tempest_justifyBetween_mAJwT{justify-content:space-between}.tempest_stack_sxR8u.tempest_wrap_-xxOh{flex-wrap:wrap}.tempest_grid_o-JIX{display:grid;width:100%}.tempest_wrapper_cRGQm{display:flex;align-items:center;justify-content:space-between;gap:var(--tempest-space-3);padding:var(--tempest-space-3) 0;font-size:13px;color:var(--tempest-text-muted);flex-wrap:wrap}.tempest_controls_fdL-y{display:flex;align-items:center;gap:var(--tempest-space-1)}.tempest_page_WjG0l{min-width:32px;height:32px;padding:0 var(--tempest-space-2);border:1px solid var(--tempest-border);background-color:var(--tempest-bg);color:var(--tempest-text);border-radius:var(--tempest-radius-md);font-size:13px;font-weight:500}.tempest_page_WjG0l:hover:not(:disabled){background-color:var(--tempest-surface)}.tempest_page_WjG0l:disabled{opacity:.5}.tempest_active_1kqsJ{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_active_1kqsJ:hover{background-color:var(--tempest-primary-hover)}.tempest_ellipsis_V294k{padding:0 var(--tempest-space-2);color:var(--tempest-text-subtle)}.tempest_sizeSelect_ZayTo{height:32px;padding:0 var(--tempest-space-2);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:13px}.tempest_wrapper_BQek1{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_bar_uC-0x{width:100%;height:8px;background-color:var(--tempest-surface-2);border-radius:var(--tempest-radius-full);overflow:hidden}.tempest_fill_vmg7x{height:100%;background-color:var(--tempest-primary);border-radius:inherit;transition:width .18s ease}.tempest_fill_vmg7x.tempest_success_gWJ8U{background-color:var(--tempest-success)}.tempest_fill_vmg7x.tempest_warning_DGkPO{background-color:var(--tempest-warning)}.tempest_fill_vmg7x.tempest_danger_gfwHh{background-color:var(--tempest-danger)}.tempest_indeterminate_HojUj .tempest_fill_vmg7x{width:30%!important;animation:tempest_tempest-progress-loop_0nEdF 1.4s ease-in-out infinite}.tempest_label_qqHJM{font-size:12px;color:var(--tempest-text-muted);display:flex;justify-content:space-between}@keyframes tempest_tempest-progress-loop_0nEdF{0%{transform:translate(-100%)}to{transform:translate(360%)}}.tempest_wrapper_P-gFm{display:inline-flex;align-items:flex-start;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_P-gFm.tempest_disabled_0-cna{cursor:not-allowed;opacity:.6}.tempest_input_7R8ZN{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_dot_P7ejP{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--tempest-border-strong);border-radius:50%;background-color:var(--tempest-bg);display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease}.tempest_dot_P7ejP:after{content:"";width:10px;height:10px;border-radius:50%;background-color:var(--tempest-primary);transform:scale(0);transition:transform .15s ease}.tempest_input_7R8ZN:checked+.tempest_dot_P7ejP{border-color:var(--tempest-primary)}.tempest_input_7R8ZN:checked+.tempest_dot_P7ejP:after{transform:scale(1)}.tempest_input_7R8ZN:focus-visible+.tempest_dot_P7ejP{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_labelWrap_iQ1HR{display:flex;flex-direction:column;gap:2px;line-height:1.3}.tempest_label_vAFIP{font-size:14px;color:var(--tempest-text)}.tempest_description_bEB8u{font-size:12px;color:var(--tempest-text-muted)}.tempest_group_oi329{display:flex;flex-direction:column;gap:var(--tempest-space-2)}.tempest_group_oi329.tempest_horizontal_1Ovgu{flex-direction:row;gap:var(--tempest-space-4);flex-wrap:wrap}.tempest_wrapper_dKXJJ{position:relative;width:100%;max-width:360px}.tempest_input_m0lPc{width:100%;height:40px;padding:0 36px;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.tempest_input_m0lPc:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_iconLeft_030-U,.tempest_clear_nb6lG{position:absolute;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;color:var(--tempest-text-muted)}.tempest_iconLeft_030-U{left:12px;pointer-events:none}.tempest_clear_nb6lG{right:8px;width:24px;height:24px;border:none;background:transparent;border-radius:var(--tempest-radius-full)}.tempest_clear_nb6lG:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}.tempest_wrapper_KS2K3{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_Lmgos{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_PvDVJ{color:var(--tempest-danger);margin-left:2px}.tempest_field_h-wBy{position:relative;display:flex;align-items:center}.tempest_select_cjdcr{width:100%;height:40px;padding:0 36px 0 var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;appearance:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.tempest_select_cjdcr:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_select_cjdcr:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_caret_MdCao{position:absolute;right:12px;pointer-events:none;color:var(--tempest-text-muted)}.tempest_error_sw9MU .tempest_select_cjdcr{border-color:var(--tempest-danger)}.tempest_helper_frosK{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_-zd6i{font-size:12px;color:var(--tempest-danger)}.tempest_skeleton_CB4uF{display:block;background:linear-gradient(90deg,var(--tempest-surface) 0%,var(--tempest-surface-2) 50%,var(--tempest-surface) 100%);background-size:200% 100%;border-radius:var(--tempest-radius-md);animation:tempest_tempest-skeleton_H5Y8e 1.4s ease-in-out infinite}.tempest_text_-A8IF{height:14px;border-radius:var(--tempest-radius-sm)}.tempest_circle_DYcl8{border-radius:50%}@keyframes tempest_tempest-skeleton_H5Y8e{0%{background-position:200% 0}to{background-position:-200% 0}}.tempest_spinner_GpFZS{display:inline-block;border:2px solid var(--tempest-surface-2);border-top-color:var(--tempest-primary);border-radius:50%;animation:tempest_tempest-spinner_wKVCY .7s linear infinite}.tempest_sm_3sIoD{width:14px;height:14px}.tempest_md_M2sPj{width:20px;height:20px}.tempest_lg_IxTw2{width:32px;height:32px}@keyframes tempest_tempest-spinner_wKVCY{to{transform:rotate(360deg)}}.tempest_stepper_w3qjQ{display:flex;align-items:flex-start;gap:var(--tempest-space-2);width:100%}.tempest_stepper_w3qjQ.tempest_vertical_d4mOs{flex-direction:column;align-items:stretch}.tempest_step_s2nqL{display:flex;align-items:center;gap:var(--tempest-space-2);flex:1}.tempest_dot_d1bSL{width:28px;height:28px;border-radius:50%;border:2px solid var(--tempest-border-strong);background-color:var(--tempest-bg);color:var(--tempest-text-muted);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.tempest_step_s2nqL.tempest_completed_gcFHM .tempest_dot_d1bSL{background-color:var(--tempest-primary);border-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_step_s2nqL.tempest_active_kL-CH .tempest_dot_d1bSL{border-color:var(--tempest-primary);color:var(--tempest-primary)}.tempest_label_8irAI{font-size:13px;color:var(--tempest-text-muted);font-weight:600}.tempest_step_s2nqL.tempest_active_kL-CH .tempest_label_8irAI,.tempest_step_s2nqL.tempest_completed_gcFHM .tempest_label_8irAI{color:var(--tempest-text)}.tempest_connector_lyeWp{flex:1;height:2px;background-color:var(--tempest-border);margin:0 var(--tempest-space-1)}.tempest_connector_lyeWp.tempest_completed_gcFHM{background-color:var(--tempest-primary)}.tempest_stepper_w3qjQ.tempest_vertical_d4mOs .tempest_connector_lyeWp{width:2px;height:24px;margin:0 0 0 13px}.tempest_wrapper_kudO9{display:inline-flex;align-items:center;gap:var(--tempest-space-2);cursor:pointer;-webkit-user-select:none;user-select:none}.tempest_wrapper_kudO9.tempest_disabled_2aZ0V{cursor:not-allowed;opacity:.6}.tempest_input_5BPNu{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.tempest_track_7ObdZ{width:36px;height:20px;background-color:var(--tempest-border-strong);border-radius:var(--tempest-radius-full);position:relative;transition:background-color .18s ease;flex-shrink:0}.tempest_thumb_-FTeK{position:absolute;top:2px;left:2px;width:16px;height:16px;background-color:#fff;border-radius:50%;box-shadow:var(--tempest-shadow-sm);transition:transform .18s ease}.tempest_input_5BPNu:checked+.tempest_track_7ObdZ{background-color:var(--tempest-primary)}.tempest_input_5BPNu:checked+.tempest_track_7ObdZ .tempest_thumb_-FTeK{transform:translate(16px)}.tempest_input_5BPNu:focus-visible+.tempest_track_7ObdZ{outline:2px solid var(--tempest-primary);outline-offset:2px}.tempest_label_LrH7V{font-size:14px;color:var(--tempest-text)}.tempest_scroll_unrJp{width:100%;overflow-x:auto;border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-lg);background-color:var(--tempest-bg)}.tempest_table_Dkosn{width:100%;border-collapse:collapse;font-size:14px}.tempest_th_PNuEx,.tempest_td_jv9tA{padding:var(--tempest-space-3) var(--tempest-space-4);text-align:left;border-bottom:1px solid var(--tempest-border)}.tempest_th_PNuEx{background-color:var(--tempest-surface);color:var(--tempest-text-muted);font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.tempest_tr_7UG8J:last-child .tempest_td_jv9tA{border-bottom:none}.tempest_tr_7UG8J.tempest_clickable_B6Si-{cursor:pointer}.tempest_tr_7UG8J.tempest_clickable_B6Si-:hover{background-color:var(--tempest-surface)}.tempest_alignRight_9hY0G{text-align:right}.tempest_alignCenter_YiUQy{text-align:center}.tempest_emptyRow_kdMiv{padding:var(--tempest-space-6);text-align:center;color:var(--tempest-text-muted)}.tempest_tablist_WR6ag{display:flex;gap:var(--tempest-space-1);border-bottom:1px solid var(--tempest-border);overflow-x:auto}.tempest_tab_IdDYc{background:transparent;border:none;padding:var(--tempest-space-3) var(--tempest-space-4);font-size:14px;font-weight:600;color:var(--tempest-text-muted);cursor:pointer;position:relative;white-space:nowrap;transition:color .15s ease}.tempest_tab_IdDYc:hover:not(:disabled){color:var(--tempest-text)}.tempest_tab_IdDYc.tempest_active_PTNtG{color:var(--tempest-primary)}.tempest_tab_IdDYc.tempest_active_PTNtG:after{content:"";position:absolute;left:var(--tempest-space-3);right:var(--tempest-space-3);bottom:-1px;height:2px;background-color:var(--tempest-primary);border-radius:var(--tempest-radius-sm) var(--tempest-radius-sm) 0 0}.tempest_tab_IdDYc:disabled{opacity:.5;cursor:not-allowed}.tempest_panel_08i9c{padding:var(--tempest-space-4) 0}.tempest_pill_lGuqn .tempest_tab_IdDYc{border-radius:var(--tempest-radius-full);padding:6px var(--tempest-space-3);font-size:13px}.tempest_pill_lGuqn .tempest_tab_IdDYc.tempest_active_PTNtG:after{display:none}.tempest_pill_lGuqn .tempest_tab_IdDYc.tempest_active_PTNtG{background-color:var(--tempest-primary);color:var(--tempest-primary-foreground)}.tempest_pill_lGuqn.tempest_tablist_WR6ag{border-bottom:none}.tempest_wrapper_C0gfg{display:flex;flex-direction:column;gap:var(--tempest-space-1);width:100%}.tempest_label_cWLXP{font-size:13px;font-weight:600;color:var(--tempest-text)}.tempest_required_rDZXE{color:var(--tempest-danger);margin-left:2px}.tempest_textarea_Z-y6g{width:100%;min-height:96px;padding:var(--tempest-space-3);border:1px solid var(--tempest-border);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);color:var(--tempest-text);font-size:14px;font-family:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.tempest_textarea_Z-y6g::placeholder{color:var(--tempest-text-subtle)}.tempest_textarea_Z-y6g:focus{outline:none;border-color:var(--tempest-primary);box-shadow:0 0 0 3px #0066ff2e}.tempest_textarea_Z-y6g:disabled{background-color:var(--tempest-surface);cursor:not-allowed;color:var(--tempest-text-muted)}.tempest_error_NWC9f .tempest_textarea_Z-y6g{border-color:var(--tempest-danger)}.tempest_helper_gedut{font-size:12px;color:var(--tempest-text-muted)}.tempest_errorText_ey07q{font-size:12px;color:var(--tempest-danger)}.tempest_trigger_Dmc5E{display:inline-flex;position:relative}.tempest_bubble_TPGHB{position:absolute;z-index:var(--tempest-z-dropdown);background-color:#11151c;color:#fff;padding:4px 8px;border-radius:var(--tempest-radius-sm);font-size:12px;white-space:nowrap;pointer-events:none;box-shadow:var(--tempest-shadow-md);animation:tempest_tempest-tooltip-in_csYeZ .12s ease-out}.tempest_top_m2tnn{bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.tempest_bottom_9Twz4{top:calc(100% + 8px);left:50%;transform:translate(-50%)}.tempest_left_UPdrG{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.tempest_right_CV--T{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}@keyframes tempest_tempest-tooltip-in_csYeZ{0%{opacity:0;transform:scale(.95) translate(var(--tempest-tx, 0),var(--tempest-ty, 0))}to{opacity:1}}.tempest_container_x4-Qm{position:fixed;top:var(--tempest-space-4);right:var(--tempest-space-4);display:flex;flex-direction:column;gap:var(--tempest-space-2);z-index:var(--tempest-z-toast);pointer-events:none}.tempest_toast_FLdHz{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--tempest-space-3);padding:var(--tempest-space-3) var(--tempest-space-4);border-radius:var(--tempest-radius-md);background-color:var(--tempest-bg);border:1px solid var(--tempest-border);box-shadow:var(--tempest-shadow-md);min-width:280px;max-width:420px;animation:tempest_tempest-toast-in_E2d-A .18s ease-out}.tempest_success_Oy694{border-left:4px solid var(--tempest-success)}.tempest_warning_84GC8{border-left:4px solid var(--tempest-warning)}.tempest_error_hrQAA{border-left:4px solid var(--tempest-danger)}.tempest_info_eq5bQ{border-left:4px solid var(--tempest-info)}.tempest_title_-H6R2{font-weight:600;font-size:14px;color:var(--tempest-text);margin:0}.tempest_description_-QwfC{font-size:13px;color:var(--tempest-text-muted);margin:2px 0 0}.tempest_close_i10-s{margin-left:auto;background:none;border:none;color:var(--tempest-text-muted);padding:4px;border-radius:var(--tempest-radius-sm);display:flex;align-items:center}.tempest_close_i10-s:hover{background-color:var(--tempest-surface);color:var(--tempest-text)}@keyframes tempest_tempest-toast-in_E2d-A{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.tempest_scroll_8Giwl{position:relative;overflow:auto;width:100%}.tempest_spacer_P3Pvl{position:relative;width:100%}.tempest_row_Ff0VU{position:absolute;left:0;right:0}
|