@hyperbridge/simplex 0.16.12 → 0.17.0
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/dist/bin/simplex.js +1728 -409
- package/dist/bin/simplex.js.map +1 -1
- package/dist/index.cjs +1086 -145
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +224 -23
- package/dist/index.d.ts +224 -23
- package/dist/index.js +1080 -134
- package/dist/index.js.map +1 -1
- package/dist/sqlite.cjs +67 -4
- package/dist/sqlite.cjs.map +1 -1
- package/dist/sqlite.d.cts +21 -2
- package/dist/sqlite.d.ts +21 -2
- package/dist/sqlite.js +66 -4
- package/dist/sqlite.js.map +1 -1
- package/dist/{types-B5zkFhxR.d.cts → types-BPyUX8qu.d.cts} +64 -1
- package/dist/{types-B5zkFhxR.d.ts → types-BPyUX8qu.d.ts} +64 -1
- package/dist/ui/assets/Novatica-Medium-CjNgGPEL.ttf +0 -0
- package/dist/ui/assets/index-CK8E6aPx.css +1 -0
- package/dist/ui/assets/index-D8DLeEH0.js +106 -0
- package/dist/ui/index.html +2 -2
- package/package.json +5 -5
- package/dist/ui/assets/index-QU1Ik7IX.js +0 -106
- package/dist/ui/assets/index-XKHMOpY2.css +0 -1
|
@@ -95,6 +95,7 @@ interface SimplexDataStore {
|
|
|
95
95
|
activity: ActivityStore;
|
|
96
96
|
state: StateStore;
|
|
97
97
|
limitOrders: LimitOrderStore;
|
|
98
|
+
inventory: InventoryStore;
|
|
98
99
|
/** Releases any underlying handles. Called by `Simplex.stop()`. */
|
|
99
100
|
close?(): Promise<void>;
|
|
100
101
|
}
|
|
@@ -143,6 +144,12 @@ interface LimitOrderHold {
|
|
|
143
144
|
* before bids carried their own rate have none.
|
|
144
145
|
*/
|
|
145
146
|
take?: string;
|
|
147
|
+
/**
|
|
148
|
+
* The input token's decimals on the order's source chain, which is where `take` and the escrow
|
|
149
|
+
* a fill releases are counted. With it, settlement records what a fill took in at 1e18. Holds
|
|
150
|
+
* recorded before fills kept their input have none.
|
|
151
|
+
*/
|
|
152
|
+
takeDecimals?: number;
|
|
146
153
|
}
|
|
147
154
|
interface BidInsert {
|
|
148
155
|
commitment: string;
|
|
@@ -410,6 +417,12 @@ interface LimitOrder {
|
|
|
410
417
|
commitment: string | null;
|
|
411
418
|
/** Bumped on every repost, so each posting hashes differently. */
|
|
412
419
|
orderNonce: string;
|
|
420
|
+
/**
|
|
421
|
+
* The EntryPoint the current posting's op was signed for. Null while nothing is
|
|
422
|
+
* posted, and on a posting stored before this was recorded, which was signed
|
|
423
|
+
* for v0.8.
|
|
424
|
+
*/
|
|
425
|
+
entryPoint: string | null;
|
|
413
426
|
/** When the current posting expires, as the orderbook reported it. */
|
|
414
427
|
bookExpiresAt: string | null;
|
|
415
428
|
/** `Order.price` from the orderbook, which shades `price` by the protocol fee. */
|
|
@@ -447,6 +460,7 @@ interface LimitOrderPosting {
|
|
|
447
460
|
bookExpiresAt: string | null;
|
|
448
461
|
bookPrice: string | null;
|
|
449
462
|
orderNonce: string;
|
|
463
|
+
entryPoint: string | null;
|
|
450
464
|
status: LimitOrderStatus;
|
|
451
465
|
lastError: string | null;
|
|
452
466
|
}
|
|
@@ -470,6 +484,11 @@ interface LimitOrderFill {
|
|
|
470
484
|
bid: string | null;
|
|
471
485
|
/** What the fill drew the limit order down by, at 1e18 in the token it pays. */
|
|
472
486
|
amount: string;
|
|
487
|
+
/**
|
|
488
|
+
* The escrow the fill released to the solver, at 1e18 in the token the order takes in. Null
|
|
489
|
+
* for a fill recorded before this was kept, and for one whose event carried no inputs.
|
|
490
|
+
*/
|
|
491
|
+
amountIn: string | null;
|
|
473
492
|
/** The fill's transaction on the order's fill chain, when the event carried it. */
|
|
474
493
|
transactionHash: string | null;
|
|
475
494
|
/** SQLite-style "YYYY-MM-DD HH:MM:SS" in UTC. */
|
|
@@ -480,8 +499,25 @@ interface LimitOrderFillInsert {
|
|
|
480
499
|
commitment: string;
|
|
481
500
|
bid?: string | null;
|
|
482
501
|
amount: string;
|
|
502
|
+
amountIn?: string | null;
|
|
483
503
|
transactionHash?: string | null;
|
|
484
504
|
}
|
|
505
|
+
/**
|
|
506
|
+
* A fill with the terms of the order it drew on: what profitability is worked out from. The
|
|
507
|
+
* order's `price` stands in for the rate of a fill that kept no `amountIn`.
|
|
508
|
+
*/
|
|
509
|
+
interface LimitOrderFillRecord {
|
|
510
|
+
id: number;
|
|
511
|
+
limitOrderId: string;
|
|
512
|
+
book: string;
|
|
513
|
+
base: string;
|
|
514
|
+
quote: string;
|
|
515
|
+
side: LimitOrderSide;
|
|
516
|
+
price: string;
|
|
517
|
+
amount: string;
|
|
518
|
+
amountIn: string | null;
|
|
519
|
+
filledAt: string;
|
|
520
|
+
}
|
|
485
521
|
interface LimitOrderStore {
|
|
486
522
|
create(order: LimitOrderInsert): Promise<LimitOrder>;
|
|
487
523
|
get(id: string): Promise<LimitOrder | null>;
|
|
@@ -528,6 +564,8 @@ interface LimitOrderStore {
|
|
|
528
564
|
clampRemaining(id: string, room: string): Promise<LimitOrder | null>;
|
|
529
565
|
/** Records a fill against its limit order. Called alongside the draw-down it explains. */
|
|
530
566
|
recordFill(fill: LimitOrderFillInsert): Promise<void>;
|
|
567
|
+
/** Every fill of every limit order, oldest first, each with its order's terms. */
|
|
568
|
+
fillHistory(): Promise<LimitOrderFillRecord[]>;
|
|
531
569
|
/** A limit order's fills, newest first. */
|
|
532
570
|
fills(limitOrderId: string, limit?: number): Promise<LimitOrderFill[]>;
|
|
533
571
|
/**
|
|
@@ -596,5 +634,30 @@ interface StateStore {
|
|
|
596
634
|
*/
|
|
597
635
|
patch?(patch: Partial<RuntimeState>): Promise<RuntimeState>;
|
|
598
636
|
}
|
|
637
|
+
/**
|
|
638
|
+
* What the solver held at one moment: whole tokens per symbol, counting the wallet and the
|
|
639
|
+
* vaults on every chain.
|
|
640
|
+
*/
|
|
641
|
+
interface InventorySnapshot {
|
|
642
|
+
id: number;
|
|
643
|
+
/** SQLite-style "YYYY-MM-DD HH:MM:SS" in UTC. */
|
|
644
|
+
takenAt: string;
|
|
645
|
+
balances: Record<string, number>;
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* A record of what the solver held, taken about once a day.
|
|
649
|
+
*
|
|
650
|
+
* It is what profit is measured against: the inventory a period began with. The chain can say
|
|
651
|
+
* what an account holds now but not what it held last week, so a snapshot that was never taken
|
|
652
|
+
* cannot be recovered. Like {@link ActivityStore} it is observability rather than correctness:
|
|
653
|
+
* a lost row costs a figure on the analytics page and nothing else.
|
|
654
|
+
*/
|
|
655
|
+
interface InventoryStore {
|
|
656
|
+
record(balances: Record<string, number>): Promise<void>;
|
|
657
|
+
/** The most recent snapshot, or null when none has been taken. */
|
|
658
|
+
latest(): Promise<InventorySnapshot | null>;
|
|
659
|
+
/** Every snapshot taken at or after `from`, oldest first. */
|
|
660
|
+
since(from: Date): Promise<InventorySnapshot[]>;
|
|
661
|
+
}
|
|
599
662
|
|
|
600
|
-
export { type ActivityStore as A, type BidStore as B, LoggerContext as L, type OrderHistoryPage as O, type RuntimeState as R, type SimplexDataStore as S, type WalletTx as W, type LogLevel as a, type Logger as b, type ActivityInsert as c, type ActivityEvent as d, type LimitOrderStore as e, type LimitOrder as f, type LimitOrderFilter as g, type LimitOrderFill as h, type StoredBid as i, type LogSink as j, type BidStats as k, type StateStore as l, type ActivityType as m, type BidInsert as n, type
|
|
663
|
+
export { type ActivityStore as A, type BidStore as B, getLogger as C, type OrderSummary as D, type InventoryStore as I, LoggerContext as L, type OrderHistoryPage as O, type RuntimeState as R, type SimplexDataStore as S, type WalletTx as W, type LogLevel as a, type Logger as b, type ActivityInsert as c, type ActivityEvent as d, type LimitOrderStore as e, type LimitOrder as f, type LimitOrderFilter as g, type LimitOrderFill as h, type StoredBid as i, type LogSink as j, type BidStats as k, type StateStore as l, type ActivityType as m, type BidInsert as n, type InventorySnapshot as o, type LimitOrderFillInsert as p, type LimitOrderFillRecord as q, type LimitOrderHold as r, type LimitOrderInsert as s, type LimitOrderPosting as t, type LimitOrderSide as u, type LimitOrderStatus as v, type OperatorNotification as w, type WalletTxKind as x, addLogSink as y, configureLogger as z };
|
|
@@ -95,6 +95,7 @@ interface SimplexDataStore {
|
|
|
95
95
|
activity: ActivityStore;
|
|
96
96
|
state: StateStore;
|
|
97
97
|
limitOrders: LimitOrderStore;
|
|
98
|
+
inventory: InventoryStore;
|
|
98
99
|
/** Releases any underlying handles. Called by `Simplex.stop()`. */
|
|
99
100
|
close?(): Promise<void>;
|
|
100
101
|
}
|
|
@@ -143,6 +144,12 @@ interface LimitOrderHold {
|
|
|
143
144
|
* before bids carried their own rate have none.
|
|
144
145
|
*/
|
|
145
146
|
take?: string;
|
|
147
|
+
/**
|
|
148
|
+
* The input token's decimals on the order's source chain, which is where `take` and the escrow
|
|
149
|
+
* a fill releases are counted. With it, settlement records what a fill took in at 1e18. Holds
|
|
150
|
+
* recorded before fills kept their input have none.
|
|
151
|
+
*/
|
|
152
|
+
takeDecimals?: number;
|
|
146
153
|
}
|
|
147
154
|
interface BidInsert {
|
|
148
155
|
commitment: string;
|
|
@@ -410,6 +417,12 @@ interface LimitOrder {
|
|
|
410
417
|
commitment: string | null;
|
|
411
418
|
/** Bumped on every repost, so each posting hashes differently. */
|
|
412
419
|
orderNonce: string;
|
|
420
|
+
/**
|
|
421
|
+
* The EntryPoint the current posting's op was signed for. Null while nothing is
|
|
422
|
+
* posted, and on a posting stored before this was recorded, which was signed
|
|
423
|
+
* for v0.8.
|
|
424
|
+
*/
|
|
425
|
+
entryPoint: string | null;
|
|
413
426
|
/** When the current posting expires, as the orderbook reported it. */
|
|
414
427
|
bookExpiresAt: string | null;
|
|
415
428
|
/** `Order.price` from the orderbook, which shades `price` by the protocol fee. */
|
|
@@ -447,6 +460,7 @@ interface LimitOrderPosting {
|
|
|
447
460
|
bookExpiresAt: string | null;
|
|
448
461
|
bookPrice: string | null;
|
|
449
462
|
orderNonce: string;
|
|
463
|
+
entryPoint: string | null;
|
|
450
464
|
status: LimitOrderStatus;
|
|
451
465
|
lastError: string | null;
|
|
452
466
|
}
|
|
@@ -470,6 +484,11 @@ interface LimitOrderFill {
|
|
|
470
484
|
bid: string | null;
|
|
471
485
|
/** What the fill drew the limit order down by, at 1e18 in the token it pays. */
|
|
472
486
|
amount: string;
|
|
487
|
+
/**
|
|
488
|
+
* The escrow the fill released to the solver, at 1e18 in the token the order takes in. Null
|
|
489
|
+
* for a fill recorded before this was kept, and for one whose event carried no inputs.
|
|
490
|
+
*/
|
|
491
|
+
amountIn: string | null;
|
|
473
492
|
/** The fill's transaction on the order's fill chain, when the event carried it. */
|
|
474
493
|
transactionHash: string | null;
|
|
475
494
|
/** SQLite-style "YYYY-MM-DD HH:MM:SS" in UTC. */
|
|
@@ -480,8 +499,25 @@ interface LimitOrderFillInsert {
|
|
|
480
499
|
commitment: string;
|
|
481
500
|
bid?: string | null;
|
|
482
501
|
amount: string;
|
|
502
|
+
amountIn?: string | null;
|
|
483
503
|
transactionHash?: string | null;
|
|
484
504
|
}
|
|
505
|
+
/**
|
|
506
|
+
* A fill with the terms of the order it drew on: what profitability is worked out from. The
|
|
507
|
+
* order's `price` stands in for the rate of a fill that kept no `amountIn`.
|
|
508
|
+
*/
|
|
509
|
+
interface LimitOrderFillRecord {
|
|
510
|
+
id: number;
|
|
511
|
+
limitOrderId: string;
|
|
512
|
+
book: string;
|
|
513
|
+
base: string;
|
|
514
|
+
quote: string;
|
|
515
|
+
side: LimitOrderSide;
|
|
516
|
+
price: string;
|
|
517
|
+
amount: string;
|
|
518
|
+
amountIn: string | null;
|
|
519
|
+
filledAt: string;
|
|
520
|
+
}
|
|
485
521
|
interface LimitOrderStore {
|
|
486
522
|
create(order: LimitOrderInsert): Promise<LimitOrder>;
|
|
487
523
|
get(id: string): Promise<LimitOrder | null>;
|
|
@@ -528,6 +564,8 @@ interface LimitOrderStore {
|
|
|
528
564
|
clampRemaining(id: string, room: string): Promise<LimitOrder | null>;
|
|
529
565
|
/** Records a fill against its limit order. Called alongside the draw-down it explains. */
|
|
530
566
|
recordFill(fill: LimitOrderFillInsert): Promise<void>;
|
|
567
|
+
/** Every fill of every limit order, oldest first, each with its order's terms. */
|
|
568
|
+
fillHistory(): Promise<LimitOrderFillRecord[]>;
|
|
531
569
|
/** A limit order's fills, newest first. */
|
|
532
570
|
fills(limitOrderId: string, limit?: number): Promise<LimitOrderFill[]>;
|
|
533
571
|
/**
|
|
@@ -596,5 +634,30 @@ interface StateStore {
|
|
|
596
634
|
*/
|
|
597
635
|
patch?(patch: Partial<RuntimeState>): Promise<RuntimeState>;
|
|
598
636
|
}
|
|
637
|
+
/**
|
|
638
|
+
* What the solver held at one moment: whole tokens per symbol, counting the wallet and the
|
|
639
|
+
* vaults on every chain.
|
|
640
|
+
*/
|
|
641
|
+
interface InventorySnapshot {
|
|
642
|
+
id: number;
|
|
643
|
+
/** SQLite-style "YYYY-MM-DD HH:MM:SS" in UTC. */
|
|
644
|
+
takenAt: string;
|
|
645
|
+
balances: Record<string, number>;
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* A record of what the solver held, taken about once a day.
|
|
649
|
+
*
|
|
650
|
+
* It is what profit is measured against: the inventory a period began with. The chain can say
|
|
651
|
+
* what an account holds now but not what it held last week, so a snapshot that was never taken
|
|
652
|
+
* cannot be recovered. Like {@link ActivityStore} it is observability rather than correctness:
|
|
653
|
+
* a lost row costs a figure on the analytics page and nothing else.
|
|
654
|
+
*/
|
|
655
|
+
interface InventoryStore {
|
|
656
|
+
record(balances: Record<string, number>): Promise<void>;
|
|
657
|
+
/** The most recent snapshot, or null when none has been taken. */
|
|
658
|
+
latest(): Promise<InventorySnapshot | null>;
|
|
659
|
+
/** Every snapshot taken at or after `from`, oldest first. */
|
|
660
|
+
since(from: Date): Promise<InventorySnapshot[]>;
|
|
661
|
+
}
|
|
599
662
|
|
|
600
|
-
export { type ActivityStore as A, type BidStore as B, LoggerContext as L, type OrderHistoryPage as O, type RuntimeState as R, type SimplexDataStore as S, type WalletTx as W, type LogLevel as a, type Logger as b, type ActivityInsert as c, type ActivityEvent as d, type LimitOrderStore as e, type LimitOrder as f, type LimitOrderFilter as g, type LimitOrderFill as h, type StoredBid as i, type LogSink as j, type BidStats as k, type StateStore as l, type ActivityType as m, type BidInsert as n, type
|
|
663
|
+
export { type ActivityStore as A, type BidStore as B, getLogger as C, type OrderSummary as D, type InventoryStore as I, LoggerContext as L, type OrderHistoryPage as O, type RuntimeState as R, type SimplexDataStore as S, type WalletTx as W, type LogLevel as a, type Logger as b, type ActivityInsert as c, type ActivityEvent as d, type LimitOrderStore as e, type LimitOrder as f, type LimitOrderFilter as g, type LimitOrderFill as h, type StoredBid as i, type LogSink as j, type BidStats as k, type StateStore as l, type ActivityType as m, type BidInsert as n, type InventorySnapshot as o, type LimitOrderFillInsert as p, type LimitOrderFillRecord as q, type LimitOrderHold as r, type LimitOrderInsert as s, type LimitOrderPosting as t, type LimitOrderSide as u, type LimitOrderStatus as v, type OperatorNotification as w, type WalletTxKind as x, addLogSink as y, configureLogger as z };
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@font-face{font-family:Novatica;font-style:normal;font-weight:500;font-display:swap;src:url(./Novatica-Medium-CjNgGPEL.ttf)format("truetype")}.orderbook-view,.orderbook-skeleton{--ob-buy:oklch(89.39% .2249 141.13);--ob-sell:oklch(65.86% .231 15.83);--ob-muted:oklch(69.14% .0229 252.57);--ob-card:oklch(22.12% .0108 260.68/.3);--ob-card-border:#131417;--ob-line:#ffffff0f;--ob-control:oklch(25.93% .0144 261.67);--ob-heading:"Novatica", system-ui, Arial, sans-serif;gap:1.5rem;display:grid;container:orderbook/inline-size}.orderbook-view p,.orderbook-skeleton p{margin:0}.orderbook-num,.orderbook-level-price,.orderbook-stat-value,.orderbook-side-count{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.orderbook-muted,.orderbook-caption{color:var(--ob-muted)}.orderbook-caption{font-size:.75rem;line-height:1rem}.orderbook-card{border:1px solid var(--ob-card-border);background:var(--ob-card);border-radius:1rem;min-width:0;overflow:hidden}.orderbook-card-title{font-family:var(--ob-heading);color:#fff;margin:0;font-size:1rem;font-weight:500;line-height:1.5rem}.orderbook-card-title-lg{font-size:1.125rem;line-height:1.75rem}.orderbook-summary{padding:1rem 1.25rem 1.25rem}.operator-main[data-tab=orderbook] .operator-page-header{border-bottom:0;padding-bottom:0}.orderbook-stat-label{white-space:nowrap;flex-wrap:wrap;align-items:center;gap:.125rem .75rem;display:flex}.orderbook-stat-label>p{color:var(--ob-muted);margin:0;font-size:.75rem;font-weight:500;line-height:1rem}.orderbook-stat-label:not(:has(p)){color:var(--ob-muted);margin:0;font-size:.75rem;font-weight:500;line-height:1rem}.orderbook-live{color:var(--ob-muted);align-items:center;gap:.375rem;font-size:.75rem;line-height:1rem;display:inline-flex}.orderbook-live>span{background:var(--ob-buy);border-radius:999px;width:.375rem;height:.375rem}.orderbook-live[data-stale]>span{background:var(--warn)}.orderbook-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin-top:1rem;display:grid}.orderbook-stat-value{color:#fff;white-space:nowrap;font-size:1rem;line-height:1.5rem;margin-top:.25rem!important}.orderbook-stat-value[data-tone=buy]{color:var(--ob-buy)}.orderbook-stat-value[data-tone=sell]{color:var(--ob-sell)}.orderbook-unit{color:var(--ob-muted);margin-left:.375rem;font-size:.75rem;line-height:1rem}.orderbook-unit-wide{margin-left:.5rem}.orderbook-empty-copy{max-width:36rem;color:var(--ob-muted);font-size:.875rem;line-height:1.5rem;margin-top:1rem!important}.orderbook-filters{border-bottom:1px solid var(--ob-line);grid-template-columns:minmax(0,1fr);gap:.75rem;padding-bottom:1rem;display:grid}.orderbook-filter{gap:.375rem;min-width:0;display:grid}.orderbook-filter>span{color:var(--ob-muted);font-size:.75rem;line-height:1rem}.orderbook-filter .app-select-trigger{background:var(--ob-control);border-color:#ffffff1a;border-radius:.5rem;width:100%;min-width:0;height:2.5rem;min-height:2.5rem;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}.orderbook-filter .app-select-trigger:hover:not(:disabled),.orderbook-filter .app-select-trigger[data-state=open]{background:var(--ob-control);border-color:#ffffff29}.orderbook-filter .app-select-current{gap:.5rem}.orderbook-pair-icons .token-pair-icons{width:2rem;min-width:2rem}.orderbook-pair-icons .token-icon{width:1.25rem;height:1.25rem}.orderbook-pair-icons .token-icon+.token-icon{margin-left:-.4rem}.orderbook-chain-icon{flex-shrink:0;display:inline-flex}.orderbook-chain-icon .chain-logo{width:1rem;height:1rem}.orderbook-ladder{flex-direction:column;display:flex}.orderbook-ladder-head{border-bottom:1px solid var(--ob-line);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem;display:flex}.orderbook-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:.5rem;padding:0 1rem;display:grid}.orderbook-grid>.orderbook-num,.orderbook-grid>.orderbook-mid-bps,.orderbook-columns>:not(:first-child){text-align:right}.orderbook-columns{border-bottom:1px solid var(--ob-line);letter-spacing:.025em;text-transform:uppercase;color:var(--ob-muted);padding-top:.5rem;padding-bottom:.5rem;font-size:.6875rem;line-height:1rem}.orderbook-side-heading{padding:.5rem 1rem}.orderbook-side-heading>span{flex-wrap:wrap;align-items:baseline;gap:.25rem .5rem;display:flex}.orderbook-side-heading>span>span:first-child{font-size:.875rem;font-weight:500;line-height:1.25rem}.orderbook-side-heading[data-side=BID]>span>span:first-child{color:var(--ob-buy)}.orderbook-side-heading[data-side=ASK]>span>span:first-child{color:var(--ob-sell)}.orderbook-side-count{color:var(--ob-muted)}.orderbook-level{cursor:pointer;outline:none;padding-top:7px;padding-bottom:7px;font-size:.8125rem;line-height:1.25rem;transition:background-color .15s;position:relative}.orderbook-level:hover{background:#ffffff0b}.orderbook-level:focus-visible{background:#ffffff0e;box-shadow:inset 0 0 0 1px #ffffff26}.orderbook-level>span{position:relative}.orderbook-level .orderbook-num{color:#fff}.orderbook-level-bar{pointer-events:none;border-radius:0 2px 2px 0;transition:width .5s ease-out,background-color .5s ease-out;top:2px;bottom:2px;left:0;position:absolute!important}.orderbook-level[data-side=BID] .orderbook-level-bar{background:oklch(89.39% .2249 141.13/.1)}.orderbook-level[data-side=ASK] .orderbook-level-bar{background:oklch(65.86% .231 15.83/.1)}.orderbook-level[data-side=BID]:is(:hover,:focus-visible) .orderbook-level-bar{background:oklch(89.39% .2249 141.13/.2)}.orderbook-level[data-side=ASK]:is(:hover,:focus-visible) .orderbook-level-bar{background:oklch(65.86% .231 15.83/.2)}.orderbook-level[data-side=BID] .orderbook-level-price{color:var(--ob-buy)}.orderbook-level[data-side=ASK] .orderbook-level-price{color:var(--ob-sell)}.orderbook-mid{border-top:1px solid var(--ob-line);border-bottom:1px solid var(--ob-line);background:#ffffff05;padding-top:.625rem;padding-bottom:.625rem;font-size:.75rem;line-height:1rem}.orderbook-mid .orderbook-num{color:#fff}.orderbook-mid-bps{font-variant-numeric:tabular-nums;color:var(--ob-muted);font-size:.6875rem}.orderbook-empty-side{text-align:center;color:var(--ob-muted);padding:1.5rem 1rem;font-size:.75rem}button.orderbook-expand{border:0;border-top:1px solid var(--ob-line);width:100%;min-height:0;color:var(--ob-muted);background:0 0;border-radius:0;margin-top:auto;padding:.75rem 1rem;font-size:.75rem;font-weight:500;transition:color .15s}button.orderbook-expand:active:not(:disabled){transform:none}button.orderbook-expand:hover:not(:disabled){color:#fff;background:0 0}.orderbook-ladder-foot{padding-bottom:.5rem}.orderbook-level-dialog{--ob-buy:oklch(89.39% .2249 141.13);--ob-sell:oklch(65.86% .231 15.83);border:1px solid var(--border-strong);color:var(--text);background:#1c1e23}.orderbook-level-dialog:not(.drawer-popup){z-index:51;border-radius:1.25rem;flex-direction:column;width:min(100% - 2rem,34rem);max-height:min(100dvh - 2rem,44rem);display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 2rem 6rem #00000085}.orderbook-level-dialog.drawer-popup{border-bottom:0;border-radius:1rem 1rem 0 0;box-shadow:0 -2rem 6rem #00000075}.orderbook-level-dialog.drawer-popup .orderbook-level-dialog-body{padding-bottom:max(1.25rem, env(safe-area-inset-bottom))}.orderbook-level-dialog-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.25rem 1rem 1.5rem;display:flex}.orderbook-level-dialog-side{font-size:.75rem;font-weight:500;line-height:1rem}.orderbook-level-dialog-header[data-side=BID] .orderbook-level-dialog-side{color:var(--ob-buy)}.orderbook-level-dialog-header[data-side=ASK] .orderbook-level-dialog-side{color:var(--ob-sell)}.orderbook-level-dialog-header h2{font-family:var(--font-mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-size:1.75rem;font-weight:400;line-height:2.25rem}.orderbook-level-dialog-header h2>span{color:var(--muted);font-size:1rem}.orderbook-level-dialog-header p{color:var(--muted);margin:.25rem 0 0;font-size:.8125rem}.orderbook-level-dialog-stats{border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);column-gap:1rem;margin:0 1.5rem;padding:.875rem 0;display:grid}.orderbook-level-dialog-stats dt{color:var(--muted);font-size:.75rem;line-height:1rem}.orderbook-level-dialog-stats dd{font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-size:.9375rem;line-height:1.375rem}.orderbook-level-dialog-stats dd>span{color:var(--muted);font-size:.75rem}.orderbook-level-dialog-body{min-height:0;padding:1rem 1.5rem 1.25rem;overflow-y:auto}.orderbook-level-dialog-note{color:var(--muted);margin:0;padding:1rem 0;font-size:.875rem}.orderbook-level-dialog-caption{color:var(--muted);margin:0 0 .5rem;font-size:.75rem}.orderbook-level-orders{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.orderbook-level-order{background:#ffffff05;border:1px solid #ffffff0f;border-radius:.75rem;gap:.375rem;padding:.75rem .875rem;display:grid}.orderbook-level-order p{margin:0}.orderbook-level-order-main,.orderbook-level-order-meta{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.orderbook-level-order-main .copy-value{font-size:.8125rem}.orderbook-level-order-main .copy-value-button{width:1.5rem;height:1.5rem;min-height:1.5rem!important}.orderbook-level-order-size{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.9375rem}.orderbook-level-order-size>span{color:var(--muted);font-size:.75rem}.orderbook-level-order-meta,.orderbook-level-order-sources,.orderbook-level-order-resized{color:var(--muted);font-size:.75rem;line-height:1rem}.orderbook-level-order-price{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.orderbook-level-order-resized{color:var(--warn)}.orderbook-level-order-sources{border-top:1px solid #ffffff0d;padding-top:.375rem}.orderbook-level-order-sources>span{color:#ffffff73}.orderbook-empty-state{text-align:center;color:var(--ob-muted);padding:3rem 1.5rem;font-size:.875rem}.orderbook-pulse{background:#ffffff0e;border-radius:.375rem;max-width:100%;animation:2s cubic-bezier(.4,0,.6,1) infinite orderbook-pulse;display:block}.orderbook-skeleton-panel{height:430px}@keyframes orderbook-pulse{50%{opacity:.5}}@container orderbook (width>=560px){.orderbook-stat-value{font-size:1.125rem;line-height:1.75rem}.orderbook-filters{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:1rem}.orderbook-stats{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:1.25rem}}@container orderbook (width>=980px){.orderbook-stats{grid-template-columns:repeat(6,auto);justify-content:space-between;column-gap:1.5rem}}@media (prefers-reduced-motion:reduce){.orderbook-level-bar{transition:none}.orderbook-pulse{animation:none}}.operator-metrics [data-tone=ok],.analytics [data-tone=ok]{--tone:var(--ok)}.operator-metrics [data-tone=err],.analytics [data-tone=err]{--tone:var(--err)}a.operator-metric-link{color:inherit;text-decoration:none}a.operator-metric-link:hover span{color:var(--text-secondary)}a.operator-metric-link:focus-visible{outline:2px solid var(--focus);outline-offset:.35rem;border-radius:.25rem}.operator-metrics strong[data-tone]{color:var(--tone,inherit)}.operator-metrics small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;overflow:hidden}.analytics-holdings{color:var(--muted);margin:1rem 0 0;font-size:.75rem;line-height:1.6}.analytics .steps.analytics-periods{margin:1.5rem 0 0}.analytics-charts{gap:1.5rem;min-width:0;display:grid}.analytics-charts figure{gap:.5rem;min-width:0;margin:0;display:grid}.analytics-charts figcaption{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.35rem 1rem;font-size:.75rem;display:flex}.analytics-charts svg{display:block;overflow:visible}.analytics-readout{color:var(--muted);font-family:var(--font-mono);letter-spacing:.02em;margin:0;font-size:.6875rem}.analytics-key{color:var(--muted);align-items:center;gap:.4rem;display:inline-flex}.analytics-key:before{content:"";background:var(--tone);border-radius:.125rem;width:.5rem;height:.5rem}.analytics-rule{stroke:#ffffff0f;stroke-width:1px}.analytics-rule[data-zero]{stroke:#fff3}.analytics-axis{fill:var(--muted);font-family:var(--font-mono);font-size:.625rem}.analytics-line{fill:none;stroke:var(--text);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.analytics-area{fill:#ffffff12}.analytics-dot{fill:var(--text);stroke:var(--bg);stroke-width:2px}.analytics-cursor{stroke:#ffffff38;stroke-width:1px}.analytics-bar{fill:var(--tone);transition:opacity .12s var(--ease-out)}.analytics-bar[data-dim]{opacity:.45}.analytics-hit{fill:#0000}.analytics-table-frame{border:1px solid var(--border);border-radius:.75rem;overflow-x:auto}.analytics-table{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%;font-size:.85rem}.analytics-table th,.analytics-table td{text-align:right;vertical-align:middle;white-space:nowrap;padding:.65rem .9rem}.analytics-table th:first-child,.analytics-table td:first-child{text-align:left}.analytics-table th{background:var(--control);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:500}.analytics-table td{border-top:1px solid var(--border)}.analytics-table tbody tr:hover{background:var(--card-raised)}.analytics-table tr[data-quiet] td{color:var(--muted)}.analytics-table strong{font-weight:500}.analytics-table strong[data-tone]{color:var(--tone,inherit)}.analytics-table small{color:var(--muted);font-weight:400}.analytics-change{justify-items:end;gap:.15rem;display:grid}.analytics-change span+span{color:var(--muted)}.analytics-pair{align-items:center;gap:.6rem;display:inline-flex}.analytics-pair .token-pair-icons{width:auto;min-width:0}.analytics-pair .token-icon{width:1.4rem;height:1.4rem}.analytics-pair .token-icon+.token-icon{box-shadow:0 0 0 2px var(--bg);margin-left:-.3rem}.analytics-method{max-width:46rem;color:var(--muted);margin:1.75rem 0 0;font-size:.75rem;line-height:1.6}@font-face{font-family:Aeonik;font-style:normal;font-weight:300;font-display:swap;src:url(./Aeonik-Light-BtMIwWKK.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:italic;font-weight:300;font-display:swap;src:url(./Aeonik-LightItalic-C5aRO_Hk.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:normal;font-weight:400;font-display:swap;src:url(./Aeonik-Regular-CE8GIAc9.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:italic;font-weight:400;font-display:swap;src:url(./Aeonik-RegularItalic-DWRdFhQQ.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:normal;font-weight:500;font-display:swap;src:url(./Aeonik-Medium-n0HrLkCH.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:italic;font-weight:500;font-display:swap;src:url(./Aeonik-MediumItalic-DvjAYNG5.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:normal;font-weight:700;font-display:swap;src:url(./Aeonik-Bold-OKFFMEOY.woff2)format("woff2")}@font-face{font-family:Aeonik;font-style:italic;font-weight:700;font-display:swap;src:url(./Aeonik-BoldItalic-CP6XIKtG.woff2)format("woff2")}@font-face{font-family:Aeonik Mono;font-style:normal;font-weight:400;font-display:swap;src:url(./AeonikMono-Regular-BJhjWe-O.woff2)format("woff2")}@font-face{font-family:Aeonik Mono;font-style:normal;font-weight:500;font-display:swap;src:url(./AeonikMono-Medium-C-GFpe3S.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#131417;--card:oklch(24.3% .0123 264.31);--card-raised:oklch(25.93% .0144 261.67);--control:oklch(22.12% .0108 260.68);--text:#fff;--text-secondary:#c3c6cc;--muted:#929daa;--border:#ffffff14;--border-strong:#ffffff24;--accent:#fff;--accent-text:#131417;--focus:#4adeff;--ok:#74e998;--warn:#ffdb69;--err:#ff7a89;--font-sans:"Aeonik", system-ui, sans-serif;--font-mono:"Aeonik Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);font-family:var(--font-sans);font-synthesis:none}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;min-height:100%}body,#root{min-height:100%}body{background:radial-gradient(circle at 12% 0%, #4adeff0e, transparent 28rem), radial-gradient(circle at 88% 4%, #ff35eb0a, transparent 30rem), var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;position:relative}.simplex-toaster{--width:min(25rem, calc(100vw - 2rem));font-family:var(--font-sans)}.simplex-toaster [data-sonner-toast]{border-color:var(--border-strong);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:oklch(20.5% .012 264/.98);padding-right:3rem;box-shadow:0 1rem 3rem #00000061}.simplex-toaster [data-title]{letter-spacing:-.01em;font-weight:500}.simplex-toaster [data-description]{color:var(--text-secondary);overflow-wrap:anywhere;white-space:normal;line-height:1.45}.simplex-toaster button[data-close-button]{border-color:var(--border-strong);background:var(--card-raised);width:1.75rem;height:1.75rem;min-height:0;color:var(--text-secondary);border-radius:50%;padding:0;inset:.65rem .65rem auto auto;transform:none}.simplex-toaster button[data-close-button]:hover:not(:disabled){color:var(--text);background:oklch(28.5% .016 263);border-color:#ffffff38}.simplex-toaster button[data-close-button]:active:not(:disabled){transform:scale(.94)}button,input,textarea{font:inherit}button,input{outline:none}button:focus-visible,input:focus-visible{border-color:#4adeffcc;box-shadow:0 0 0 3px #4adeff24}::selection{color:#fff;background:#ffed4a59}.app-shell{min-height:100dvh;padding:2rem 1.25rem 3rem;position:relative}.app-container{width:min(100%,150rem);margin-inline:auto}.app-shell-operator{padding:0}.app-shell-operator .app-container{width:100%}.screen-error,.connection-error{border-left:2px solid var(--err);background:#ff7a8909;justify-items:start;max-width:34rem;margin:clamp(4rem,12vh,9rem) auto;padding:clamp(1.5rem,4vw,3rem);display:grid}.screen-error h1,.connection-error h1{letter-spacing:-.045em;margin:.6rem 0 0;font-size:clamp(1.8rem,5vw,2.8rem);font-weight:500}.screen-error p,.connection-error p{color:var(--muted);margin:.75rem 0 1.25rem;line-height:1.55}.wizard-shell{border:1px solid var(--border);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#131417d1;border-radius:1.5rem;min-height:calc(100dvh - 5rem);overflow:hidden;box-shadow:0 1.5rem 5rem #03050c3d}.wizard-brandbar{border-bottom:1px solid var(--border);background:#ffffff03;justify-content:space-between;align-items:center;min-height:4.5rem;padding:0 1.5rem;display:flex}.wizard-brand{align-items:center;gap:.75rem;display:flex}.wizard-brand img.hyperfx-logo{object-fit:contain;width:7rem;height:auto}.wizard-brand>div{align-items:baseline;gap:.55rem;display:flex}.wizard-product-name{letter-spacing:-.01em;border-left:1px solid var(--border-strong);color:#fff;padding-left:.55rem;font-size:1.2rem;font-weight:600}.wizard-local-status{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.6875rem;font-weight:500;display:inline-flex}.wizard-local-status>span{background:var(--ok);border-radius:50%;width:.45rem;height:.45rem;box-shadow:0 0 0 .25rem #74e99814}.wizard-layout{grid-template-columns:19rem minmax(0,1fr);min-height:calc(100dvh - 9.5rem);display:grid}.wizard-sidebar{border-right:1px solid var(--border);background:#ffffff05;flex-direction:column;min-width:0;padding:2.5rem 1.5rem 1.5rem;display:flex}.eyebrow{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.6875rem;font-weight:500}.wizard-intro h1{letter-spacing:-.045em;text-wrap:balance;margin:.8rem 0 .65rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:500;line-height:1.05}.wizard-intro p,.wizard-step-header p,.wizard-security-note p{color:var(--muted);text-wrap:pretty;margin:0;font-size:.875rem;line-height:1.55}.stepper{margin:2.25rem 0}.stepper ol{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.stepper .step{min-height:3.5rem;color:var(--muted);transition:background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:.75rem;align-items:center;gap:.8rem;padding:.6rem .75rem;display:flex;position:relative}.stepper .step[data-state=active]{background:var(--card-raised);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.stepper .step[data-state=done]{color:var(--text-secondary)}.step-index{border:1px solid var(--border-strong);width:1.8rem;height:1.8rem;font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:.55rem;flex:0 0 1.8rem;place-items:center;font-size:.625rem;display:grid}.step[data-state=active] .step-index{color:#7ae7ff;background:#4adeff14;border-color:#4adeff47}.step[data-state=done] .step-index{color:var(--ok);background:#74e99812;border-color:#74e99833}.step-copy{gap:.18rem;min-width:0;display:grid}.step-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;overflow:hidden}.step-copy small{color:var(--muted);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.625rem}.wizard-security-note{border:1px solid var(--border);background:#ffffff05;border-radius:1rem;gap:.75rem;margin-top:auto;padding:1rem;display:flex}.wizard-security-icon{color:var(--focus);font-size:.7rem;line-height:1.4rem}.wizard-security-note strong{margin-bottom:.25rem;font-size:.8125rem;font-weight:500;display:block}.wizard-security-note p{font-size:.75rem}.wizard-main{flex-direction:column;min-width:0;padding:3rem clamp(1.5rem,5vw,4.5rem) 2rem;display:flex}.wizard-step-header,.wizard-step-content,.footer-nav{width:min(100%,48rem);margin-inline:auto}.wizard-progress-meta{justify-content:space-between;align-items:center;gap:1rem;display:flex}.wizard-progress-value{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.6875rem}.wizard-progress-track{background:var(--card-raised);appearance:none;border:0;border-radius:999px;width:100%;height:.2rem;margin:.8rem 0 2rem;display:block;overflow:hidden}.wizard-progress-track::-webkit-progress-bar{background:var(--card-raised)}.wizard-progress-track::-webkit-progress-value{transition:width .24s var(--ease-out);background:linear-gradient(90deg,#4adeff,#fff 48%,#ffed4a);border-radius:999px}.wizard-progress-track::-moz-progress-bar{background:linear-gradient(90deg,#4adeff,#fff 48%,#ffed4a);border-radius:999px}.wizard-step-header h2{letter-spacing:-.05em;text-wrap:balance;margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:500;line-height:1.05}.wizard-step-header p{max-width:38rem;margin-top:.8rem;font-size:.9375rem}.wizard-step-content{flex:1;margin-top:2.5rem}h1,h2,h3,p{text-wrap:pretty}h2{letter-spacing:-.018em;margin:0 0 .35rem;font-size:1.0625rem;font-weight:500}p.hint{color:var(--muted);margin:.25rem 0 1rem;font-size:.875rem;line-height:1.55}.card{border:1px solid var(--border);background:var(--card);border-radius:1rem;margin-bottom:1rem;padding:1.35rem 1.5rem 1.5rem;box-shadow:inset 0 1px #ffffff05}.wizard-sections{display:block}.wizard-sections>.card{border:0;border-top:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:1.75rem 0}.wizard-sections>.card:first-child{border-top:0;padding-top:0}.wizard-sections>.card:last-of-type{padding-bottom:.25rem}.wizard-sections>.card>h2,.wizard-sections>.card>.spread h2{letter-spacing:-.015em;margin-bottom:.45rem;font-size:.9375rem;font-weight:500}.wizard-sections>.card>p.hint{max-width:43rem;margin-bottom:1.25rem}.wizard-sections button:not(.primary):not(.step):not(:disabled){border-color:var(--border-strong);background:oklch(28.5% .016 263)}.wizard-sections button:not(.primary):not(.step):hover:not(:disabled){background:oklch(32.27% .02 273.23);border-color:#ffffff40}.section-footnote{color:var(--muted);margin:.15rem 0 0;font-size:.75rem;line-height:1.5}.copy-value{align-items:center;gap:.4rem;max-width:100%;display:inline-flex}.copy-value-text{text-overflow:ellipsis;min-width:0;overflow:hidden}.copy-value-button{width:2rem;height:2rem;color:var(--muted);border-radius:50%;flex:none;place-items:center;background:0 0!important;border:1px solid #0000!important;min-height:2rem!important;padding:0!important;display:grid!important}.copy-value-button:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)!important;background:var(--card-raised)!important}.copy-value-button svg{width:.95rem;height:.95rem}.review-section-heading h2{margin:0 0 .3rem;font-size:1.05rem!important}.review-section-heading>p{color:var(--muted);margin:0;font-size:.8125rem;line-height:1.5}.review-account-list{border-top:1px solid var(--border);margin-top:1.35rem}.review-account-row{border-bottom:1px solid var(--border);padding:1.15rem 0}.review-account-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.review-account-heading h3{margin:0;font-size:.9375rem;font-weight:500}.review-account-heading div>span,.review-account-row>p{color:var(--muted);font-size:.75rem}.review-account-heading div>span{margin-top:.15rem;display:block}.review-account-network{border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.06em;border-radius:999px;flex:none;padding:.3rem .5rem;font-size:.625rem}.review-account-row>p{max-width:46rem;margin:.7rem 0 0;line-height:1.5}.review-account-value{margin-top:.8rem}.review-account-value .copy-value,.review-config-path .copy-value{border:1px solid var(--border);background:var(--control);border-radius:.75rem;justify-content:space-between;width:100%;padding:.7rem .75rem .7rem .9rem}.review-account-value .copy-value-text{color:var(--text);overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:.875rem}.review-config-path{margin-top:1.2rem}.review-config-path-label{color:var(--text-secondary);margin-bottom:.4rem;font-size:.75rem;font-weight:500;display:block}.review-config-path .copy-value{align-items:center;min-height:3rem;padding:.4rem .55rem .4rem .75rem}.review-config-path .copy-value-text{width:100%;color:var(--text-secondary);white-space:nowrap;align-items:baseline;font-size:.8125rem;line-height:1.55;display:flex}.review-path-directory{min-width:0;color:var(--muted);text-overflow:ellipsis;overflow:hidden}.review-config-path strong{color:var(--text);flex:none;font-weight:500}.review-config-security{color:var(--muted);align-items:flex-start;gap:.55rem;margin:.75rem 0 0;font-size:.75rem;line-height:1.5;display:flex}.review-config-security>span{color:var(--focus);margin-top:.15rem;font-size:.5rem}.review-validation{border-left:2px solid var(--border-strong);background:#ffffff05;align-items:flex-start;gap:.75rem;margin-top:1.25rem;padding:.85rem .95rem;display:flex}.review-validation[data-state=ready]{border-left-color:var(--ok);background:#74e99809}.review-validation[data-state=error]{border-left-color:var(--err);background:#ff7a8909}.review-validation-icon{width:1.25rem;height:1.25rem;color:var(--muted);font-family:var(--font-mono);border:1px solid;border-radius:50%;flex:none;place-items:center;margin-top:.05rem;font-size:.6875rem;display:grid}.review-validation[data-state=ready] .review-validation-icon{color:var(--ok)}.review-validation[data-state=error] .review-validation-icon{color:var(--err)}.review-validation-icon svg{width:.8rem;height:.8rem}.review-validation-spinner{border-color:var(--border-strong);border-top-color:var(--focus);animation:.7s linear infinite review-spin}@keyframes review-spin{to{transform:rotate(360deg)}}.review-validation strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500;display:block}.review-validation p{color:var(--muted);overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.75rem;line-height:1.45}.review-validation[data-state=error] p{color:var(--err)}.review-launch-row{justify-content:space-between;align-items:center;gap:1.25rem;margin-top:1.75rem;display:flex}.review-start-button{justify-content:center;align-items:center;gap:.65rem;margin:0;display:inline-flex}.review-launch-row>p{max-width:18rem;color:var(--muted);text-align:right;margin:0;font-size:.75rem;line-height:1.45}.card-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.card-heading h2{margin-bottom:0}.review-launching-heading{align-items:center;gap:.75rem;margin-bottom:1.1rem;display:flex}.review-launching-heading h2{letter-spacing:-.015em;margin:0;font-size:.9375rem}.review-launching-spinner{border:2px solid var(--border-strong);border-top-color:var(--focus);border-radius:50%;flex:none;width:1rem;height:1rem;animation:.7s linear infinite review-spin}.review-launching-clock{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.8125rem}.review-launching-bar{background:var(--border);border-radius:999px;height:3px;margin-bottom:1.1rem;position:relative;overflow:hidden}.review-launching-bar>span{border-radius:inherit;width:40%;animation:review-launching-slide 1.6s var(--ease-out) infinite;background:linear-gradient(90deg,#4adeff,#fff 48%,#ffed4a);position:absolute;top:0;bottom:0;left:-40%}@keyframes review-launching-slide{to{left:100%}}@media (prefers-reduced-motion:reduce){.review-launching-spinner{animation:none}.review-launching-bar>span{opacity:.45;width:100%;animation:none;left:0}}.markets-section-heading,.uniswap-positions-heading{justify-content:space-between;align-items:flex-start;gap:1.25rem;display:flex}.markets-section-heading .hint,.uniswap-positions-heading .hint{margin:.2rem 0 0}.markets-kicker{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem;font-size:.625rem;font-weight:500;line-height:1.35;display:block}.market-add-button,.market-text-action,.curve-editor-add{min-height:2.25rem;color:var(--text-secondary);border:0;border-radius:0;padding:.4rem 0;font-size:.8125rem;font-weight:500;background:0 0!important}.market-add-button:hover:not(:disabled),.market-text-action:hover:not(:disabled),.curve-editor-add:hover:not(:disabled){color:var(--text);border-color:#0000;background:0 0!important}.market-add-button span,.market-text-action span{color:var(--accent);font-size:1.1rem;font-weight:400}.markets-pricing{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:1.75rem;padding:1rem 0;display:flex}.markets-pricing .hint{margin:.2rem 0 0;font-size:.75rem}.markets-pricing-tabs{flex:none}.market-list{border-bottom:1px solid var(--border)}.market-editor{border-top:1px solid var(--border);padding:1.35rem 0 1.5rem}.market-list .market-editor:first-child{border-top:0}.market-editor-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;display:flex}.market-editor-heading h3,.uniswap-positions-heading h3{letter-spacing:-.015em;margin:0;font-size:.9375rem;font-weight:500}.market-asset-grid{grid-template-columns:minmax(9rem,1fr) minmax(9rem,1fr) minmax(12rem,1.15fr);align-items:end;gap:.8rem;max-width:48rem;display:grid}.market-symbol-field,.market-limit-field,.market-reference-grid .field{margin:0}.market-custom-symbol-field{max-width:9rem}.market-limit-field{max-width:15rem}.icon-button,.curve-point-remove{width:2rem;min-width:2rem;min-height:2rem;color:var(--muted);border-radius:50%;place-items:center;padding:0;font-size:1.25rem;font-weight:400;line-height:1;display:grid;background:0 0!important}.icon-button svg,.curve-point-remove svg{width:1rem;height:1rem}.icon-button:hover:not(:disabled),.curve-point-remove:hover:not(:disabled){border-color:var(--border-strong);color:var(--text);background:var(--card-raised)!important}.market-remove-button{margin-top:.1rem}.market-editor>.error,.market-curves>.error{margin:.8rem 0 0}.market-editor-note,.uniswap-positions-note{color:var(--muted);margin:1rem 0;font-size:.75rem;line-height:1.55}.market-curves{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1.1rem}.market-curve-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.market-curve{min-width:0}.market-curve-toggle{cursor:pointer;align-items:flex-start;gap:.7rem;margin-bottom:.85rem;display:flex}.market-curve-toggle input{margin-top:.2rem}.market-curve-toggle span{gap:.1rem;display:grid}.market-curve-toggle strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.market-curve-toggle small{color:var(--muted);font-size:.75rem;line-height:1.45}.curve-editor-table{border-collapse:collapse;width:100%}.curve-editor-table th{color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:0 0 .45rem;font-size:.625rem;font-weight:500}.curve-editor-table th:last-child,.curve-editor-table td:last-child{text-align:right;width:2.5rem}.curve-editor-table td{padding:.35rem .5rem .35rem 0}.curve-editor-table input[type=text]{border-radius:.65rem;min-height:2.5rem;padding:.5rem .7rem}.curve-editor-footer{align-items:center;gap:.8rem;margin-top:.25rem;display:flex}.curve-editor-footer svg{opacity:.8;max-width:100%;height:2.25rem}.market-anchor-warning{border-top:1px solid #ff779038;margin-top:1.25rem;padding-top:1rem}.market-anchor-warning .error{margin:0 0 .35rem}.uniswap-positions{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.5rem}.uniswap-position-list{border-top:1px solid var(--border)}.uniswap-position{border-bottom:1px solid var(--border);grid-template-columns:minmax(8rem,1fr) minmax(9rem,1.15fr) minmax(8rem,1fr) minmax(8rem,1fr) 2rem;align-items:end;gap:.75rem;padding:1rem 0;display:grid}.uniswap-position .field,.uniswap-settings .field{margin:0}.uniswap-position .market-remove-button{margin-bottom:.5rem}.uniswap-settings{grid-template-columns:minmax(12rem,18rem) minmax(9rem,11rem);align-items:end;gap:.8rem;margin-top:1rem;display:grid}.market-reference-grid{max-width:19rem}.custom-asset-addresses{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.custom-asset-addresses>.hint{margin:0 0 .75rem}.custom-asset-chain{margin:.75rem 0}.custom-asset-chain-control{align-items:center;gap:.6rem;display:flex}.custom-asset-chain-control input{flex:1}.token-icon{object-fit:cover;border-radius:50%;flex:none}.token-icon-sm{width:1rem;height:1rem}.token-icon-md{width:1.5rem;height:1.5rem}.token-icon-lg{width:2rem;height:2rem}.token-pair-icons{align-items:center;width:3.25rem;min-width:3.25rem;display:flex}.token-pair-icons .token-icon+.token-icon{box-shadow:0 0 0 3px var(--bg);margin-left:-.65rem}.market-flow-section{content-visibility:auto;contain-intrinsic-size:auto 14rem}.market-flow-heading{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.market-flow-heading h2{letter-spacing:-.02em;margin:.3rem 0 .25rem;font-size:1.05rem;font-weight:500}.market-flow-heading .hint{margin:0}.market-flow-step{color:var(--muted);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;font-size:.625rem;font-weight:500}.market-method-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1.35rem;display:grid}.market-method-option{border:1px solid var(--border);background:color-mix(in oklab, var(--control) 72%, transparent);cursor:pointer;min-height:5.25rem;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), box-shadow .18s var(--ease-out);border-radius:.9rem;grid-template-columns:2.25rem 1fr 1.25rem;align-items:center;gap:.8rem;padding:.85rem .95rem;display:grid;position:relative}.market-method-option:hover{border-color:var(--border-strong)}.market-method-option[data-selected=true]{background:#4adeff0e;border-color:#4adeff6b;box-shadow:inset 0 0 0 1px #4adeff0f}.market-method-option input{opacity:0;pointer-events:none;position:absolute}.market-method-option:has(input:focus-visible){box-shadow:0 0 0 3px #4adeff24}.market-method-option>span:nth-of-type(2){gap:.2rem;display:grid}.market-method-option strong{color:var(--text);font-size:.875rem;font-weight:500}.market-method-option small{color:var(--muted);font-size:.75rem;line-height:1.4}.market-method-icon,.liquidity-summary-icon{background:var(--card-raised);width:2.25rem;height:2.25rem;color:var(--text-secondary);border-radius:.7rem;place-items:center;display:grid}.market-method-icon svg,.liquidity-summary-icon svg{width:1.15rem;height:1.15rem}.market-method-icon img,.liquidity-summary-icon img{object-fit:contain;width:1.3rem;height:1.3rem;display:block}.market-method-icon-uniswap,.liquidity-summary-icon{background:color-mix(in srgb, #ff4dbe 10%, var(--card-raised))}.market-method-check{border:1px solid var(--border-strong);color:#0000;border-radius:50%;place-items:center;width:1.2rem;height:1.2rem;display:grid}.market-method-check svg{width:.75rem;height:.75rem}.market-method-option[data-selected=true] .market-method-check{border-color:var(--focus);background:var(--focus);color:#081115}.market-create-button{min-height:2.5rem;color:var(--accent-text);padding:.5rem .85rem;border-color:var(--text-secondary)!important;background:var(--text)!important}.market-create-button:hover:not(:disabled){color:#101216;background:#f1f3f5!important}.market-create-button span{font-size:1rem}.market-overview-list{border-top:1px solid var(--border);margin-top:1.25rem}.market-overview-row{border-bottom:1px solid var(--border);align-items:center;gap:.9rem;min-height:4.75rem;padding:.75rem 0;display:flex}.market-overview-copy{flex:1;gap:.16rem;min-width:0;display:grid}.market-overview-copy strong{color:var(--text);font-size:.9rem;font-weight:500}.market-overview-copy strong span{color:var(--muted);margin:0 .2rem;font-weight:400}.market-overview-copy small,.liquidity-summary small{color:var(--muted);font-size:.75rem}.market-overview-prices{flex:none;align-items:center;gap:1.1rem;display:flex}.market-overview-price{gap:.12rem;display:grid}.market-overview-price small{color:var(--muted);font-size:.625rem}.market-overview-price strong{font-family:var(--font-mono);white-space:nowrap;font-size:.6875rem;font-weight:500}.market-overview-price em{color:var(--muted);font-family:var(--font-sans);font-size:.625rem;font-style:normal;font-weight:400}.market-configure-button{min-height:2.25rem;color:var(--text-secondary);padding:.4rem .75rem;font-size:.75rem;background:0 0!important}.market-configure-button:hover:not(:disabled){color:var(--text);background:var(--card-raised)!important}.liquidity-summary{border-top:1px solid var(--border);align-items:center;gap:.75rem;margin-top:1.25rem;padding-top:1rem;display:flex}.liquidity-summary>div{gap:.15rem;display:grid}.liquidity-summary strong{font-size:.875rem;font-weight:500}.market-dialog{z-index:51;border:1px solid var(--border-strong);background:var(--card);width:min(60rem,100vw - 2rem);max-width:none;max-height:calc(100dvh - 2rem);color:var(--text);border-radius:1.1rem;padding:0;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 2rem 6rem #0000008c}.dialog-overlay{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#04060ac2;position:fixed;inset:0}.market-dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.25rem 1.4rem 1.1rem;display:flex}.market-dialog-header h2{margin:0;font-size:1.1rem;font-weight:500}.market-dialog-header p{max-width:38rem;color:var(--muted);margin:.3rem 0 0;font-size:.8125rem;line-height:1.45}.market-dialog-close{width:2.25rem;min-width:2.25rem;min-height:2.25rem;border-color:#0000!important}.market-dialog-close svg{width:1.05rem;height:1.05rem}.market-dialog-body{max-height:calc(100dvh - 10rem);padding:0 1.4rem;overflow-y:auto}.market-dialog .market-editor{border-top:0;padding:1.25rem 0}.market-dialog .market-editor-heading{margin-bottom:1rem}.market-dialog .market-editor-heading .hint{margin:.25rem 0 0}.market-dialog-footer{border-top:1px solid var(--border);background:color-mix(in oklab, var(--card) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:1rem;margin:1.25rem -1.4rem 0;padding:.9rem 1.4rem;display:flex;position:sticky;bottom:0}.market-dialog-footer-end{justify-content:flex-end}.market-delete-button{color:var(--err);background:0 0!important;border-color:#0000!important}.market-delete-button:hover:not(:disabled){background:#ff779014!important;border-color:#ff779047!important}.market-pricing-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.market-pricing-heading h3{margin:0;font-size:.9375rem;font-weight:500}.market-pricing-heading .market-editor-note{text-align:right;max-width:22rem;margin:0}.curve-editor-visual{border:1px solid var(--border);background:linear-gradient(#4adeff09,#0000 70%);border-radius:.8rem;margin-bottom:.9rem;overflow:hidden}.curve-editor-visual-heading{justify-content:space-between;align-items:center;padding:.7rem .8rem 0;display:flex}.curve-editor-visual-heading span{color:var(--text-secondary);font-size:.75rem;font-weight:500}.curve-editor-visual-heading small{color:var(--muted);font-family:var(--font-mono);font-size:.625rem}.curve-editor-visual svg{width:100%;height:9rem;display:block}.curve-editor-visual svg text{fill:var(--muted);font-family:var(--font-mono);font-size:9px}.curve-grid-lines path{fill:none;stroke:#ffffff0e;stroke-width:1px}.curve-preview-line{fill:none;stroke:var(--focus);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px}.curve-preview-point{fill:var(--card);stroke:var(--focus);stroke-width:2.5px}.curve-editor-empty{min-height:9rem;color:var(--muted);align-content:center;place-items:center;display:grid}.curve-editor-empty>svg{opacity:.52;width:1.75rem;height:1.75rem}.curve-editor-empty p{margin:.4rem 0 0;font-size:.75rem}.uniswap-positions-modal{padding:1.25rem 0 0}.signer-tabs{grid-template-columns:repeat(3,max-content);max-width:100%;margin:1.25rem 0 0;display:inline-grid}.chain-provider-controls{flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:1.1rem;display:flex}.chain-configuration{padding-block:1.8rem}.wizard-sections>.card.chain-configuration{padding-block:0}.chain-configuration-header,.chain-identity,.chain-enable-toggle,.chain-configuration-actions,.chain-watch-toggle{align-items:center;display:flex}.chain-configuration-header{transition:background-color .18s var(--ease-out);border-radius:.75rem;justify-content:space-between;gap:1rem;margin-inline:-.75rem;padding:1.75rem .75rem}.chain-identity{gap:.75rem;min-width:0}.chain-identity h2{margin:0}.chain-logo{border-radius:50%;flex:none;width:2.25rem;height:2.25rem;display:block}.chain-logo-fallback{border:1px solid var(--border-strong);background:var(--card-raised);color:var(--muted);font-family:var(--font-mono);place-items:center;font-size:.7rem;font-weight:500;display:grid}.chain-source,.chain-watch-toggle small,.chain-configuration .field small{color:var(--muted);font-size:.75rem;line-height:1.45;display:block}.chain-source{margin-top:.15rem}.chain-warning{color:var(--warn);border-left:2px solid #ffdb69a6;align-items:flex-start;gap:.55rem;margin:.9rem 0 0 3rem;padding-left:.7rem;display:flex}.chain-warning-icon,.chain-info-icon{width:1rem;height:1rem;font-family:var(--font-mono);border:1px solid;border-radius:50%;flex:none;place-items:center;font-size:.625rem;font-weight:500;line-height:1;display:inline-grid}.chain-warning strong,.chain-warning small{display:block}.chain-warning strong{font-size:.75rem;font-weight:500;line-height:1.2}.chain-warning small{color:color-mix(in srgb, var(--warn) 72%, var(--muted));margin-top:.18rem;font-size:.75rem;line-height:1.45}.chain-enable-toggle{color:var(--text-secondary);cursor:pointer;flex:none;gap:.55rem;font-size:.8125rem;font-weight:500;position:relative}.chain-enable-toggle input{opacity:0;pointer-events:none;position:absolute}.chain-enable-switch{border:1px solid var(--border-strong);background:var(--control);width:2.1rem;height:1.2rem;transition:background-color .16s var(--ease-out), border-color .16s var(--ease-out);border-radius:999px;position:relative}.chain-enable-switch:after{background:var(--muted);content:"";width:.75rem;height:.75rem;transition:transform .16s var(--ease-out), background-color .16s var(--ease-out);border-radius:50%;position:absolute;top:.16rem;left:.16rem}.chain-enable-toggle input:checked+.chain-enable-switch{background:#4adeff29;border-color:#4adeff9e}.chain-enable-toggle input:checked+.chain-enable-switch:after{background:var(--focus);transform:translate(.9rem)}.chain-enable-toggle:has(input:focus-visible) .chain-enable-switch{box-shadow:0 0 0 3px #4adeff24}.chain-configuration-fields{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr);gap:1.25rem 1.5rem;margin:0 0 1.75rem 3rem;padding-top:1.35rem;display:grid}.chain-collapsible-content{overflow:hidden}.chain-collapsible-content[data-state=open]{animation:chain-panel-open .24s var(--ease-out)}.chain-collapsible-content[data-state=closed]{animation:.18s ease-in chain-panel-close}@keyframes chain-panel-open{0%{opacity:0;height:0}to{height:var(--radix-collapsible-content-height);opacity:1}}@keyframes chain-panel-close{0%{height:var(--radix-collapsible-content-height);opacity:1}to{opacity:0;height:0}}@media (prefers-reduced-motion:reduce){.chain-collapsible-content[data-state]{animation:none}}.chain-configuration .field{margin:0}.chain-configuration .field>span{margin-bottom:.2rem}.chain-configuration .field small{min-height:2.2em;margin-bottom:.45rem}.chain-configuration .field:first-child,.chain-backup-rpc,.chain-configuration-actions{grid-column:1/-1}.chain-backup-rpc{align-items:center;gap:.8rem;margin-top:-.2rem;display:flex}.chain-backup-rpc button.chain-add-backup-button{border:1px solid var(--border-strong);background:var(--card-raised);min-height:2.25rem;color:var(--text);border-radius:.65rem;align-items:center;gap:.4rem;padding:.45rem .7rem;font-size:.8125rem;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffff09}.chain-backup-rpc button.chain-add-backup-button:hover:not(:disabled){background:#4adeff12;border-color:#4adeff59}.chain-add-backup-button>span{color:var(--focus);font-family:var(--font-mono);font-size:1rem;line-height:1}.chain-info-text{color:var(--muted);align-items:flex-start;gap:.45rem;margin:0;font-size:.75rem;line-height:1.45;display:flex}.chain-info-icon{color:var(--focus);margin-top:.05rem}.chain-configuration-actions{border-top:1px solid var(--border);justify-content:space-between;gap:1rem;margin-top:.2rem;padding-top:1.25rem}.chain-configuration-actions>:not(.chain-watch-toggle){flex:none}.chain-verification-control,.chain-endpoint-status{align-items:center;display:flex}.chain-verification-control{flex-wrap:wrap;gap:.7rem;min-width:0}.chain-endpoint-status{max-width:28rem;color:var(--muted);gap:.45rem;margin:0;font-size:.78rem;line-height:1.4}.chain-endpoint-status[data-status=success]{color:var(--ok)}.chain-endpoint-status[data-status=warning]{color:var(--warn)}.chain-endpoint-status[data-status=error]{color:var(--err)}.chain-endpoint-status-icon{width:1.05rem;height:1.05rem;font-family:var(--font-mono);border:1px solid;border-radius:50%;flex:none;place-items:center;font-size:.68rem;font-weight:600;line-height:1;display:inline-grid}.chain-watch-toggle{color:var(--text-secondary);cursor:pointer;gap:.55rem;margin-left:auto}.chain-watch-toggle input{width:1rem;height:1rem;accent-color:var(--focus);margin:0}.chain-watch-toggle strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500;display:block}@media (width<=44rem){.chain-configuration-fields{grid-template-columns:1fr;margin-left:0}.chain-warning{margin-left:0}.chain-backup-rpc{flex-direction:column;align-items:flex-start}.chain-configuration-actions{flex-wrap:wrap;align-items:flex-start}.chain-watch-toggle{width:100%;margin-left:0}}.signer-tabs .step{justify-content:center;padding-inline:.6rem}.signer-method-summary{margin-top:.85rem;display:block}.signer-method-summary strong{font-size:.8125rem;font-weight:500;display:block}.signer-method-summary p,.credential-note{color:var(--muted);margin:.18rem 0 0;font-size:.75rem;line-height:1.5}.signer-credentials{margin-top:1.2rem}.signer-credentials .field:first-child{margin-top:0}.signer-key-validation{align-items:center;gap:.45rem;margin-top:.55rem;font-size:.75rem;line-height:1.45;display:flex}.signer-key-validation-empty,.signer-key-validation-checking{color:var(--muted)}.signer-key-validation-invalid,.signer-key-validation-error{color:var(--err)}.signer-key-validation-valid{color:var(--ok)}.signer-key-validation-icon{flex:none;place-items:center;width:1rem;height:1rem;line-height:0;display:inline-grid}.signer-key-validation-icon svg{width:.9rem;height:.9rem}.signer-key-validation-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:.75rem;height:.75rem;animation:.7s linear infinite signer-key-spin}.signer-key-validation-dot{background:currentColor;border-radius:50%;width:.4rem;height:.4rem}@keyframes signer-key-spin{to{transform:rotate(360deg)}}.filler-address-callout{background:#4adeff0b;border:1px solid #4adeff4d;border-radius:.85rem;margin-top:1rem;padding:.9rem;box-shadow:inset 3px 0 #4adeffa6}.filler-address-heading{align-items:flex-start;gap:.65rem;display:flex}.filler-address-status{width:1.5rem;height:1.5rem;color:var(--focus);background:#4adeff1f;border-radius:50%;flex:none;place-items:center;display:grid}.filler-address-status svg{width:.85rem;height:.85rem}.filler-address-heading strong{color:var(--text);font-size:.8125rem;font-weight:500;display:block}.filler-address-heading p{color:var(--text-secondary);margin:.15rem 0 0;font-size:.75rem;line-height:1.45}.filler-address-value{border:1px solid var(--border-strong);background:var(--control);border-radius:.65rem;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.75rem;padding:.65rem .7rem .65rem .8rem;display:flex}.filler-address-value code{min-width:0;color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.8125rem;line-height:1.45}.signer-step .filler-address-value button{border-color:var(--border-strong);background:var(--card-raised);align-items:center;gap:.4rem;min-height:2rem;padding:.35rem .55rem;font-size:.75rem;display:inline-flex}.filler-address-value button svg{width:.9rem;height:.9rem}.chain-configuration-header{cursor:pointer}.chain-configuration-header:hover{background:#ffffff09}.chain-header-controls{align-items:center;gap:.75rem;display:flex}.chain-collapse-trigger{width:2rem;height:2rem;min-height:2rem;color:var(--muted);background:0 0;border:0;padding:0}.chain-collapse-trigger:hover:not(:disabled){color:var(--text);background:0 0;border:0}.chain-collapse-trigger svg{width:1rem;height:1rem;transition:transform .18s var(--ease-out)}.chain-collapse-trigger[data-state=open] svg{transform:rotate(180deg)}.hint-link{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong);text-underline-offset:.2em;align-items:center;gap:.2rem;display:inline-flex}.hint-link:hover{text-decoration-color:currentColor}.hint-link svg{width:.85em;height:.85em}.treasury-heading,.vault-editor-heading,.vault-editor-actions,.vault-row,.vault-selection,.vault-row-actions{align-items:center;display:flex}.treasury-heading,.vault-editor-heading{justify-content:space-between;gap:1.25rem}.treasury-heading{align-items:flex-start}.treasury-heading h2{letter-spacing:-.02em;margin:.3rem 0 .25rem;font-size:1.05rem;font-weight:500}.treasury-heading .hint{margin:0}.treasury-selected-count{color:var(--focus);font-family:var(--font-mono);letter-spacing:.035em;background:#4adeff0e;border:1px solid #4adeff3d;border-radius:999px;flex:none;padding:.35rem .55rem;font-size:.625rem}.treasury-flow{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.4rem;padding:1rem 0;display:grid}.treasury-flow>div{border-left:1px solid var(--border);grid-template-columns:auto 1fr;gap:.12rem .65rem;padding:0 1rem;display:grid}.treasury-flow>div:first-child{border-left:0;padding-left:0}.treasury-flow>div:last-child{padding-right:0}.treasury-flow span{color:var(--muted);font-family:var(--font-mono);grid-row:1/3;font-size:.625rem;line-height:1.6}.treasury-flow strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.treasury-flow small{color:var(--muted);font-size:.6875rem;line-height:1.4}.vault-editor{margin-top:1.6rem}.vault-editor-heading{align-items:flex-end}.vault-editor-heading h3{margin:0;font-size:.9375rem;font-weight:500}.vault-editor-heading p{color:var(--muted);margin:.2rem 0 0;font-size:.75rem;line-height:1.45}.vault-editor-actions{flex:none;gap:.75rem}.vault-list{border-top:1px solid var(--border);margin-top:1rem}.vault-item{border-bottom:1px solid var(--border);transition:background-color .18s var(--ease-out)}.vault-item[data-selected=true]{background:linear-gradient(90deg,#4adeff0b,#0000 74%)}.vault-row{justify-content:space-between;gap:1rem;min-height:4.75rem;padding:.7rem 1rem}.vault-selection{cursor:pointer;flex:1;gap:.8rem;min-width:0;position:relative}.vault-selection>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.vault-selection-indicator{border:1px solid var(--border-strong);background:var(--control);color:#0000;width:1.15rem;height:1.15rem;transition:border-color .18s var(--ease-out), background-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:.35rem;flex:none;place-items:center;display:grid}.vault-selection-indicator svg{width:.75rem;height:.75rem}.vault-selection>input:focus-visible+.vault-selection-indicator{border-color:var(--focus);box-shadow:0 0 0 3px #4adeff24}.vault-selection>input:checked+.vault-selection-indicator{border-color:var(--focus);background:var(--focus);color:#081115}.vault-logo-stack{flex:none;width:2.65rem;height:2.25rem;display:block;position:relative}.vault-logo-stack .chain-logo{width:2.1rem;height:2.1rem}.vault-logo-stack .token-icon{width:1.2rem;height:1.2rem;box-shadow:0 0 0 2px var(--bg);position:absolute;bottom:0;right:0}.vault-row-copy{gap:.16rem;min-width:0;display:grid}.vault-row-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;overflow:hidden}.vault-row-copy small{color:var(--muted);font-size:.75rem}.vault-row-actions{flex:none;gap:.25rem}.vault-icon-action{width:2rem;height:2rem;color:var(--muted);border-radius:50%;place-items:center;text-decoration:none;background:0 0!important;border:1px solid #0000!important;min-height:2rem!important;padding:0!important;display:grid!important}.vault-icon-action:hover{color:var(--text);border-color:var(--border-strong)!important;background:var(--card-raised)!important}.vault-icon-action svg{width:.95rem;height:.95rem}.vault-settings-collapsible{overflow:hidden}.vault-settings-collapsible[data-state=open]{animation:vault-settings-open .2s var(--ease-out)}.vault-settings-collapsible[data-state=closed]{animation:vault-settings-close .16s var(--ease-out)}@keyframes vault-settings-open{0%{opacity:0;height:0}to{height:var(--radix-collapsible-content-height);opacity:1}}@keyframes vault-settings-close{0%{height:var(--radix-collapsible-content-height);opacity:1}to{opacity:0;height:0}}.vault-settings-grid{grid-template-columns:minmax(10rem,12rem) minmax(12rem,15rem) minmax(14rem,1fr);align-items:end;gap:.9rem;margin:0 1rem;padding:.2rem 0 1rem 5.3rem;display:grid}.vault-settings-grid .field{margin:0}.field.vault-amount-field>.vault-field-label{color:var(--text-secondary);justify-content:flex-start;align-items:center;gap:.35rem;margin-bottom:.45rem;font-size:.8125rem;font-weight:500;line-height:1.4;display:flex}.vault-info-trigger,.vault-info-trigger:hover:not(:disabled),.vault-info-trigger:active:not(:disabled){width:1rem;height:1rem;min-height:1rem;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0;transform:none}.vault-info-trigger:hover:not(:disabled),.vault-info-trigger:focus-visible{color:var(--text);background:0 0}.vault-info-trigger:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.vault-info-trigger svg{width:1rem;height:1rem}.simplex-tooltip-content{z-index:1200;border:1px solid var(--border-strong);background:var(--card-raised);max-width:18rem;color:var(--text-secondary);font-family:var(--font-sans);border-radius:.55rem;padding:.6rem .75rem;font-size:.75rem;line-height:1.45;box-shadow:0 .75rem 2rem #00000059}.simplex-tooltip-content p{margin:0}.simplex-tooltip-content>svg{color:var(--card-raised);fill:var(--card-raised)}.vault-redeem-toggle{min-height:3rem;color:var(--text-secondary);cursor:pointer;align-items:center;gap:.65rem;display:flex}.vault-redeem-toggle input{width:1rem;height:1rem;accent-color:var(--focus);margin:0}.vault-redeem-toggle>span{gap:.12rem;display:grid}.vault-redeem-toggle strong{font-size:.75rem;font-weight:500}.vault-redeem-toggle small{color:var(--muted);font-size:.6875rem;line-height:1.35}.vault-custom-identity{cursor:default}.vault-custom-actions{gap:.45rem}.vault-empty-state{padding:1.2rem .3rem}.vault-empty-state strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.vault-empty-state p{color:var(--muted);margin:.2rem 0 0;font-size:.75rem}.vault-custom-modal{padding-top:1.2rem}.vault-custom-primary-fields,.vault-custom-balance-fields{grid-template-columns:minmax(10rem,.75fr) minmax(14rem,1.25fr);gap:.8rem;display:grid}.vault-custom-balance-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-custom-primary-fields .field,.vault-custom-balance-fields .field{margin:0 0 1rem}.vault-custom-redeem{border-top:1px solid var(--border);padding:.85rem 0}.vault-groups{margin-top:1rem}.vault-group,.vault-others{border:1px solid var(--border);border-radius:.9rem;margin-top:.9rem;overflow:hidden}.vault-group-head,button.vault-others-trigger{background:#ffffff05;justify-content:space-between;align-items:center;gap:1rem;min-height:3.5rem;padding:.6rem 1rem;display:flex}.vault-group-identity{text-align:left;align-items:center;gap:.75rem;min-width:0;display:flex}.vault-group-identity .chain-logo{width:2rem;height:2rem}.vault-group-identity strong{color:var(--text);font-size:.875rem;font-weight:500;display:block}.vault-group-identity small{color:var(--muted);margin-top:.1rem;font-size:.75rem;display:block}.vault-group[data-locked=true] .vault-group-identity{opacity:.6}.vault-group-status{flex:none;align-items:center;gap:.75rem;display:flex}.vault-status-pill{border:1px solid var(--border-strong);background:var(--control);color:var(--muted);font-family:var(--font-mono);letter-spacing:.035em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .6rem;font-size:.625rem;display:inline-flex}.vault-status-pill[data-tone=ok]{color:var(--ok);background:#74e9980f;border-color:#74e9984d}.vault-status-dot{background:currentColor;border-radius:50%;width:.45rem;height:.45rem}button.vault-enable-link{min-height:2rem;color:var(--focus);border:0;gap:.3rem;padding:0;font-size:.75rem;font-weight:500;background:0 0!important}button.vault-enable-link:hover:not(:disabled){color:var(--text)}button.vault-enable-link svg{width:.75rem;height:.75rem}.vault-group .vault-item:last-child{border-bottom:0}.vault-group .vault-row{min-height:4rem}.vault-logo-token{flex:none;place-items:center;width:2rem;height:2rem;display:grid}.vault-logo-token .token-icon{width:1.7rem;height:1.7rem}.vault-item[data-disabled=true] .vault-selection{cursor:not-allowed}.vault-item[data-disabled=true] .vault-logo-token,.vault-item[data-disabled=true] .vault-selection-indicator,.vault-item[data-disabled=true] .vault-row-copy strong{opacity:.5}button.vault-others-trigger{width:100%;min-height:4.25rem;color:var(--text);border:0;border-radius:0;background:#ffffff05!important}button.vault-others-trigger:hover:not(:disabled){background:#ffffff0a!important}.vault-others-logos{align-items:center;padding-left:.45rem;display:flex}.vault-others-logos .chain-logo{width:1.6rem;height:1.6rem;box-shadow:0 0 0 2px var(--bg);margin-left:-.45rem}.vault-others-chevron{width:2rem;height:2rem;color:var(--muted);transition:transform .18s var(--ease-out);place-items:center;display:grid}.vault-others-chevron svg{width:1rem;height:1rem}.vault-others-trigger[data-state=open] .vault-others-chevron{transform:rotate(180deg)}.vault-others .vault-group{border:0;border-top:1px solid var(--border);border-radius:0;margin:0}.vault-panel-summary{justify-content:space-between;align-items:center;gap:1rem;margin-top:.5rem;display:flex}.vault-panel-stat{color:var(--muted);font-family:var(--font-mono);letter-spacing:.035em;font-size:.6875rem}button.vault-panel-action{min-height:2.25rem;padding:.4rem .75rem;font-size:.75rem}.substrate-card{width:100%}.substrate-account-options{grid-template-columns:minmax(12rem,.75fr) minmax(0,1.25fr);gap:2.5rem;display:grid}.substrate-account-option{min-width:0}.substrate-import-option{border-left:1px solid var(--border);padding-left:2.5rem}.substrate-account-option h3,.substrate-section-heading h3{color:var(--text);letter-spacing:-.015em;margin:0;font-size:.9375rem;font-weight:500}.substrate-account-option>p,.substrate-section-heading p{color:var(--muted);margin:.35rem 0 0;font-size:.75rem;line-height:1.5}.substrate-card .substrate-generate-button{min-height:2.85rem;margin-top:1.2rem;padding-inline:1rem}.substrate-import-option .field{margin:1.05rem 0 0}.substrate-address,.substrate-connection,.substrate-balance{border-top:1px solid var(--border);margin-top:2rem;padding-top:1.5rem}.substrate-address{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem 1rem;display:grid}.substrate-address>div{gap:.4rem;min-width:0;display:grid}.substrate-address>div>span{color:var(--muted);font-size:.75rem;font-weight:500}.substrate-address code{color:var(--text);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:.875rem;font-weight:500;line-height:1.5}.substrate-card button.substrate-copy-button{min-height:auto;color:var(--text-secondary);background:0 0;border:0;padding:.35rem 0}.substrate-card button.substrate-copy-button:hover:not(:disabled){color:var(--text);background:0 0}.substrate-address-status{color:var(--muted);grid-column:1/-1;margin:0;font-size:.75rem;line-height:1.45}.substrate-address-status[data-state=copied]{color:var(--ok)}.substrate-address-status[data-state=failed]{color:var(--err)}.substrate-connection .field{margin:1rem 0 0}.substrate-balance{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem;display:grid}.substrate-card button.substrate-balance-button{border-color:var(--border-strong);background:var(--card-raised)}.substrate-card button.substrate-balance-button:hover:not(:disabled){background:oklch(32.27% .02 273.23);border-color:#ffffff42}.substrate-balance-state{grid-column:1/-1;align-items:flex-start;gap:.65rem;display:flex}.substrate-balance-state>span{background:var(--warn);border-radius:50%;flex:none;width:.45rem;height:.45rem;margin-top:.34rem}.substrate-balance-state strong{color:var(--text-secondary);font-size:.8125rem;font-weight:500;display:block}.substrate-balance-state p{color:var(--muted);margin:.15rem 0 0;font-size:.75rem;line-height:1.45}.substrate-balance-state[data-state=funded]>span{background:var(--ok)}label.field,.field{margin:1rem 0;font-size:.875rem;display:block}label.field>span,.field>span:first-child{color:var(--text-secondary);margin-bottom:.45rem;font-size:.8125rem;font-weight:500;line-height:1.4;display:block}.field>.field-label,label.field>.field-label{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.field-required{color:var(--err);font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;flex:none;font-size:.625rem;font-weight:500;line-height:1}.field-label-required-mark{justify-content:flex-start!important;gap:.2rem!important}.field-required-mark{color:var(--err);font-family:var(--font-mono);font-size:.9rem;font-weight:600;line-height:1}input[type=text],input[type=password],input[type=number]{border:1px solid var(--border);background:var(--control);width:100%;min-height:3rem;color:var(--text);transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out), background-color .18s var(--ease-out);border-radius:.75rem;padding:.7rem .9rem;font-size:.875rem}input:hover{border-color:var(--border-strong);background:var(--card-raised)}.app-select-trigger{border:1px solid var(--border);background:var(--control);width:100%;min-height:3rem;color:var(--text);box-shadow:none;border-radius:.75rem;justify-content:space-between;align-items:center;padding:.7rem .9rem;font-size:.875rem;font-weight:400;display:flex}.app-select-trigger:hover:not(:disabled),.app-select-trigger[data-state=open]{border-color:var(--border-strong);background:var(--card-raised)}.app-select-trigger:active:not(:disabled){transform:none}.app-select-trigger:focus-visible{border-color:var(--focus);box-shadow:0 0 0 3px #4adeff24}.app-select-current{align-items:center;gap:.65rem;min-width:0;display:flex}.app-select-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-select-current-text{text-align:left;gap:.1rem;min-width:0;display:grid}.app-select-caption{color:var(--muted);font-size:.625rem}.app-select-chevron{color:var(--muted);transition:transform .16s var(--ease-out);flex:none;place-items:center;display:grid}.app-select-trigger[data-state=open] .app-select-chevron{transform:rotate(180deg)}.app-select-chevron svg{width:1rem;height:1rem}.app-select-content{z-index:2000;width:var(--radix-select-trigger-width);max-height:min(22rem, var(--radix-select-content-available-height), calc(100dvh - 1.5rem));border:1px solid var(--border-strong);background:var(--card-raised);color:var(--text);transform-origin:var(--radix-select-content-transform-origin);animation:app-select-in .14s var(--ease-out);border-radius:.8rem;overflow:hidden;box-shadow:0 1rem 3rem #0000007a}.app-select-header{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .95rem .5rem;font-size:.5625rem;display:flex}.app-select-viewport{padding:.35rem}.app-select-item{min-height:2.75rem;color:var(--text-secondary);cursor:default;-webkit-user-select:none;user-select:none;border-radius:.55rem;outline:none;align-items:center;gap:.65rem;padding:.5rem .6rem;font-size:.875rem;font-weight:500;display:flex;position:relative}.app-select-item[data-rich]{grid-template-columns:auto minmax(0,1fr) auto 1rem;display:grid}.app-select-item-text{gap:.12rem;min-width:0;display:grid}.app-select-item-text>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-select-item-description{color:var(--muted);align-items:center;gap:.35rem;font-size:.625rem;font-weight:400;display:flex}.app-select-item-trailing{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;font-size:.75rem}.app-select-item[data-state=checked] .app-select-item-trailing{color:var(--text)}.app-select-item[data-highlighted]{background:color-mix(in srgb, var(--focus) 9%, var(--card-raised));color:var(--text)}.app-select-item[data-state=checked]{color:var(--text)}.app-select-item[data-disabled]{opacity:.45;pointer-events:none}.app-select-item[data-muted]{color:var(--muted)}.app-select-indicator{color:var(--focus);place-items:center;margin-left:auto;display:grid}.app-select-indicator svg{width:1rem;height:1rem}.app-select-separator{background:var(--border);height:1px;margin:.3rem .4rem}@keyframes app-select-in{0%{opacity:0;transform:translateY(-.25rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}input::placeholder{color:#68717e}input[type=radio],input[type=checkbox]{width:1.05rem;height:1.05rem;accent-color:var(--focus);margin:0}button{border:1px solid var(--border);background:var(--card-raised);min-height:2.75rem;color:var(--text);cursor:pointer;transition:transform .12s var(--ease-out), background-color .18s var(--ease-out), border-color .18s var(--ease-out), color .18s var(--ease-out);border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}button:hover:not(:disabled){border-color:var(--border-strong);background:oklch(32.27% .02 273.23)}button:active:not(:disabled){transform:scale(.97)}button.primary{background:var(--accent);color:var(--accent-text);border-color:#fff}button.primary:hover:not(:disabled){background:#f4f4f4;border-color:#f4f4f4}button.secondary{background:0 0}button:disabled{border-color:var(--border);background:var(--control);color:#68717e;cursor:not-allowed}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.spread{justify-content:space-between;align-items:center;gap:1rem;display:flex}.badge{border:1px solid var(--border);min-height:1.5rem;color:var(--muted);font-family:var(--font-mono);letter-spacing:.035em;text-transform:uppercase;border-radius:.45rem;align-items:center;padding:.2rem .5rem;font-size:.625rem;font-weight:500;line-height:1.2;display:inline-flex}.badge.ok{color:var(--ok);background:#74e9980f;border-color:#74e9982e}.badge.warn{color:var(--warn);background:#ffdb690f;border-color:#ffdb692e}.badge.err{color:var(--err);background:#ff7a890f;border-color:#ff7a8933}.steps{border:1px solid var(--border);background:var(--control);border-radius:.9rem;gap:.25rem;max-width:100%;margin:.75rem 0 1.25rem;padding:.25rem;display:inline-flex;overflow-x:auto}.steps .step{min-height:2.35rem;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:.65rem;padding:.45rem .8rem}.steps .step:hover:not(:disabled){color:var(--text-secondary);background:#ffffff09}.step-count{font-family:var(--font-mono);opacity:.8;font-size:.6875rem;font-weight:500}.steps .step.active{background:var(--card-raised);color:var(--text);box-shadow:0 0 0 1px var(--border)}table{border-collapse:collapse;width:100%;font-size:.8125rem}th,td{border-bottom:1px solid var(--border);text-align:left;padding:.65rem .55rem}th{color:var(--muted);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.625rem;font-weight:500}td input{max-width:10rem}pre.toml{border:1px solid var(--border);background:var(--control);font-family:var(--font-mono);border-radius:.75rem;padding:1rem;font-size:.75rem;line-height:1.6;overflow-x:auto}.error{color:var(--err);margin:.65rem 0;font-size:.8125rem;line-height:1.5}.warning{color:var(--warn);margin:.65rem 0;font-size:.8125rem;line-height:1.5}.recovery-dialog{z-index:51;border:1px solid var(--border-strong);width:min(100% - 2rem,38rem);max-height:calc(100dvh - 2rem);color:var(--text);background:#1c1e23;border-radius:1.25rem;padding:0;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 2rem 6rem #00000085}.recovery-dialog-header{border-bottom:1px solid var(--border);padding:1.5rem 1.5rem 1.25rem}.recovery-dialog-header h2{letter-spacing:-.035em;margin:.55rem 0 .5rem;font-size:1.5rem;font-weight:500}.recovery-dialog-header p{max-width:31rem;color:var(--muted);margin:0;font-size:.8125rem;line-height:1.55}.recovery-warning{background:#ffdb690e;border:1px solid #ffdb6933;border-radius:.75rem;align-items:flex-start;gap:.7rem;margin:1.25rem 1.5rem 0;padding:.8rem .9rem;display:flex}.recovery-warning>span{width:1.25rem;height:1.25rem;color:var(--warn);font-family:var(--font-mono);border:1px solid #ffdb6973;border-radius:50%;flex:0 0 1.25rem;place-items:center;font-size:.6875rem;font-weight:500;display:grid}.recovery-warning p{color:var(--text-secondary);margin:0;font-size:.75rem;line-height:1.5}.recovery-warning strong{color:var(--warn);font-weight:500}.recovery-words{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:1.25rem 1.5rem 0;padding:0;list-style:none;display:grid}.recovery-words li{border:1px solid var(--border);background:var(--control);border-radius:.65rem;grid-template-columns:1.5rem minmax(0,1fr);align-items:center;min-height:2.75rem;padding:.55rem .7rem;display:grid}.recovery-words li>span{color:#68717e;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.625rem}.recovery-words li>strong{font-family:var(--font-mono);text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.recovery-copy-row{align-items:center;gap:.75rem;min-height:2.75rem;margin:.85rem 1.5rem 0;display:flex}.recovery-copy-row button{min-height:2.5rem;padding-block:.5rem}.recovery-copy-status{color:var(--err);font-size:.6875rem;line-height:1.4}.recovery-copy-status[data-state=copied]{color:var(--ok)}.recovery-acknowledgement{color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:.7rem;margin:1.25rem 1.5rem;font-size:.8125rem;line-height:1.45;display:flex}.recovery-acknowledgement input{flex:none;margin-top:.1rem}.recovery-dialog-footer{border-top:1px solid var(--border);background:#ffffff03;justify-content:flex-end;padding:1rem 1.5rem 1.25rem;display:flex}.recovery-dialog-footer button{min-width:9rem}.footer-nav{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;padding-top:1.25rem;display:flex}.footer-nav>:first-child{margin-right:auto}.wizard-requirements{min-width:0;max-width:24rem;color:var(--warn);align-items:flex-start;gap:.55rem;margin-left:auto;display:flex}.wizard-requirements-icon{width:1.1rem;height:1.1rem;font-family:var(--font-mono);border:1px solid;border-radius:50%;flex:none;place-items:center;margin-top:.05rem;font-size:.65rem;line-height:1;display:inline-grid}.wizard-requirements strong,.wizard-requirements ul{display:block}.wizard-requirements strong{font-size:.75rem;font-weight:500;line-height:1.2}.wizard-requirements ul{color:var(--text-secondary);gap:.12rem;margin:.22rem 0 0;padding:0;font-size:.75rem;line-height:1.4;list-style:none;display:grid}.wizard-requirements li:before{content:"•";color:var(--warn);margin-right:.38rem}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;word-break:break-all;font-size:.85em}.operator-container{width:100%}.operator-shell{-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#131417e0;height:100dvh;min-height:100dvh;overflow:hidden}.operator-brandbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:4.5rem;padding:0 1.4rem;display:flex}.operator-brand{align-items:center;gap:.7rem;font-size:1.05rem;font-weight:500;display:flex}.operator-brand img.hyperfx-logo{object-fit:contain;width:7rem;height:auto}.operator-environment-trigger{min-height:2.35rem;color:var(--text-secondary);background:0 0;border-color:#0000;padding:.4rem .65rem;font-size:.75rem}.operator-environment-trigger:hover:not(:disabled){background:var(--card-raised)}.operator-environment-trigger svg{width:1rem;height:1rem;color:var(--muted)}.operator-status-dot{background:var(--ok);border-radius:50%;flex:none;width:.45rem;height:.45rem;box-shadow:0 0 0 .25rem #74e99814}.operator-status-dot.warn{background:var(--warn);box-shadow:0 0 0 .25rem #ffdb6914}.operator-layout{grid-template-columns:16rem minmax(0,1fr);height:calc(100dvh - 4.5rem);min-height:0;display:grid}.operator-sidebar{border-right:1px solid var(--border);background:#ffffff04;flex-direction:column;min-height:0;padding:1.5rem 1rem 1.1rem;display:flex}.operator-sidebar nav{gap:.25rem;min-height:0;display:grid;overflow-y:auto}button.operator-nav-item{min-height:3.65rem;color:var(--muted);text-align:left;background:0 0;border-color:#0000;grid-template-columns:1.35rem minmax(0,1fr);justify-content:start;gap:.75rem;padding:.65rem .75rem;display:grid}button.operator-nav-item:hover:not(:disabled){color:var(--text-secondary);background:#ffffff06;border-color:#0000}button.operator-nav-item[data-active=true]{background:var(--card-raised);box-shadow:inset 0 0 0 1px var(--border);color:var(--text)}.operator-nav-item>svg{width:1.15rem;height:1.15rem;margin-top:.08rem}.operator-nav-item>span{gap:.13rem;min-width:0;display:grid}.operator-nav-item strong{font-size:.8125rem;font-weight:500}.operator-nav-item small{color:var(--muted);font-size:.6875rem;font-weight:400}.operator-sidebar-footer{border-top:1px solid var(--border);color:var(--muted);font-family:var(--font-mono);letter-spacing:.03em;justify-content:space-between;gap:.5rem;margin-top:auto;padding:1rem .65rem 0;font-size:.625rem;display:flex}.operator-main{--page-inset:clamp(1.5rem, 4.5vw, 4rem);min-width:0;min-height:0;padding:3rem var(--page-inset) 4rem;overscroll-behavior:contain;scrollbar-gutter:stable;overflow-y:auto}.operator-page-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:2rem;padding-bottom:2rem;display:flex}.operator-page-header h1{letter-spacing:-.055em;margin:.55rem 0 .45rem;font-size:clamp(2.2rem,5vw,3.3rem);font-weight:500;line-height:1}.operator-page-header p{max-width:38rem;color:var(--muted);margin:0;font-size:.875rem;line-height:1.55}.operator-page-content,.operator-overview{display:block}.operator-metrics{border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:1.65rem 0;display:grid}.operator-metrics>*{border-left:1px solid var(--border);align-content:start;gap:.45rem;min-width:0;padding:0 1.25rem;display:grid}.operator-metrics>:first-child{border-left:0;padding-left:0}.operator-metrics span,.operator-balance-value span{color:var(--muted);font-size:.6875rem}.operator-metrics strong{letter-spacing:-.035em;text-overflow:ellipsis;font-size:clamp(1.25rem,2.2vw,1.65rem);font-weight:500;overflow:hidden}.operator-alert{border-left:2px solid var(--err);background:#ff7a8909;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.5rem;padding:.9rem 0 .9rem 1rem;display:flex}.operator-alert strong{font-size:.8125rem;font-weight:500}.operator-alert p{color:var(--muted);margin:.2rem 0 0;font-size:.75rem}.operator-section{border-bottom:1px solid var(--border);padding:2rem 0}.operator-section-heading{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1rem;display:flex}.operator-section-heading:last-child{margin-bottom:0}.operator-section-heading h2{margin:.35rem 0 0;font-size:1.15rem;font-weight:500}.operator-section-heading small{color:var(--muted);font-family:var(--font-mono);font-size:.625rem}button.operator-text-button{min-height:2.25rem;color:var(--text-secondary);background:0 0;border:0;padding:0;font-size:.75rem}button.operator-text-button:hover:not(:disabled){color:var(--text);background:0 0}button.limit-order-new-button{white-space:nowrap;border-radius:999px;align-items:center;gap:.45rem;min-height:2.25rem;padding:0 1rem;font-size:.8rem;font-weight:600;display:inline-flex}button.limit-order-new-button>span{font-size:1rem;line-height:1}.operator-tool-list{border-top:1px solid var(--border)}.operator-tool-list>:last-child,button.operator-tool-row:last-child{border-bottom:0}.operator-balance-heading-aside{align-items:center;gap:.75rem;display:flex}.operator-network-switcher .app-select-trigger{width:auto;min-width:15rem}.app-select-content.operator-network-menu{width:min(24rem,100vw - 1.5rem)}.operator-network-switcher .chain-logo,.operator-network-menu .chain-logo{width:1.5rem;height:1.5rem}.operator-balance-focus{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;padding-top:1.1rem;display:flex}.operator-balance-focus-network{min-width:0;color:var(--muted);font-size:.75rem}.operator-balance-focus-network strong{color:var(--text);font-weight:500}.operator-balance-focus .operator-balance-value{border:1px solid var(--border);background:#ffffff06;border-radius:999px;align-items:center;gap:.55rem;padding:.45rem .65rem;display:flex}.operator-balance-notice{border-left:2px solid var(--warn);background:color-mix(in srgb, var(--warn) 5%, transparent);align-items:baseline;gap:.65rem;margin-bottom:1rem;padding:.75rem .9rem;font-size:.75rem;display:flex}.operator-balance-notice strong{font-weight:500}.operator-balance-notice span,.operator-balance-missing{color:var(--muted)}.operator-asset-balances{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:.85rem;min-width:0;display:grid}.operator-asset-balance{--token-accent:#7d8ca5;border:1px solid var(--border);background:linear-gradient(145deg, color-mix(in srgb, var(--token-accent) 7%, transparent), transparent 45%), color-mix(in srgb, var(--surface) 72%, transparent);border-radius:.9rem;gap:1rem;min-width:0;padding:1rem;display:grid;position:relative;overflow:hidden;box-shadow:0 .8rem 2.4rem #00000014}.operator-asset-balance:before{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--token-accent) 80%, white), transparent);content:"";height:1px;position:absolute;top:0;left:1rem;right:1rem}.operator-asset-balance[data-token=usdc]{--token-accent:#2775ca}.operator-asset-balance[data-token=usdt]{--token-accent:#26a17b}.operator-asset-balance[data-token=cngn]{--token-accent:#7c4dff}.operator-asset-balance[data-token=dai]{--token-accent:#f4b731}.operator-asset-balance[data-token=eurc]{--token-accent:#5a6edb}.operator-asset-balance[data-status=partial],.operator-asset-balance[data-status=unavailable]{--token-accent:var(--warn)}.operator-asset-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.operator-token-identity{align-items:center;gap:.7rem;min-width:0;display:flex}.operator-token-icon{border:1px solid color-mix(in srgb, var(--token-accent) 38%, var(--border));background:color-mix(in srgb, var(--token-accent) 10%, #ffffff06);width:2.75rem;height:2.75rem;box-shadow:0 0 1.5rem color-mix(in srgb, var(--token-accent) 10%, transparent);border-radius:50%;place-items:center;display:grid}.operator-token-identity>span:last-child{gap:.2rem;display:grid}.operator-token-identity strong{font-size:.875rem;font-weight:500}.operator-token-identity small{color:var(--muted);font-size:.625rem}.operator-asset-total{text-align:right;gap:.25rem;min-width:0;display:grid}.operator-asset-total span{color:var(--muted);font-size:.625rem}.operator-asset-total strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;font-size:1.125rem;font-weight:500;overflow:hidden}.operator-asset-breakdown{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding-top:.8rem;display:grid}.operator-asset-breakdown>div{gap:.3rem;min-width:0;display:grid}.operator-asset-breakdown>div+div{border-left:1px solid var(--border);padding-left:1rem}.operator-asset-breakdown dt{color:var(--muted);font-size:.625rem}.operator-balance-note{color:var(--warn);font-family:var(--font-sans);margin-top:.2rem;font-size:.625rem;display:block}.operator-asset-breakdown dd{color:var(--text-secondary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;margin:0;font-size:.8125rem;overflow:hidden}.operator-asset-available{border:1px solid color-mix(in srgb, var(--token-accent) 22%, var(--border));background:color-mix(in srgb, var(--token-accent) 7%, transparent);border-radius:.65rem;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .75rem;display:flex}.operator-asset-available span{color:var(--text-secondary);align-items:center;gap:.45rem;font-size:.6875rem;display:flex}.operator-asset-available i{background:var(--token-accent);width:.4rem;height:.4rem;box-shadow:0 0 .7rem color-mix(in srgb, var(--token-accent) 65%, transparent);border-radius:50%}.operator-asset-available strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:500;overflow:hidden}.operator-balance-value,.operator-tool-row>span{gap:.18rem;min-width:0;display:grid}.operator-balance-value strong{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;overflow:hidden}button.operator-tool-row{border:0;border-bottom:1px solid var(--border);width:100%;min-height:5rem;color:var(--text);text-align:left;background:0 0;border-radius:0;align-items:center;padding:.75rem 0;display:grid}button.operator-tool-row:hover:not(:disabled){background:#ffffff05}.operator-tool-row>svg{width:1rem;height:1rem;color:var(--muted)}.operator-tool-row strong{font-size:.875rem;font-weight:500}.operator-tool-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:400;overflow:hidden}.operator-market-mode,.operator-market-cap,.operator-tool-row em{color:var(--text-secondary);font-size:.75rem;font-style:normal;font-weight:400}.operator-market-prices{align-items:center;gap:.85rem;min-width:0;display:flex}.operator-market-price{gap:.12rem;min-width:0;display:grid}.operator-market-price small{color:var(--muted);font-size:.625rem}.operator-market-price strong{font-family:var(--font-mono);white-space:nowrap;font-size:.6875rem;font-weight:500}.operator-market-price em{color:var(--muted);font-family:var(--font-sans);font-size:.5625rem;font-style:normal;font-weight:400}.operator-market-cap,.operator-tool-row em{color:var(--muted);font-family:var(--font-mono);font-size:.625rem}.operator-empty{color:var(--muted);text-align:center;margin:0;padding:2.5rem 0;font-size:.8125rem}.operator-section table{border-top:1px solid var(--border)}.operator-section th,.operator-section td{padding-block:.8rem}.operator-tools{padding:2rem 0 0}button.operator-tool-row{grid-template-columns:minmax(12rem,1fr) max-content 1.2rem;gap:1.25rem;padding-left:1rem;padding-right:1rem}.operator-config-summary{grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr);align-items:center;gap:2rem;display:grid}.operator-config-summary h2{margin:.35rem 0 .3rem;font-size:1rem}.operator-config-summary p{color:var(--muted);margin:0;font-size:.75rem}.operator-config-summary code,.operator-config-block code{border:1px solid var(--border);background:var(--control);min-width:0;color:var(--text-secondary);font-family:var(--font-mono);overflow-wrap:anywhere;border-radius:.7rem;padding:.8rem .9rem;font-size:.75rem;line-height:1.5;display:block}.sheet-overlay{z-index:50;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);will-change:opacity;background:#04060aa8;position:fixed;inset:0}.sheet-overlay[data-state=open]{animation:sheet-overlay-in .24s var(--ease-out) both}.sheet-overlay[data-state=closed]{animation:.18s ease-in both sheet-overlay-out}.sheet-content{z-index:51;width:min(100%,40rem);height:100dvh;color:var(--text);border-left:1px solid var(--border-strong);will-change:transform;background:#1b1d22;flex-direction:column;display:flex;position:fixed;inset:0 0 0 auto;box-shadow:-2rem 0 6rem #0006}.sheet-content[data-state=open]{animation:.3s cubic-bezier(.16,1,.3,1) both sheet-in}.sheet-content[data-state=closed]{animation:.22s cubic-bezier(.4,0,1,1) both sheet-out}.sheet-content[data-wide=true]{width:min(100%,58rem)}@keyframes sheet-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes sheet-out{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes sheet-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-overlay-out{0%{opacity:1}to{opacity:0}}.sheet-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.75rem 2rem 1.5rem;display:flex}.sheet-header>div{min-width:0}.sheet-header h2{letter-spacing:-.035em;margin:.55rem 0 0;font-size:1.5rem;font-weight:500}.sheet-header p{max-width:38rem;color:var(--muted);margin:.35rem 0 0;font-size:.8125rem;line-height:1.5}.sheet-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:1.5rem 2rem 2.25rem;overflow-y:auto}.operator-detail-list{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));padding:1.4rem 0;display:grid}.operator-detail-list>div{border-left:1px solid var(--border);gap:.25rem;padding-left:1rem;display:grid}.operator-detail-list>div:first-child{border-left:0;padding-left:0}.operator-detail-list span,.operator-identity-row>span,.operator-config-block>span{color:var(--muted);font-size:.6875rem}.operator-detail-list strong{font-size:.875rem;font-weight:500}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.operator-identity-list{border-bottom:1px solid var(--border);padding:.5rem 0}.operator-identity-row{gap:.5rem;padding:1rem 0;display:grid}.operator-identity-row code{font-family:var(--font-mono);font-size:1rem;font-weight:500}.operator-config-block{gap:.55rem;padding-top:1.4rem;display:grid}.operator-runtime-state{border-bottom:1px solid var(--border);align-items:flex-start;gap:.85rem;padding:1.5rem 0;display:flex}.operator-runtime-state .operator-status-dot{margin-top:.35rem}.operator-runtime-state strong,.operator-action-section h3{font-size:.875rem;font-weight:500}.operator-runtime-state p,.operator-action-section p{color:var(--muted);margin:.25rem 0 0;font-size:.75rem;line-height:1.5}.operator-action-section,.operator-panel-form{border-bottom:1px solid var(--border);padding:1.5rem 0}.operator-action-section h3,.operator-panel-form h2{margin:0}.notification-settings .field{max-width:24rem}.notification-settings .field small,.notification-device>small{color:var(--muted);font-size:.72rem}.notification-settings .checkbox-row{align-items:flex-start;gap:.75rem;padding:.85rem 0;display:flex}.notification-settings .checkbox-row input{margin-top:.2rem}.notification-settings .checkbox-row span,.notification-device{gap:.3rem;display:grid}.notification-settings .checkbox-row small{color:var(--muted);font-weight:400;display:block}.notification-device{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.notification-device>button{width:fit-content}.operator-action-section button{margin-top:1rem}.operator-action-section.danger{border-bottom:0}.operator-action-section.danger h3{color:var(--err)}.operator-panel-form{border-bottom:0}.sheet-body>.operator-panel-form{padding-top:0}.operator-chain-settings{padding-top:.25rem}.operator-chain-save{border-top:1px solid var(--border);gap:.75rem;padding:1.25rem 0 .25rem;display:grid}.operator-chain-save .hint{margin:0}.operator-market-editor{border-top:0;gap:0;padding:0;display:grid}.operator-market-editor>.market-editor-heading{margin-bottom:0}.operator-market-summary{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.1rem;padding:.2rem 0 1.75rem;display:grid}.operator-market-summary .token-pair-icons{width:3.5rem;height:2.5rem}.operator-market-summary-venue{border-bottom:0;grid-template-columns:minmax(0,1fr);padding:.2rem 0 0}.operator-market-summary h3{letter-spacing:-.025em;margin:0;font-size:1.125rem;font-weight:500}.operator-market-summary p{max-width:38rem;color:var(--muted);margin:.4rem 0 0;font-size:.75rem;line-height:1.5}.operator-market-side-status,.operator-market-panel-value{color:var(--muted);font-family:var(--font-mono);white-space:nowrap;align-self:center;align-items:center;gap:.5rem;padding:0;font-size:.625rem;line-height:1.35;display:inline-flex}.operator-market-side-status:before{background:var(--focus);width:.4rem;height:.4rem;box-shadow:0 0 .75rem color-mix(in srgb, var(--focus) 55%, transparent);content:"";border-radius:50%}.operator-market-warning{border-left:2px solid var(--warn);background:linear-gradient(90deg, color-mix(in srgb, var(--warn) 5%, transparent), transparent 70%);gap:.25rem;margin:1.4rem 0 0;padding:.2rem 0 .2rem 1rem;display:grid}.operator-market-warning strong{font-size:.75rem;font-weight:500}.operator-market-warning span{color:var(--muted);font-size:.6875rem;line-height:1.5}.operator-market-panel,.operator-market-editor>.market-curves{border-bottom:1px solid var(--border);margin:0;padding:1.75rem 0}.operator-market-pricing-panel{border-bottom:0;padding-bottom:2rem}.operator-market-panel-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.operator-market-panel-heading h3{letter-spacing:-.02em;margin:0;font-size:1rem;font-weight:500}.operator-market-panel-description{max-width:36rem;color:var(--muted);margin:.6rem 0 0;font-size:.75rem;line-height:1.5}.operator-market-cap-controls{grid-template-columns:minmax(12rem,21rem) max-content;justify-content:start;align-items:end;gap:.75rem;margin-top:1.25rem;display:grid}.operator-market-cap-controls .market-limit-field{max-width:none;margin:0}.operator-market-cap-controls .market-limit-field small{color:var(--muted);font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;margin-left:.3rem;font-size:.5625rem;font-weight:500}.operator-market-cap-controls button{min-height:3rem}.operator-market-pricing-panel .market-curve-grid,.operator-market-editor>.market-curves .market-curve-grid{grid-template-columns:minmax(0,1fr);gap:0;margin-top:1.5rem}.operator-market-editor .market-curve{padding:0}.operator-market-editor .market-curve+.market-curve{border-top:1px solid var(--border);margin-top:1.75rem;padding-top:1.75rem}.operator-market-editor .market-curve-toggle{cursor:default;align-items:center;margin:0}.operator-market-editor .market-curve-toggle:has(input){cursor:pointer}.operator-market-direction-icon{place-items:center;width:2rem;height:2rem;display:grid}.operator-market-direction-copy{gap:.1rem!important;display:grid!important}.operator-market-direction-copy>small:first-child{color:var(--focus);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.5625rem;font-weight:500;line-height:1.2}.operator-market-direction-copy p{color:var(--muted);margin:0;font-size:.6875rem;line-height:1.45}.operator-market-editor .curve-editor{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.15fr) minmax(17rem,.85fr);align-items:start;gap:.75rem 1.5rem;margin-top:1.25rem;display:grid}.operator-market-editor .curve-editor-visual{background:linear-gradient(#4adeff09,#0000 70%),#ffffff03;border:0;border-radius:.4rem;grid-row:1/span 2;margin:0}.operator-market-editor .curve-editor-table{align-self:start}.operator-market-editor .curve-editor-footer{align-self:end;margin:0}.operator-market-editor .curve-editor-add{border:0;border-radius:0;min-height:2.25rem;padding:.35rem 0}.operator-market-add-side{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;margin-top:1.75rem;padding-top:1.25rem;display:flex}.operator-market-add-side>div{gap:.2rem;display:grid}.operator-market-add-side strong{font-size:.75rem;font-weight:500}.operator-market-add-side span{color:var(--muted);font-size:.6875rem;line-height:1.45}.operator-market-add-side button{min-height:2.25rem;color:var(--text-secondary);background:0 0;border-color:#0000;padding:.35rem 0}.operator-market-add-side button:hover:not(:disabled){color:var(--text);background:0 0;border-color:#0000}.operator-market-actions{border-top:1px solid var(--border);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#1b1d22f0;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;margin:0 -2rem -2.25rem;padding:1rem 2rem;display:flex}.operator-market-delete{color:var(--err);background:0 0;border-color:#0000;margin-right:auto}.operator-market-delete:hover:not(:disabled){border-color:color-mix(in srgb, var(--err) 25%, transparent);background:color-mix(in srgb, var(--err) 7%, transparent)}.operator-market-action-status{flex:1;justify-content:flex-end;min-width:8rem;display:flex}.market-custom-assets{gap:.65rem;margin-top:1rem;display:grid}.market-token-field{margin:0}.operator-send-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 .8rem;margin-top:1.25rem;display:grid}.operator-send-grid .field{margin:0 0 .9rem}.operator-send-balance{color:var(--muted);white-space:nowrap;align-items:baseline;gap:.35rem;font-size:.6875rem;font-weight:400;display:inline-flex}.operator-send-balance strong{color:var(--text-secondary);font-family:var(--font-mono);font-size:.6875rem;font-weight:500}.operator-send-balance[data-status=unavailable] strong{color:var(--warn)}.operator-send-wide,.operator-send-actions{grid-column:1/-1}.operator-send-actions{justify-content:flex-end;padding-top:.35rem;display:flex}.operator-send-tx-link{color:inherit;border-radius:.25rem;align-items:center;gap:.35rem;padding:.1rem .2rem;text-decoration:none;display:inline-flex}.operator-send-tx-link:hover{color:var(--text)}.operator-send-tx-link:focus-visible{outline:none;box-shadow:0 0 0 3px #4adeff24}.operator-send-tx-link svg{flex:none;width:.95rem;height:.95rem}.sheet-content .card{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:1.5rem 0}.sheet-content .card:last-child{border-bottom:0}@media (prefers-reduced-motion:reduce){.sheet-overlay[data-state],.sheet-content[data-state]{animation:none}}.bg-gradient-brand-animated{background:linear-gradient(90deg,#fff 0% 10%,#4adeff 29.71%,#ff35eb 78.68%,#ffed4a 100%) 0 0/200% 100%;animation:4s ease-in-out infinite brand-gradient-flow}.header-gradient{width:100%;height:3px;position:absolute;inset:0 auto auto 0}@keyframes brand-gradient-flow{0%,to{background-position:0%}50%{background-position:100%}}.history-table-scroll{overflow-x:auto}.history-table th,.history-table td{vertical-align:middle;padding:.85rem .75rem}.history-table th:first-child,.history-table td:first-child{padding-left:0}.history-table tbody tr{transition:background-color .16s var(--ease-out)}.history-table tbody tr:hover{background:#ffffff05}.history-referrer{color:var(--text);font-family:var(--font-mono);font-size:.8125rem}.history-referrer[data-empty=true]{color:var(--muted)}.history-status{justify-items:start;gap:.3rem;display:grid}.history-status .badge{text-transform:uppercase;letter-spacing:.04em}.history-status small{max-width:16rem;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;line-height:1.4;overflow:hidden}.history-status small[data-kind=winner]{color:var(--text-secondary);font-family:var(--font-mono);letter-spacing:.02em}.history-leg{align-items:center;gap:.6rem;min-width:0;display:flex}.history-leg-icon{flex:none;width:1.6rem;height:1.6rem;display:block;position:relative}.history-leg-icon .token-icon{width:1.6rem;height:1.6rem}.history-leg-icon .chain-logo{width:.85rem;height:.85rem;box-shadow:0 0 0 2px var(--bg);position:absolute;bottom:-.15rem;right:-.15rem}.history-leg-copy{gap:.1rem;min-width:0;display:grid}.history-leg-copy strong{color:var(--text);font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:0 .35rem;font-size:.8125rem;font-weight:500;display:flex}.history-leg-copy small{color:var(--muted);font-size:.6875rem}.history-user{font-family:var(--font-mono);font-size:.8125rem}.history-time{white-space:nowrap;gap:.1rem;display:grid}.history-time strong{color:var(--text);font-family:var(--font-mono);font-size:.8125rem;font-weight:500}.history-time small{color:var(--muted);font-family:var(--font-mono);font-size:.6875rem}.history-links{justify-content:flex-end;gap:.15rem;display:flex}.history-links a{width:1.9rem;height:1.9rem;color:var(--muted);transition:border-color .16s var(--ease-out), background-color .16s var(--ease-out), color .16s var(--ease-out);border:1px solid #0000;border-radius:50%;place-items:center;text-decoration:none;display:grid}.history-links a:hover{border-color:var(--border-strong);background:var(--card-raised);color:var(--text)}.history-links svg{width:.9rem;height:.9rem}.history-link-label{display:none}.history-misc{gap:.35rem;margin-top:1rem;display:grid}.history-misc li{color:var(--muted);align-items:center;gap:.75rem;font-size:.75rem;list-style:none;display:flex}.history-misc ul{margin:0;padding:0}.history-bids{white-space:nowrap;gap:.15rem;display:grid}.history-bids strong{color:var(--text);font-family:var(--font-mono);font-size:.8125rem;font-weight:500}.history-bids small{color:var(--muted);font-size:.6875rem}.history-bids small[data-tone=ok]{color:var(--ok)}.history-bids small[data-tone=err]{color:var(--err)}.history-pager{justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.history-pager>small{color:var(--muted);font-family:var(--font-mono);letter-spacing:.035em;font-size:.6875rem}.history-pager-pages{align-items:center;gap:.25rem;display:inline-flex}.history-pager-pages button{min-width:2.25rem;min-height:2.25rem;color:var(--muted);font-family:var(--font-mono);background:0 0;border-color:#0000;padding:.35rem .6rem;font-size:.75rem}.history-pager-pages button:hover:not(:disabled){color:var(--text);background:#ffffff09;border-color:#0000}.history-pager-pages button[data-active=true]{background:var(--card-raised);box-shadow:inset 0 0 0 1px var(--border);color:var(--text)}.history-pager-pages button:disabled{color:#4d5560;background:0 0}.history-pager-pages span{color:var(--muted);font-family:var(--font-mono);padding:0 .25rem;font-size:.75rem}a.history-extrinsic{color:var(--focus);font-family:var(--font-mono);font-size:.6875rem;text-decoration:none}a.history-extrinsic:hover{color:var(--text);text-decoration:underline}.operator-runtime{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.operator-runtime .operator-runtime-state{border-bottom:0;padding:0}.operator-runtime-actions{flex:none;align-items:center;gap:.75rem;display:flex}button.operator-runtime-stop{color:var(--err);background:#ff7a890f;border-color:#ff7a8940}button.operator-runtime-stop:hover:not(:disabled){background:#ff7a891f;border-color:#ff7a8973}.tunnel-panel{gap:1rem;display:grid}.tunnel-card{margin-bottom:0}.tunnel-card .card-heading h2{letter-spacing:-.02em;margin:.35rem 0 0;font-size:1.05rem;font-weight:500}.tunnel-card>.hint{margin:.9rem 0 0;font-size:.8125rem;line-height:1.55}.tunnel-toggle{margin-top:1.25rem}.tunnel-facts{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin:1.25rem 0 0;padding-top:1.25rem;display:grid}.tunnel-facts>div{gap:.3rem;min-width:0;display:grid}.tunnel-facts dt{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.625rem;font-weight:500}.tunnel-facts dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8125rem}.tunnel-facts-pending{color:var(--muted);font-size:.8125rem}.tunnel-alert{margin-top:1.25rem;padding-right:1rem}.tunnel-count{color:var(--muted);font-family:var(--font-mono);font-size:.625rem}.tunnel-device-list{border-top:1px solid var(--border);margin:1rem 0 0;padding:0;list-style:none}.tunnel-device{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 0;display:flex}.tunnel-device>div{gap:.2rem;min-width:0;display:grid}.tunnel-device:last-child{border-bottom:0}.tunnel-device strong{font-size:.875rem;font-weight:500}.tunnel-device small{color:var(--muted);overflow-wrap:anywhere;font-size:.75rem}.tunnel-card .steps{margin:1rem 0 .25rem}.tunnel-card .field{margin-top:1rem}.tunnel-key-input{border:1px solid var(--border);background:var(--control);width:100%;color:var(--text);resize:vertical;border-radius:.75rem;padding:.7rem .9rem;font-size:.75rem;line-height:1.5}.tunnel-key-input::placeholder{color:#68717e}.tunnel-actions{justify-content:flex-end;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.tunnel-ack{color:var(--text-secondary);cursor:pointer;align-items:center;gap:.55rem;font-size:.8125rem;display:flex}.tunnel-secret{align-items:flex-start;gap:1.25rem;margin-top:1.25rem;display:flex}.tunnel-secret img{background:#fff;border-radius:.75rem;flex:none}.tunnel-secret-text{flex:1;gap:.6rem;min-width:0;display:grid}.tunnel-command,.code-block{border:1px solid var(--border);background:var(--control);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:.75rem;margin:.75rem 0 0;padding:.8rem .9rem;font-size:.75rem;line-height:1.5}.history-bid-links{justify-content:flex-start}.history-bid-links a[data-kind=bid]{color:var(--ok)}.history-bid-links a[data-kind=retraction]{color:var(--err)}.history-bid-links a:hover{color:var(--text)}.history-link-placeholder{color:#3a4049;place-items:center;width:1.9rem;height:1.9rem;display:grid}.history-link-placeholder svg{width:.9rem;height:.9rem}.ledger-action{align-items:center;gap:.7rem;display:flex}.ledger-icon{border:1px solid var(--border);background:var(--control);width:2rem;height:2rem;color:var(--text-secondary);border-radius:50%;flex:none;place-items:center;display:grid}.ledger-icon svg{width:.95rem;height:.95rem}.ledger-action[data-kind=fill] .ledger-icon{color:var(--ok);background:#74e99814;border-color:#74e9983d}.ledger-action[data-kind=sweep] .ledger-icon,.ledger-action[data-kind=redeem] .ledger-icon{color:var(--focus);background:#4adeff14;border-color:#4adeff3d}.ledger-action[data-kind=send] .ledger-icon{color:var(--warn);background:#ffdb6914;border-color:#ffdb693d}.ledger-action-copy{gap:.1rem;display:grid}.ledger-action-copy strong{color:var(--text);white-space:nowrap;font-size:.8125rem;font-weight:500}.ledger-action-copy small{color:var(--ok);font-family:var(--font-mono);letter-spacing:.035em;text-transform:uppercase;font-size:.625rem}.ledger-move{flex-wrap:wrap;align-items:center;gap:.4rem 1.1rem;display:flex}.ledger-delta{color:var(--text-secondary);font-family:var(--font-mono);white-space:nowrap;align-items:center;gap:.45rem;font-size:.8125rem;display:inline-flex}.ledger-delta .token-icon{width:1.25rem;height:1.25rem}.ledger-delta[data-sign=in]{color:var(--ok)}.ledger-delta[data-sign=out]{color:var(--err)}.ledger-token{flex:none;width:1.25rem;height:1.25rem;display:inline-block;position:relative}.ledger-token .token-icon{display:block}.ledger-vault-badge{background:var(--focus);color:#081115;width:.8rem;height:.8rem;box-shadow:0 0 0 2px var(--bg);border-radius:50%;padding:.1rem;position:absolute;bottom:-.3rem;right:-.3rem}.ledger-delta-sign{min-width:.7rem;display:inline-block}.ledger-counterparty,.ledger-quiet{color:var(--muted);white-space:nowrap;font-size:.75rem}.ledger-chain{align-items:center;gap:.5rem;font-size:.8125rem;display:inline-flex}.ledger-chain .chain-logo{width:1.35rem;height:1.35rem}.ledger-links{justify-content:flex-start}.solver-link-entry{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.solver-link-entry h3{margin:0;font-size:.875rem;font-weight:500}.solver-link-entry .hint{margin:.2rem 0 0}.solver-link-form{gap:1rem;padding-top:1rem;display:grid}.solver-link-fields{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.8rem;display:grid}.solver-link-fields .field{margin:0}.solver-link-summary{border:1px solid var(--border);background:var(--card-raised);border-radius:.75rem;gap:.5rem;margin:0;padding:.9rem 1rem;display:grid}.solver-link-summary div{grid-template-columns:5rem minmax(0,1fr);gap:.75rem;font-size:.8125rem;display:grid}.solver-link-summary dt{color:var(--muted)}.solver-link-summary dd{color:var(--text);font-family:var(--font-mono);margin:0}.solver-link-url{border:1px solid var(--border);background:var(--control);color:var(--text-secondary);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:.6rem;padding:.75rem .9rem;font-size:.6875rem;line-height:1.5;display:block}.solver-link-form .primary svg{width:.9rem;height:.9rem;margin-right:.4rem}.send-review{gap:1.25rem;padding:.5rem 0 1.5rem;display:grid}.send-review-asset{flex:none;width:2rem;height:2rem;display:inline-block;position:relative}.send-review-asset .token-icon{display:block}.send-review-chain-badge{width:1.05rem;height:1.05rem;box-shadow:0 0 0 2px var(--card);border-radius:50%;display:block;position:absolute;bottom:-.3rem;right:-.3rem}.send-review-chain-badge .chain-logo{width:100%;height:100%;font-size:.45rem}.send-review-headline{align-items:center;gap:.9rem;display:flex}.send-review-headline>div{gap:.3rem;min-width:0;display:grid}.send-review-headline strong{letter-spacing:-.02em;font-size:1.35rem;font-weight:500}.send-review-network{color:var(--muted);align-items:center;gap:.4rem;font-size:.8125rem;display:inline-flex}.send-review-facts{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.5rem;margin:0;padding-top:1.15rem;display:grid}.send-review-facts>div{gap:.3rem;min-width:0;display:grid}.send-review-wide{grid-column:1/-1}.send-review-facts dt{color:var(--muted);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.625rem;font-weight:500}.send-review-facts dd{margin:0;font-size:.875rem}.send-review-address{overflow-wrap:anywhere}.send-review-alert{margin-top:0;padding-right:1rem}.send-review-actions{justify-content:flex-end;gap:.75rem;display:flex}.limit-order-tabs{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.limit-order-tabs .steps{margin:0}.limit-order-tabs .limit-order-sides{border-radius:.9rem;display:inline-grid}.limit-order-tabs button.limit-order-side{border-radius:.65rem;min-height:2.35rem;padding:.45rem 1rem}.limit-order-list{gap:.5rem;display:grid}button.limit-order-item{--consumed:0%;--held:0%;--bar-fill:color-mix(in srgb, var(--ok) 12%, transparent);--bar-edge:color-mix(in srgb, var(--ok) 70%, transparent);--bar-held:color-mix(in srgb, var(--ok) 30%, transparent);background:var(--control);text-align:left;grid-template-columns:3.25rem 11rem minmax(0,1fr) auto;justify-content:stretch;gap:1.25rem;width:100%;min-height:5.25rem;padding:.875rem 1.375rem .875rem 1rem;display:grid;position:relative;overflow:hidden}button.limit-order-item[data-side=ASK]{--bar-fill:color-mix(in srgb, var(--err) 12%, transparent);--bar-edge:color-mix(in srgb, var(--err) 70%, transparent);--bar-held:color-mix(in srgb, var(--err) 30%, transparent)}button.limit-order-item[data-tab=cancelled]{--bar-fill:#ffffff0e;--bar-edge:#ffffff47;--bar-held:transparent}button.limit-order-item:hover:not(:disabled){background:var(--control)}button.limit-order-item:active:not(:disabled){transform:scale(.995)}button.limit-order-item:before,button.limit-order-item:after{content:"";pointer-events:none;transition:left .4s var(--ease-out), width .4s var(--ease-out);position:absolute;bottom:0}button.limit-order-item:before{width:var(--consumed);background:var(--bar-fill);box-shadow:inset 0 -3px 0 var(--bar-edge);top:0;left:0}button.limit-order-item:after{left:var(--consumed);width:var(--held);background:var(--bar-held);height:3px}button.limit-order-item>*{z-index:1;position:relative}.limit-order-item-rate,.limit-order-item-progress,.limit-order-item-cap{gap:.375rem;min-width:0;display:grid}.limit-order-item-rate strong{letter-spacing:-.035em;font-size:clamp(1.4rem,2.2vw,1.65rem);font-weight:500;line-height:1}.limit-order-item-rate small{color:var(--muted);font-size:.6875rem;font-weight:400}.limit-order-item-progress>span{align-items:center;gap:.625rem;display:flex}.limit-order-item-progress strong,.limit-order-item-cap strong{font-size:.875rem;font-weight:500}.limit-order-item-progress small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:400;overflow:hidden}.limit-order-item-progress small[data-tone=warn]{color:var(--warn)}.limit-order-item-cap{text-align:right;justify-items:end}.limit-order-item-cap small{color:var(--muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.625rem;font-weight:500}.limit-order-item-cap strong{white-space:nowrap}.limit-order-item-cap strong span{color:var(--muted);font-size:.75rem;font-weight:400}@media (width<=40rem){.limit-order-tabs{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.limit-order-tabs .limit-order-sides{display:grid}.limit-order-tabs .steps{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.limit-order-tabs button.limit-order-side,.limit-order-tabs .steps .step{min-height:2.75rem;padding-inline:.5rem}}@media (width<=900px){button.limit-order-item{grid-template-columns:3.25rem minmax(0,1fr) auto;gap:.875rem .75rem;padding:.875rem}.limit-order-item-cap{align-self:start}.limit-order-item-progress{grid-area:2/1/3/-1}.limit-order-item-progress>span{justify-content:space-between}.limit-order-item-progress small{white-space:normal;line-height:1.45}}.limit-order-facts{gap:.75rem;margin:0 0 1rem;display:grid}.limit-order-facts>div{grid-template-columns:minmax(8rem,12rem) 1fr;align-items:baseline;gap:.5rem 1rem;display:grid}.limit-order-facts dt{color:var(--text-dim);font-size:.85rem}.limit-order-facts dd{margin:0}.limit-order-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.8rem;display:grid}@media (width<=44rem){.limit-order-row{grid-template-columns:minmax(0,1fr)}}.limit-order-amount>.field-label{color:var(--text-secondary);margin-bottom:.45rem;font-size:.8125rem;font-weight:500;line-height:1.4}.limit-order-max{min-height:0;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:.35rem;margin-left:.5rem;padding:.1rem .45rem;font-size:.6875rem;line-height:1}.limit-order-sides{border:1px solid var(--border);background:var(--control);border-radius:.75rem;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;display:grid}button.limit-order-side{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:.55rem;padding:.5rem .75rem;font-weight:600}button.limit-order-side:hover:not(.is-selected){color:var(--text)}button.limit-order-side.is-selected{box-shadow:0 1px 2px #0000001f}button.limit-order-side[data-side=BID].is-selected{background:color-mix(in srgb, var(--ok) 16%, var(--card-raised));color:var(--ok)}button.limit-order-side[data-side=ASK].is-selected{background:color-mix(in srgb, var(--err) 16%, var(--card-raised));color:var(--err)}button.limit-order-side[data-side=BID]:hover:not(.is-selected){color:color-mix(in srgb, var(--ok) 70%, var(--text))}button.limit-order-side[data-side=ASK]:hover:not(.is-selected){color:color-mix(in srgb, var(--err) 70%, var(--text))}.limit-order-derived{font-variant-numeric:tabular-nums}.limit-order-side-tag{letter-spacing:.03em;text-align:center;text-transform:uppercase;border-radius:.4rem;flex:none;min-width:3.1rem;padding:.15rem .45rem;font-size:.7rem;font-weight:600}.limit-order-side-tag[data-side=BID]{background:color-mix(in srgb, var(--ok) 16%, var(--card-raised));color:var(--ok)}.limit-order-side-tag[data-side=ASK]{background:color-mix(in srgb, var(--err) 16%, var(--card-raised));color:var(--err)}.limit-order-fills{border:1px solid var(--border);border-collapse:separate;border-spacing:0;border-radius:.75rem;width:100%;font-size:.85rem;overflow:hidden}.limit-order-fills th,.limit-order-fills td{text-align:left;vertical-align:baseline;padding:.65rem .9rem}.limit-order-fills th:last-child,.limit-order-fills td:last-child{text-align:right}.limit-order-fills th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;background:var(--control);font-size:.7rem;font-weight:500}.limit-order-fills td{border-top:1px solid var(--border)}.limit-order-fills tbody tr:hover{background:var(--card-raised)}.limit-order-fills time{color:var(--text-secondary)}.limit-order-fills strong{font-variant-numeric:tabular-nums;font-weight:600}.limit-order-fills strong small{color:var(--muted);font-weight:400}.limit-order-fills a,.limit-order-fills-none{font-family:var(--font-mono);font-size:.75rem}.limit-order-fills a{color:var(--text-secondary)}.limit-order-fills a:hover{color:var(--text)}.limit-order-fills-none{color:var(--muted)}.limit-order-fills-total{color:var(--muted);text-align:right;margin:.6rem 0 0;font-size:.8rem}@media (width<=30rem){.limit-order-facts>div{grid-template-columns:1fr;gap:.15rem}.limit-order-fills thead{display:none}.limit-order-fills tr{border-top:1px solid var(--border);grid-template-columns:1fr auto;display:grid}.limit-order-fills tbody tr:first-child,.limit-order-fills td{border-top:0}.limit-order-fills td:first-child{grid-column:1/-1;padding-bottom:0}}.chain-multiselect{position:relative}.chain-multiselect .app-select-trigger{width:100%}.chain-multiselect-content{max-height:22rem;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.chain-multiselect-content .app-select-item{cursor:pointer}.chain-multiselect-check{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.chain-multiselect-content .app-select-item:hover{background:color-mix(in srgb, var(--focus) 9%, var(--card-raised));color:var(--text)}.chain-multiselect-content .app-select-item:has(.chain-multiselect-check:focus-visible){background:color-mix(in srgb, var(--focus) 9%, var(--card-raised));color:var(--text)}.chain-multiselect-content .app-select-item[data-state=checked]{color:var(--text)}.chain-multiselect-label{flex:1;min-width:0}.chain-multiselect-content .app-select-indicator{margin-left:0}.chain-multiselect-content .app-select-indicator[data-hidden]{visibility:hidden}.chain-multiselect .chain-logo{width:1.5rem;height:1.5rem}.chain-multiselect-logos{flex:none;display:inline-flex}.chain-multiselect-logos .chain-logo{width:1.35rem;height:1.35rem;box-shadow:0 0 0 2px var(--card)}.chain-multiselect-logos .chain-logo+.chain-logo{margin-left:-.4rem}.token-on-chain{flex:none;display:inline-flex;position:relative}.token-on-chain-badge{display:inline-flex;position:absolute;bottom:-.2rem;right:-.25rem}.token-on-chain-badge .chain-logo{width:.85rem;height:.85rem;box-shadow:0 0 0 2px var(--card-raised)}.limit-order-balance{color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:400}.operator-main[data-tab=logs]{flex-direction:column;display:flex}.operator-main[data-tab=logs] .operator-page-header{flex:none}.operator-logs{min-height:0;margin-inline:calc(1.25rem - var(--page-inset));flex-direction:column;flex:auto;padding-top:1.5rem;padding-bottom:1.5rem;display:flex}.log-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;padding-bottom:1rem;display:flex}.log-toolbar .steps.log-levels{border-radius:.75rem;margin:0}.log-toolbar .steps.log-levels .step{min-height:2.1rem;font-family:var(--font-mono);letter-spacing:.06em;padding:.35rem .7rem;font-size:.6875rem}.log-search{flex:14rem;min-width:10rem;position:relative}.log-search input{border:1px solid var(--border);background:var(--control);width:100%;min-height:2.6rem;color:var(--text);border-radius:.75rem;padding:.5rem 2.25rem .5rem .85rem;font-size:.8125rem}.log-search input::placeholder{color:var(--muted)}.log-search input::-webkit-search-cancel-button{appearance:none}.log-search button{width:1.7rem;height:1.7rem;color:var(--muted);background:0 0;border-color:#0000;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:.4rem;transform:translateY(-50%)}.log-search button:hover:not(:disabled){background:var(--card-raised);color:var(--text)}.log-search button svg{width:.9rem;height:.9rem}.log-actions{align-items:center;gap:.5rem;display:flex}.log-actions button{min-height:2.6rem;padding:.5rem .9rem;font-size:.8125rem}.log-stream{border:1px solid var(--border);overscroll-behavior:contain;background:#00000038;border-radius:.9rem;flex:auto;min-height:18rem;padding:.35rem 0;overflow:auto}.log-stream:focus-visible{border-color:#4adeffcc;box-shadow:0 0 0 3px #4adeff24}.log-stream ul{margin:0;padding:0;list-style:none}.log-stream .operator-empty{text-align:center;margin:0;padding:3rem 1rem}.log-row{font-family:var(--font-mono);border-left:2px solid #0000;grid-template-columns:5.5rem 3.25rem 7rem minmax(0,1fr);gap:.75rem;padding:.2rem .9rem;font-size:.75rem;line-height:1.55;display:grid}.log-row:hover{background:#ffffff05}.log-row time{color:var(--muted);white-space:nowrap}.log-level{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.625rem;line-height:1.85}.log-module{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-body{-webkit-line-clamp:4;line-clamp:4;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.log-body[data-expanded]{-webkit-line-clamp:none;line-clamp:none;display:block;overflow:visible}.log-msg{color:var(--text)}.log-detail{cursor:pointer;color:var(--muted);font-family:var(--font-mono);text-align:left;font-size:.6875rem;line-height:1.5;display:inline}.log-detail .jt-key{color:#7fb5d6}.log-detail .jt-string{color:var(--text-secondary)}.log-detail .jt-number{color:#74e998}.log-detail .jt-literal{color:#c792ea}.log-detail .jt-punct{color:#929daa80}.log-detail:focus-visible{outline:1px solid var(--focus);outline-offset:2px}.log-body[data-expanded] .log-detail{margin-top:.15rem;margin-left:0;display:block}.log-row[data-level=trace] .log-level{color:#79838f}.log-row[data-level=debug] .log-level{color:#8a7fb8}.log-row[data-level=info] .log-level{color:var(--ok)}.log-row[data-level=warn]{border-left-color:#ffdb698c}.log-row[data-level=warn] .log-level{color:var(--warn)}.log-row[data-level=error],.log-row[data-level=fatal]{background:#ff7a8909;border-left-color:#ff7a8999}.log-row[data-level=error] .log-level,.log-row[data-level=fatal] .log-level{color:var(--err)}.log-row[data-level=debug] .log-msg,.log-row[data-level=trace] .log-msg{color:var(--text-secondary)}.log-row mark{color:inherit;background:#ffed4a47;border-radius:.2rem}.log-footer{color:var(--muted);justify-content:space-between;gap:1rem;margin:.7rem 0 0;font-size:.6875rem;display:flex}.log-footer .error{margin:0}.log-capture strong{color:var(--text-secondary);font-family:var(--font-mono);font-weight:500}@media (width<=60rem){.log-row{grid-template-columns:5.5rem 3.25rem minmax(0,1fr);gap:.5rem}.log-module{display:none}}@media (width<=45rem){.log-row{grid-template-columns:auto minmax(0,1fr);gap:.1rem .5rem;padding-block:.35rem}.log-row time{grid-column:1}.log-level{grid-column:2;justify-self:start;line-height:1.55}.log-body{grid-column:1/-1}.log-toolbar .steps.log-levels{order:2;width:100%}.log-search{flex-basis:100%;order:1}.log-actions{order:3;margin-left:auto}}@media (width<=900px){.app-shell{padding-inline:1rem}.wizard-layout{grid-template-columns:minmax(0,1fr)}.wizard-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:2rem 1.5rem 1.25rem}.wizard-intro p{max-width:34rem}.stepper{scrollbar-width:none;margin:1.5rem 0 0;overflow-x:auto}.stepper::-webkit-scrollbar{display:none}.stepper ol{grid-template-columns:none;grid-auto-columns:minmax(9.5rem,1fr);grid-auto-flow:column;min-width:max-content}.stepper .step{min-width:9.5rem}.wizard-security-note{display:none}.wizard-main{min-height:42rem;padding-top:2.5rem}.vault-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:5.3rem}.vault-settings-grid .vault-redeem-toggle{grid-column:1/-1}.operator-layout{grid-template-columns:5rem minmax(0,1fr)}.operator-sidebar{padding-inline:.65rem}button.operator-nav-item{grid-template-columns:1fr;place-items:center}.operator-nav-item>span,.operator-sidebar-footer{display:none}.operator-main{--page-inset:2rem}.operator-asset-balances{grid-template-columns:1fr}.operator-market-editor .curve-editor{grid-template-rows:auto;grid-template-columns:minmax(0,1fr)}.operator-market-editor .curve-editor-visual{grid-row:auto}}@media (width<=600px){.app-shell{padding:0}.app-container{width:100%}.wizard-shell{border-width:0;border-radius:0;min-height:100dvh}.wizard-brandbar{min-height:4rem;padding-inline:1rem}.wizard-product-name{color:var(--text);border-left:0;padding-left:0}.wizard-brand img.hyperfx-logo,.operator-brand img.hyperfx-logo{width:6.25rem}.wizard-sidebar{padding:1.5rem 1rem 1rem}.wizard-intro h1{font-size:1.75rem}.step-copy small{display:none}.stepper ol,.stepper .step{min-width:max-content}.stepper .step{min-height:2.75rem;padding:.45rem .65rem}.wizard-main{min-height:0;padding:2rem 1rem 1.25rem}.wizard-progress-track{margin-bottom:1.5rem}.wizard-step-header h2{font-size:2rem}.wizard-step-content{margin-top:2rem}.card{padding:1.1rem 1rem 1.2rem}.markets-section-heading,.uniswap-positions-heading,.markets-pricing,.market-flow-heading,.market-pricing-heading,.treasury-heading,.vault-editor-heading{flex-direction:column;align-items:flex-start}.treasury-flow,.vault-settings-grid,.vault-custom-primary-fields,.vault-custom-balance-fields{grid-template-columns:1fr}.treasury-flow>div{border-top:1px solid var(--border);border-left:0;padding:.75rem 0}.treasury-flow>div:first-child{border-top:0;padding-top:0}.treasury-flow>div:last-child{padding-bottom:0}.vault-editor-actions{justify-content:space-between;width:100%}.vault-panel-summary,.operator-runtime,.vault-group-head,button.vault-others-trigger{flex-direction:column;align-items:flex-start}.vault-settings-grid{padding-left:.3rem}.vault-row{align-items:flex-start}.vault-row-actions{margin-top:.15rem}.review-launch-row{flex-direction:column;align-items:stretch}.review-start-button{width:100%}.review-launch-row>p{text-align:left;max-width:none}.market-method-options{grid-template-columns:1fr}.market-create-button{align-self:stretch}.market-overview-row{flex-wrap:wrap;align-items:flex-start}.market-overview-copy{min-width:calc(100% - 4.25rem)}.market-overview-prices{margin-left:4.15rem}.market-configure-button{margin-left:auto}.market-dialog{border-radius:1rem;width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}.market-dialog-header{padding:1rem}.market-dialog-body{max-height:calc(100dvh - 8rem);padding:0 1rem}.market-dialog-footer{margin-inline:-1rem;padding-inline:1rem}.market-pricing-heading .market-editor-note{text-align:left;max-width:none}.market-asset-grid,.market-curve-grid,.uniswap-position,.uniswap-settings{grid-template-columns:1fr}.market-limit-field,.market-custom-symbol-field,.market-reference-grid{max-width:none}.uniswap-position .market-remove-button{margin-bottom:0}.substrate-account-options{grid-template-columns:1fr;gap:1.5rem}.substrate-import-option{border-top:1px solid var(--border);border-left:0;padding-top:1.5rem;padding-left:0}.substrate-balance{grid-template-columns:1fr;align-items:start}.substrate-balance-button{justify-self:start}.recovery-dialog{border-radius:1rem;width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}.recovery-dialog-header{padding:1.25rem 1rem 1rem}.recovery-warning,.recovery-words,.recovery-copy-row,.recovery-acknowledgement{margin-left:1rem;margin-right:1rem}.recovery-dialog-footer{padding:.9rem 1rem 1rem}.recovery-dialog-footer button{width:100%}.spread{flex-direction:column;align-items:flex-start}.footer-nav button{flex:1}.footer-nav{flex-wrap:wrap}.wizard-requirements{order:-1;width:100%;max-width:none;margin:0}.operator-shell{-webkit-backdrop-filter:none;backdrop-filter:none;height:auto}.operator-brandbar{min-height:4rem;padding-inline:1rem}.operator-environment-trigger>span:not(.operator-status-dot){display:none}.operator-layout{flex-direction:column;height:auto;min-height:calc(100dvh - 4rem);display:flex}.operator-sidebar{z-index:20;width:100%;padding:.55rem .6rem max(.55rem, env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(1rem);backdrop-filter:blur(1rem);background:#131417f0;border-right:0;position:fixed;inset:auto 0 0;box-shadow:0 -.75rem 2.5rem #0000003d}.operator-sidebar nav{grid-template-columns:repeat(7,minmax(0,1fr))}button.operator-nav-item{min-height:3.5rem;padding:.6rem .45rem}button.operator-nav-item>svg{width:1.3rem;height:1.3rem;margin-top:0}.operator-main{--page-inset:1rem;padding:2rem var(--page-inset) calc(6.5rem + env(safe-area-inset-bottom));flex:1;overflow:visible}.operator-page-header{flex-direction:column;align-items:flex-start;gap:1.25rem;padding-bottom:1.5rem}.operator-page-header h1{font-size:2.35rem}.operator-page-header button{align-self:stretch}.operator-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.operator-metrics>*{border-bottom:1px solid var(--border);padding:1rem .75rem}.operator-metrics>:nth-child(odd){border-left:0;padding-left:0}.operator-section-heading,.operator-alert{flex-direction:column;align-items:flex-start}.operator-balance-heading-aside{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.operator-network-switcher,.operator-network-switcher .app-select-trigger{width:100%}.operator-balance-focus,.operator-asset-header,.operator-asset-available{flex-direction:column;align-items:flex-start}.operator-asset-total{text-align:left}button.operator-tool-row{grid-template-columns:minmax(0,1fr) 1rem}.operator-tool-row em{display:none}.operator-config-summary{grid-template-columns:1fr;gap:1rem}.operator-section{overflow-x:auto}.operator-section table:not(.history-table){min-width:38rem}.history-table-scroll{overflow:visible}.operator-section table.history-table{border-top:0;min-width:0;display:block}.history-table thead{display:none}.history-table tbody{gap:.75rem;display:grid}.history-table tbody tr{border:1px solid var(--border);background:#ffffff03;border-radius:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"referrer status""amount-in amount-out""bids user""placed links";display:grid;overflow:hidden}.history-table.ledger-table tbody tr{grid-template-areas:"action chain""amount-in amount-out""tx time"}.history-table tbody tr:hover{background:#ffffff05}.history-table td,.history-table td:first-child{border:0;border-bottom:1px solid var(--border);align-content:start;gap:.4rem;min-width:0;padding:.75rem;display:grid}.history-table td:nth-child(2n){border-left:1px solid var(--border)}.history-table td:nth-last-child(-n+2){border-bottom:0}.history-table td:before{content:attr(data-label);color:var(--muted);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;font-size:.625rem;font-weight:500;line-height:1.2}.history-table td[data-field=referrer]{grid-area:referrer}.history-table td[data-field=status]{grid-area:status}.history-table td[data-field=amount-in]{grid-area:amount-in}.history-table td[data-field=amount-out]{grid-area:amount-out}.history-table td[data-field=bids]{grid-area:bids}.history-table td[data-field=user]{grid-area:user}.history-table td[data-field=placed]{grid-area:placed}.history-table td[data-field=links]{grid-area:links}.history-table td[data-field=action]{grid-area:action}.history-table td[data-field=chain]{grid-area:chain}.history-table td[data-field=tx]{grid-area:tx}.history-table td[data-field=time]{grid-area:time}.history-table .history-user,.history-table .copy-value-text{white-space:nowrap}.history-table .history-links{justify-content:flex-start}.history-table td[data-field=links] .history-links a{border-radius:.4rem;gap:.4rem;width:auto;padding-inline:.35rem;display:inline-flex}.history-table .history-link-label{font-family:var(--font-sans);white-space:nowrap;font-size:.75rem;display:inline}.sheet-content,.sheet-content[data-wide=true]{border:1px solid var(--border-strong);border-bottom:0;border-radius:1rem 1rem 0 0;width:100%;height:auto;max-height:calc(100dvh - .75rem);inset:auto 0 0;box-shadow:0 -2rem 6rem #00000075}.tunnel-facts{grid-template-columns:minmax(0,1fr)}.tunnel-secret{flex-direction:column}.tunnel-actions{flex-wrap:wrap}.send-review-facts{grid-template-columns:minmax(0,1fr)}.sheet-header,.sheet-body{padding-left:1rem;padding-right:1rem}.sheet-body{max-height:calc(100dvh - 7rem);padding-bottom:max(1.5rem, env(safe-area-inset-bottom))}.market-dialog,.recovery-dialog{border-bottom:0;border-radius:1rem 1rem 0 0;width:100%;max-height:calc(100dvh - .75rem);inset:auto 0 0;transform:none;box-shadow:0 -2rem 6rem #00000075}.market-dialog-footer,.recovery-dialog-footer{padding-bottom:max(1rem, env(safe-area-inset-bottom))}.operator-market-summary{grid-template-columns:auto minmax(0,1fr)}.operator-market-side-status{grid-column:2}.operator-market-panel-heading,.operator-market-add-side{flex-direction:column;align-items:flex-start}.operator-market-cap-panel .operator-market-panel-heading{grid-template-columns:minmax(0,1fr) max-content;align-items:end;display:grid}.operator-market-cap-panel .operator-market-panel-value{text-align:right;place-self:end}.solver-link-entry{flex-direction:column;align-items:stretch;gap:1rem}.solver-link-entry>button{width:100%}.operator-market-cap-controls{grid-template-columns:minmax(0,1fr)}.operator-market-cap-controls button,.operator-market-add-side button,.operator-market-actions .primary{width:100%}.operator-market-actions{margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}.operator-send-grid{grid-template-columns:1fr}.operator-send-wide,.operator-send-actions{grid-column:auto}.operator-send-actions button{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.wizard-brand-actions{align-items:center;gap:.7rem;display:flex}.pwa-install-control{border-color:var(--border-strong);min-height:2.35rem;color:var(--text-secondary);white-space:nowrap;background:#ffffff06;justify-content:center;align-items:center;gap:.45rem;padding:.4rem .7rem;font-size:.75rem;display:inline-flex}.pwa-install-control:hover:not(:disabled){background:var(--card-raised);color:var(--text);border-color:#4adeff85}.pwa-install-control[data-state=installed]{color:var(--ok);background:#74e9980d;border-color:#74e99847}.pwa-install-control svg,.operator-install-nav>svg{width:1.05rem;height:1.05rem}button.operator-install-nav{color:var(--text-secondary);background:linear-gradient(135deg,#4adeff0e,#ff35eb09),#ffffff03;border-color:#4adeff24;margin-top:.85rem}button.operator-install-nav:hover:not(:disabled){background:linear-gradient(135deg, #4adeff14, #ff35eb0d), var(--card-raised);color:var(--text);border-color:#4adeff4d}.install-dialog-overlay{z-index:80;-webkit-backdrop-filter:blur(.7rem);backdrop-filter:blur(.7rem);background:#050609c7;animation:.18s ease-out install-overlay-in;position:fixed;inset:0}.install-dialog{z-index:81;width:min(48rem,100vw - 2rem);max-height:calc(100dvh - 2rem);color:var(--text);animation:install-dialog-in .22s var(--ease-out);background:radial-gradient(circle at 4% 0,#4adeff12,#0000 22rem),radial-gradient(circle at 96% 0,#ff35eb0e,#0000 24rem),#17191e;border:1px solid #ffffff21;border-radius:1.35rem;outline:none;flex-direction:column;padding:0;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 2rem 7rem #0000009e}.install-dialog-header{border-bottom:1px solid var(--border);background:#ffffff03;grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.4rem 1.5rem;display:grid}.install-dialog-header>img{width:3.5rem;height:3.5rem;box-shadow:0 .7rem 1.8rem #00000047}.install-dialog-header>div{min-width:0}.install-dialog-header h2{letter-spacing:-.035em;margin:.25rem 0 .2rem;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:500}.install-dialog-header p{color:var(--muted);margin:0;font-size:.8125rem;line-height:1.45}.install-dialog-close{width:2.35rem;height:2.35rem;min-height:2.35rem;color:var(--muted);background:0 0;border-color:#0000;border-radius:50%;place-items:center;padding:0;display:grid}.install-dialog-close:hover:not(:disabled){border-color:var(--border-strong);background:var(--card-raised);color:var(--text)}.install-dialog-close svg{width:1.1rem;height:1.1rem}.install-guide-content{flex:auto;min-height:0;overflow-y:auto}.install-guide-panel{padding:1.5rem}.install-guide-panel>header{margin-bottom:1.25rem}.install-guide-panel h2{letter-spacing:-.025em;margin:.35rem 0 .3rem;font-size:1.35rem;font-weight:500}.install-guide-panel>header p{color:var(--muted);margin:0;font-size:.8125rem}.install-step-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.install-step{background:#ffffff05;border:1px solid #ffffff17;border-radius:.9rem;grid-template-columns:2rem minmax(0,1fr) 15rem;align-items:center;gap:.9rem;padding:.9rem;display:grid}.install-step-number{width:1.75rem;height:1.75rem;color:var(--focus);font-family:var(--font-mono);background:#4adeff0a;border:1px solid #4adeff40;border-radius:50%;place-items:center;font-size:.65rem;display:grid}.install-step-copy{min-width:0}.install-step-copy strong{font-size:.8125rem;font-weight:500}.install-step-copy p{color:var(--muted);margin:.25rem 0 0;font-size:.75rem;line-height:1.45}.install-visual{color:#d5d9df;background:#202227;border:1px solid #ffffff1a;border-radius:.7rem;min-width:0;font-size:.58rem;box-shadow:0 .45rem 1.3rem #0000002e}.install-toolbar-visual{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.4rem;padding:.55rem;display:grid}.install-window-controls{gap:.15rem;display:flex}.install-window-controls span{background:#59616d;border-radius:50%;width:.28rem;height:.28rem}.install-window-address{color:#929aa5;text-overflow:ellipsis;white-space:nowrap;background:#15171b;border-radius:1rem;padding:.4rem .65rem;overflow:hidden}.install-target-icon{width:1.65rem;height:1.65rem;color:var(--focus);background:#4adeff21;border:1px solid #4adeff73;border-radius:50%;place-items:center;display:grid;box-shadow:0 0 0 .2rem #4adeff0e}.install-target-icon svg{width:.95rem;height:.95rem}.install-toolbar-visual small{color:var(--focus);text-align:center;grid-column:3}.install-confirm-visual{grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.65rem;display:grid}.install-confirm-visual img{border-radius:.45rem;width:2rem;height:2rem}.install-confirm-visual>span{gap:.1rem;min-width:0;display:grid}.install-confirm-visual strong{font-size:.625rem;font-weight:500}.install-confirm-visual b{color:#15171b;background:#fff;border-radius:.35rem;padding:.3rem .5rem;font-size:.55rem;font-weight:500}.install-mobile-action-visual{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem .55rem;padding:.55rem .65rem;display:grid}.install-mobile-action-visual>span{color:#929aa5}.install-mobile-action-visual b{width:1.35rem;height:1.35rem;color:var(--focus);border:1px solid #4adeff52;border-radius:.4rem;place-items:center;font-size:.9rem;line-height:1;display:grid}.install-mobile-action-visual small{color:var(--focus);grid-column:1/-1}.install-desktop-visual{background:linear-gradient(145deg,#282b32,#1b1d22);justify-items:center;gap:.35rem;padding:.6rem;display:grid}.install-desktop-visual>div{align-items:center;gap:.5rem;display:flex}.install-desktop-visual img{border-radius:.45rem;width:2rem;height:2rem}.install-desktop-visual>div span{font-size:.68rem;font-weight:500}.install-desktop-visual small{color:#929aa5}.install-dialog-footer{border-top:1px solid var(--border);background:#131417f5;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.install-dialog-footer>span{color:var(--muted);font-size:.6875rem}.install-dialog-footer>div{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.install-dialog-footer button{min-height:2.5rem}.install-dialog-footer button svg{width:1rem;height:1rem}.install-success{text-align:center;justify-items:center;padding:clamp(3rem,10vh,7rem) 1.5rem;display:grid}.install-success-icon{width:4rem;height:4rem;color:var(--ok);background:#74e99812;border:1px solid #74e9984d;border-radius:50%;place-items:center;display:grid}.install-success-icon svg{width:1.75rem;height:1.75rem}.install-success h2{letter-spacing:-.035em;margin:1.25rem 0 .4rem;font-size:1.65rem;font-weight:500}.install-success p{max-width:31rem;color:var(--muted);margin:0 0 1.5rem;font-size:.875rem;line-height:1.55}@keyframes install-overlay-in{0%{opacity:0}}@keyframes install-dialog-in{0%{opacity:0;transform:translate(-50%,calc(.75rem - 50%))scale(.985)}}@media (width<=900px){button.operator-install-nav{grid-template-columns:1fr;place-items:center}.operator-install-nav>span{display:none}.install-step{grid-template-columns:2rem minmax(0,1fr)}.install-step .install-visual{grid-column:2;width:min(100%,22rem)}}@media (width<=600px){.wizard-brand-actions{gap:.25rem}button.operator-install-nav{color:var(--muted);background:0 0;border-color:#0000;margin-top:0}button.operator-install-nav:hover:not(:disabled){color:var(--text-secondary);background:#ffffff06;border-color:#0000}.pwa-install-label{display:none}.pwa-install-control{width:2.35rem;padding-inline:0}.install-dialog{border-bottom:0;border-radius:1rem 1rem 0 0;width:100%;max-height:calc(100dvh - .75rem);inset:auto 0 0;transform:none;box-shadow:0 -2rem 7rem #0000009e}.install-dialog-header{grid-template-columns:2.7rem minmax(0,1fr) auto;gap:.7rem;padding:1rem}.install-dialog-header>img{border-radius:.65rem;width:2.7rem;height:2.7rem}.install-dialog-header p{display:none}.install-guide-panel{padding:1rem}.install-dialog-footer{padding:.8rem 1rem max(.8rem, env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.install-dialog-footer>span{display:none}.install-dialog-footer>div{width:100%}.install-dialog-footer button{flex:1}}@media (prefers-reduced-motion:reduce){.install-dialog-overlay,.install-dialog{animation:none}}.drawer-overlay{z-index:80;opacity:calc(1 - var(--drawer-swipe-progress,0));-webkit-user-select:none;user-select:none;transition:opacity .45s cubic-bezier(.32,.72,0,1);position:fixed;inset:0}.drawer-overlay[data-starting-style],.drawer-overlay[data-ending-style]{opacity:0}.drawer-viewport{pointer-events:none;z-index:81;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.drawer-viewport[data-modal=true]{pointer-events:auto}.drawer-popup{pointer-events:auto;width:100%;height:auto;min-height:0;max-height:calc(100dvh - .75rem);transform:translate3d(0, calc(var(--drawer-snap-point-offset,0px) + var(--drawer-swipe-movement-y,0px)), 0);will-change:transform;-webkit-user-select:none;user-select:none;outline:none;flex-direction:column;transition:transform .45s cubic-bezier(.22,1,.36,1),height .45s cubic-bezier(.22,1,.36,1),opacity .45s cubic-bezier(.22,1,.36,1);animation:none;display:flex;position:fixed;inset:auto 0 0;overflow:visible}.drawer-popup:after{pointer-events:none;background:inherit;content:"";height:4rem;position:absolute;top:100%;left:0;right:0}.drawer-popup[data-starting-style],.drawer-popup[data-ending-style]{transform:translateY(calc(100% + 2px))}.drawer-popup[data-ending-style],.drawer-overlay[data-ending-style]{transition-duration:calc(var(--drawer-swipe-strength,1) * .4s)}.drawer-popup[data-swiping],.drawer-overlay[data-swiping]{transition-duration:0s}.drawer-content{overscroll-behavior:contain;border-radius:inherit;-webkit-user-select:text;user-select:text;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.drawer-popup.recovery-dialog>.drawer-content{overflow-y:auto}.drawer-popup[data-swiping] .drawer-content{-webkit-user-select:none;user-select:none}.drawer-swipe-handle{z-index:1;cursor:grab;flex:0 0 1.25rem;place-items:center;height:1.25rem;display:grid;position:relative}.drawer-swipe-handle:after{content:"";background:#ffffff38;border-radius:999px;width:2.5rem;height:.25rem}.drawer-popup[data-swiping] .drawer-swipe-handle{cursor:grabbing}@supports (-webkit-touch-callout:none){.drawer-overlay{position:absolute}}@media (prefers-reduced-motion:reduce){.drawer-popup,.drawer-overlay{transition-duration:.01ms}}.desktop-unlock{place-items:center;min-height:100dvh;padding:2rem 1rem;display:grid}.desktop-unlock>.card{border-radius:1.25rem;gap:1.25rem;width:min(100%,26rem);margin:0;padding:2.25rem;display:grid;box-shadow:0 24px 64px #00000059}.desktop-unlock-brand{align-items:center;gap:.75rem;display:flex}.desktop-unlock-brand img{border-radius:.6rem}.desktop-unlock form,.desktop-unlock-panel{gap:.75rem;display:grid}.desktop-unlock-panel>.hint{margin:-.25rem 0 .5rem}.desktop-unlock-actions{gap:.5rem;display:grid}.desktop-unlock-links{justify-content:center;gap:1.5rem;display:flex}.desktop-unlock .desktop-password-alternative{min-height:2rem;color:var(--muted);background:0 0;border:0;border-radius:0;justify-self:center;padding:0;font-size:.8125rem;font-weight:400}.desktop-unlock .desktop-password-alternative:hover:not(:disabled){color:var(--text);background:0 0;text-decoration:underline}.desktop-recovery-input{border:1px solid var(--border);background:var(--control);width:100%;color:var(--text);font-family:var(--font-mono);letter-spacing:.04em;resize:none;transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out);border-radius:.75rem;outline:none;padding:.75rem .9rem;font-size:.875rem;line-height:1.6}.desktop-recovery-input::placeholder{color:#68717e}.desktop-recovery-input:focus-visible{border-color:#4adeffcc;box-shadow:0 0 0 3px #4adeff24}.desktop-recovery-code{overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;min-width:0}.desktop-recovery-code code{font:inherit}.desktop-unlock h1{letter-spacing:-.03em;margin:0;font-size:1.6rem;line-height:1.2}.desktop-unlock fieldset[hidden]{display:none}.desktop-passkey-spinner{border:2px solid var(--border-strong);border-top-color:var(--text);border-radius:50%;width:1.75rem;height:1.75rem;animation:.9s linear infinite desktop-passkey-spin}@keyframes desktop-passkey-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.desktop-passkey-spinner{animation-duration:2.4s}}.desktop-unlock fieldset{border:0;gap:.75rem;min-width:0;margin:0;padding:0;display:grid}.desktop-unlock .desktop-unlock-choice{align-items:flex-start;gap:.65rem;font-size:.85rem;line-height:1.5;display:flex}.desktop-unlock-choice input{flex:none;width:auto;margin-top:.2rem}.desktop-unlock-error{color:var(--err);overflow-wrap:anywhere}
|