.action-button{min-width:0;min-height:var(--control-touch-size);justify-content:center;align-items:center;gap:var(--space-2xs);padding-inline:var(--space-sm);border:var(--rule-hair) solid transparent;border-radius:var(--radius-control);font:inherit;transition:background-color var(--dur-micro) var(--ease-in-out), border-color var(--dur-micro) var(--ease-in-out), transform var(--dur-micro) var(--ease-out);font-weight:700;line-height:1.2;display:inline-flex;position:relative}.action-button--primary{border-color:var(--color-accent-strong);color:var(--color-accent-ink);background:var(--color-accent)}.action-button--secondary{border-color:var(--color-rule-strong);color:var(--color-ink);background:var(--color-surface)}.action-button--danger{border-color:var(--color-sell);color:var(--color-surface-raised);background:var(--color-sell)}.action-button--ghost{color:var(--color-ink);background:0 0;border-color:#0000}.action-button:focus-visible,.action-button.is-focus{outline-color:var(--color-focus)}.action-button:active:not(:disabled),.action-button.is-active{transform:translateY(1px)}.action-button:disabled{cursor:not-allowed;opacity:.48}.action-button[data-state=error]{border-color:var(--color-sell)}.action-button[data-state=success]{border-color:var(--color-buy)}.action-button__icon-slot,.action-button__icon-slot .app-icon,.action-button__feedback{flex:0 0 1rem;width:1rem;height:1rem}.action-button__icon-slot{place-items:center;display:inline-grid}.action-button__feedback{position:absolute;inset-inline-start:var(--space-2xs)}.action-button__spinner{border:var(--rule-fine) solid currentColor;border-right-color:#0000;border-radius:50%;animation:.7s linear infinite action-button-spin}@keyframes action-button-spin{to{transform:rotate(360deg)}}@media (hover:hover) and (pointer:fine){.action-button--primary:hover:not(:disabled),.action-button--primary.is-hover{background:var(--color-accent-hover)}.action-button--secondary:hover:not(:disabled),.action-button--ghost:hover:not(:disabled),.action-button--secondary.is-hover,.action-button--ghost.is-hover{background:var(--color-paper-2)}.action-button--danger:hover:not(:disabled),.action-button--danger.is-hover{filter:brightness(.94)}}@media (prefers-reduced-motion:reduce){.action-button{transition:none}.action-button__spinner{animation-duration:1.4s}}.icon-button{width:var(--control-touch-size);height:var(--control-touch-size);flex:0 0 var(--control-touch-size);color:var(--color-muted);background:var(--color-paper-2);transition:color var(--dur-micro) var(--ease-in-out), background-color var(--dur-micro) var(--ease-in-out), transform var(--dur-micro) var(--ease-out);border:0;border-radius:50%;place-items:center;padding:0;line-height:1;display:inline-grid}.icon-button .app-icon{width:var(--icon-size-md);height:var(--icon-size-md)}.icon-button--outlined{border:var(--rule-hair) solid var(--color-rule);color:var(--color-accent-strong);background:var(--color-surface)}.icon-button:focus-visible,.icon-button.is-focus{outline-color:var(--color-focus)}.icon-button:active:not(:disabled),.icon-button.is-active{transform:translateY(1px)}.icon-button:disabled{cursor:not-allowed;opacity:.55}.icon-button[aria-busy=true]{color:var(--color-accent-strong);background:var(--color-accent-soft)}.icon-button[aria-invalid=true]{color:var(--color-sell);background:var(--color-sell-soft);box-shadow:inset 0 0 0 var(--rule-hair) var(--color-sell)}.icon-button[data-state=success]{color:var(--color-accent-ink);background:var(--color-buy-soft);box-shadow:inset 0 0 0 var(--rule-hair) var(--color-buy)}.icon-button__spinner{width:var(--icon-size-md);height:var(--icon-size-md);border:var(--rule-fine) solid currentColor;border-inline-end-color:#0000;border-radius:50%;animation:.8s linear infinite icon-button-spin}@keyframes icon-button-spin{to{transform:rotate(360deg)}}@media (hover:hover) and (pointer:fine){.icon-button:hover:not(:disabled),.icon-button.is-hover{color:var(--color-ink);background:var(--color-paper-3)}.icon-button--outlined:hover:not(:disabled),.icon-button--outlined.is-hover{color:var(--color-accent-ink);background:var(--color-accent-soft)}}@media (prefers-reduced-motion:reduce){.icon-button{transition-duration:0s}.icon-button__spinner{animation-duration:1.2s!important}}.transaction-recovery{gap:var(--space-xs);margin-bottom:var(--space-sm);padding:var(--space-xs);border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-surface);box-shadow:var(--shadow-raised);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;display:grid}.transaction-recovery__indicator{border:var(--rule-fine) solid var(--color-accent-strong);border-radius:50%;width:.75rem;height:.75rem}.transaction-recovery--checking .transaction-recovery__indicator{border-inline-end-color:#0000;animation:.8s linear infinite transaction-recovery-spin}.transaction-recovery--confirmed .transaction-recovery__indicator{border-color:var(--color-buy);background:var(--color-buy)}.transaction-recovery--failed .transaction-recovery__indicator,.transaction-recovery--expired .transaction-recovery__indicator{border-color:var(--color-warning);background:var(--color-warning)}.transaction-recovery__content{min-width:0}.transaction-recovery__content p{color:var(--color-ink);font-size:var(--text-sm);margin:0;font-weight:700}.transaction-recovery__content span{color:var(--color-muted);font-family:var(--font-outlier);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.transaction-recovery__link{color:var(--color-accent-strong);font-size:var(--text-sm);text-underline-offset:.18em;font-weight:700}.transaction-recovery__dismiss{width:var(--control-dense-size);height:var(--control-dense-size);flex-basis:var(--control-dense-size);grid-column:4}@keyframes transaction-recovery-spin{to{transform:rotate(360deg)}}@media (width<=560px){.transaction-recovery{grid-template-columns:auto minmax(0,1fr) auto}.transaction-recovery__link{grid-column:2}.transaction-recovery__dismiss{grid-area:1/3/span 2}}@media (prefers-reduced-motion:reduce){.transaction-recovery--checking .transaction-recovery__indicator{animation-duration:1.2s}}.wallet-area{position:relative}.wallet-area>.action-button{min-width:104px}.wallet-chip{border:1px solid var(--line);min-height:44px;color:var(--ink);background:var(--surface);border-radius:14px;align-items:center;gap:9px;padding:5px 11px;display:flex}.wallet-chip>span:nth-child(2){text-align:left;gap:1px;display:grid}.wallet-chip strong{font-size:13px}.wallet-chip small{color:var(--muted);font-size:10px}.connection-dot{background:var(--brand);width:9px;height:9px;box-shadow:0 0 0 4px var(--brand-soft);border-radius:50%}.connection-dot.warning{background:var(--danger);box-shadow:0 0 0 4px var(--danger-soft)}.wallet-error{border:var(--rule-hair) solid var(--color-sell);width:min(270px,82vw);color:var(--color-sell);background:var(--color-sell-soft);box-shadow:var(--shadow-overlay);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:8px;padding:9px 11px;font-size:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.wallet-error button{color:currentColor;background:0 0;border:0;padding:0;font-size:18px;line-height:1}:root{--color-paper:oklch(97.5% .008 175);--color-paper-2:oklch(95% .012 175);--color-paper-3:oklch(91.5% .016 175);--color-surface:oklch(99.2% .004 175);--color-surface-raised:oklch(100% .002 175);--color-rule:oklch(88% .016 175);--color-rule-strong:oklch(77% .022 175);--color-muted:oklch(53% .025 220);--color-neutral:oklch(42% .035 228);--color-ink-2:oklch(34% .045 238);--color-ink:oklch(25% .05 244);--color-accent:oklch(77% .17 159);--color-accent-hover:oklch(72% .16 159);--color-accent-strong:oklch(47% .135 159);--color-accent-soft:oklch(95% .04 159);--color-accent-ink:oklch(24% .055 163);--color-focus:oklch(54% .16 232);--color-buy:oklch(47% .135 159);--color-buy-soft:oklch(95% .035 159);--color-sell:oklch(51% .16 35);--color-sell-soft:oklch(95% .035 35);--color-warning:oklch(48% .12 78);--color-warning-soft:oklch(96% .035 78);--color-favorite:oklch(62% .18 75);--color-overlay:oklch(20% .025 175/.38);--color-overlay-soft:oklch(25% .025 175/.08);--color-shimmer:oklch(100% .002 175/.72);--font-display:"Avenir Next", "PingFang SC", "Microsoft YaHei", ui-sans-serif, system-ui, sans-serif;--font-body:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-outlier:ui-monospace, "SFMono-Regular", "Cascadia Code", "Roboto Mono", monospace;--text-xs:.6875rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:1.875rem;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:2.5rem;--space-2xl:4rem;--rail-header-height:8.5rem;--rule-hair:1px;--rule-fine:2px;--radius-card:.875rem;--radius-input:.625rem;--radius-control:.75rem;--radius-pill:999px;--control-touch-size:2.75rem;--control-dense-size:1.75rem;--icon-size-md:1.25rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--shadow-raised:0 1px 2px oklch(20% .02 190/.06);--shadow-overlay:0 18px 50px oklch(20% .025 175/.18);--z-base:1;--z-raised:10;--z-sticky:200;--z-modal:400;--z-toast:500;--brand:var(--color-accent);--brand-strong:var(--color-accent-strong);--brand-soft:var(--color-accent-soft);--danger:var(--color-sell);--danger-soft:var(--color-sell-soft);--ink:var(--color-ink);--muted:var(--color-muted);--line:var(--color-rule);--surface:var(--color-surface);--surface-alt:var(--color-paper-2);color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--color-paper);overflow-x:clip}body{background:var(--color-paper);min-width:320px;min-height:100dvh;font-size:var(--text-base);margin:0;line-height:1.5;overflow-x:clip}h1,h2,h3,h4,h5,h6{overflow-wrap:anywhere;min-width:0}button,input,select{font:inherit;outline-offset:1px;outline:2px solid #0000}button{cursor:pointer;white-space:nowrap}button,[role=button],summary{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--color-focus)}button:active:not(:disabled){filter:brightness(.96)}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}.app-icon{flex:none;width:1.25em;height:1.25em;display:block}.app-shell{min-height:100dvh;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.app-shell.view-trade .page-shell,.app-shell.view-orders .page-shell{min-height:100dvh}.topbar{padding:max(var(--space-xs), env(safe-area-inset-top)) max(var(--space-sm), env(safe-area-inset-right)) var(--space-xs) max(var(--space-sm), env(safe-area-inset-left));border-bottom:var(--rule-hair) solid var(--color-rule);background:var(--color-surface);justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar h1{font-family:var(--font-outlier);font-size:var(--text-lg);letter-spacing:-.04em;margin:0}.topbar-actions{align-items:center;gap:var(--space-2xs);min-width:0;display:flex}.locale-toggle{min-width:var(--control-touch-size);padding-inline:var(--space-2xs)}.page-shell{width:min(100%,1240px);padding:var(--space-md) max(var(--space-sm), env(safe-area-inset-right)) var(--space-lg) max(var(--space-sm), env(safe-area-inset-left));margin:0 auto}.page-load-state{padding:var(--space-xl) var(--space-sm);color:var(--color-muted);font-size:var(--text-sm);text-align:center;margin:0}.bottom-nav{z-index:var(--z-sticky);padding-bottom:env(safe-area-inset-bottom);border-top:var(--rule-hair) solid var(--color-rule);background:var(--color-surface-raised);box-shadow:var(--shadow-raised);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{min-height:70px;color:var(--color-muted);font-size:var(--text-xs);background:0 0;border:0;place-content:center;gap:3px;display:grid}.bottom-nav button .app-icon{width:21px;height:21px}.bottom-nav button.active{color:var(--color-accent-strong);font-weight:700}.card{border:var(--rule-hair) solid var(--color-rule);border-radius:var(--radius-card);background:var(--color-surface)}.section-header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.section-header h2,.section-header h3{font-family:var(--font-display);letter-spacing:-.025em;margin:0}.section-header p{max-width:62ch;color:var(--color-muted);font-size:var(--text-sm);margin:5px 0 0}.status-pill{border-radius:var(--radius-pill);min-height:26px;color:var(--color-accent-ink);background:var(--color-accent-soft);font-size:var(--text-xs);align-items:center;gap:6px;padding:0 9px;font-weight:700;display:inline-flex}.status-pill.warning{color:var(--color-sell);background:var(--color-sell-soft)}.empty-state{color:var(--color-muted);text-align:center;padding:40px 24px}.empty-state>p{margin:0}.empty-state-actions{justify-content:center;gap:var(--space-2xs);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.skeleton{border-radius:var(--radius-input);background:var(--color-paper-3);min-height:18px;position:relative;overflow:hidden}.skeleton:after{background:linear-gradient(90deg, transparent, var(--color-shimmer), transparent);content:"";animation:1.2s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.bottom-sheet-dialog{box-sizing:border-box;width:100%;max-width:none;height:100%;max-height:none;color:inherit;background:0 0;border:0;margin:0;padding:48px 0 0;position:fixed;inset:0;overflow:hidden}.bottom-sheet-dialog[open]{justify-content:center;align-items:flex-end;display:flex}.bottom-sheet-dialog::backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.bottom-sheet{width:min(100%,680px);max-height:min(88dvh,820px);padding:8px 18px calc(20px + env(safe-area-inset-bottom));border:var(--rule-hair) solid var(--color-rule);border-radius:var(--space-md) var(--space-md) 0 0;background:var(--color-surface-raised);box-shadow:var(--shadow-overlay);animation:sheet-in var(--dur-short) var(--ease-out);border-bottom:0;overflow:auto}.sheet-handle{border-radius:var(--radius-pill);background:var(--color-rule-strong);width:38px;height:4px;margin:0 auto 7px}.sheet-header{justify-content:space-between;align-items:center;min-height:48px;display:flex}.sheet-header h2{font-family:var(--font-display);font-size:var(--text-md);margin:0}@keyframes sheet-in{0%{opacity:0;transform:translateY(22px)}}@keyframes shimmer{to{transform:translate(100%)}}@media (width>=60rem){.topbar{z-index:calc(var(--z-sticky) + 1);width:216px;height:var(--rail-header-height);padding:var(--space-md) var(--space-lg);border-right:var(--rule-hair) solid var(--color-rule);border-bottom:0;flex-direction:column;justify-content:flex-start;align-items:flex-start;position:fixed;top:0;left:0}.topbar-actions,.topbar-actions .wallet-area,.topbar-actions .wallet-area>.action-button{width:100%}.locale-toggle{z-index:var(--z-sticky);bottom:var(--space-sm);left:var(--space-sm);width:calc(216px - (2 * var(--space-sm)));position:fixed}.page-shell{padding:var(--space-lg) clamp(var(--space-lg), 4vw, var(--space-2xl))}.bottom-nav{top:var(--rail-header-height);gap:var(--space-2xs);width:216px;padding:var(--space-sm);border-top:0;border-right:var(--rule-hair) solid var(--color-rule);background:var(--color-surface);box-shadow:none;flex-direction:column;display:flex;bottom:0;right:auto}.bottom-nav button{place-content:center start;gap:var(--space-xs);min-height:48px;padding-inline:var(--space-sm);border-radius:var(--radius-control);font-size:var(--text-sm);grid-template-columns:24px auto}.bottom-nav button.active{background:var(--color-accent-soft)}.app-shell{padding-bottom:0;padding-left:216px}.app-shell.view-trade .page-shell,.app-shell.view-orders .page-shell{min-height:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}}
