.gx-widget {
  --gxw-pad: 18px;
  --gxw-radius: var(--gx-radius-2xl);
  --gxw-field-r: var(--gx-radius-lg);
  --gxw-amt: 1.875rem;
  --gxw-bg: rgb(var(--gx-ink-950-rgb) / .94);
  --gxw-field-bg: rgb(var(--gx-line-rgb) / .028);
  --gxw-field-bg-focus: rgb(var(--gx-line-rgb) / .045);
  --gxw-field-line: inset 0 0 0 1px var(--gx-line), inset 0 1px 0 rgb(255 255 255 / .025);
  --gxw-cut: var(--gx-ink-950);
  --gxw-ring: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .72), 0 0 0 3px rgb(var(--gx-violet-rgb) / .12);
  position: relative;
  isolation: isolate;
  container: gxw / inline-size;
  width: 100%;
  max-width: var(--gx-widget-max, 440px);
  margin-inline: auto;
  font-family: var(--gx-font-sans);
  font-size: var(--gx-fs-xs);
  line-height: 1.45;
  color: var(--gx-text-2);
  text-align: left;
  -webkit-tap-highlight-color: transparent;
}
.gx-widget *, .gx-widget *::before, .gx-widget *::after { box-sizing: border-box; }

.gx-widget--full::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 10% -6% 0;
  background: radial-gradient(50% 40% at 50% 30%, rgb(var(--gx-violet-rgb) / .1), transparent 72%);
  filter: blur(40px);
  pointer-events: none;
}

.gx-widget__card {
  position: relative;
  isolation: isolate;
  padding: var(--gxw-pad);
  border-radius: var(--gxw-radius);
  background-color: var(--gxw-bg);
  background-image:
    radial-gradient(90% 180px at 50% 0%, rgb(var(--gx-violet-rgb) / .075), transparent 72%),
    linear-gradient(180deg, rgb(255 255 255 / .018), rgb(255 255 255 / 0) 140px);
  -webkit-backdrop-filter: blur(20px) saturate(140%);
  backdrop-filter: blur(20px) saturate(140%);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / .05),
    0 1px 2px rgb(0 0 0 / .5),
    0 24px 48px -20px rgb(0 0 0 / .8),
    0 64px 120px -40px rgb(var(--gx-void-rgb)),
    0 0 64px -36px rgb(var(--gx-violet-rgb) / .3);
}
.gx-widget__card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 5;
  padding: 1px;
  border-radius: inherit;
  background:
    radial-gradient(220px circle at var(--mx, 50%) var(--my, -200px), rgb(var(--gx-neon-rgb) / calc(var(--gx-glow-a) * .38)), transparent 70%),
    linear-gradient(180deg,
    rgb(var(--gx-line-rgb) / .26) 0%,
    rgb(var(--gx-line-rgb) / .14) 90px,
    rgb(var(--gx-line-rgb) / .1) 60%,
    rgb(var(--gx-line-rgb) / .12) 100%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  pointer-events: none;
}
.gx-widget__card { --gx-glow-a: 0; transition: --gx-glow-a var(--gx-dur-4) var(--gx-ease); }
.gx-widget__card:hover { --gx-glow-a: 1; }
.gx-widget__card::after {
  content: "";
  position: absolute;
  z-index: 5;
  top: 0;
  left: 22%;
  right: 22%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgb(255 255 255 / .3) 45%, rgb(var(--gx-neon-rgb) / .34) 60%, transparent);
  opacity: .6;
  pointer-events: none;
}

.gx-widget__artwrap {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  border-radius: inherit;
  pointer-events: none;
}
.gx-widget__art {
  position: absolute;
  top: 0;
  right: 0;
  width: 280px;
  height: 205px;
  -webkit-mask-image: radial-gradient(82% 90% at 100% 0%, #000 22%, rgb(0 0 0 / .5) 52%, transparent 80%);
  mask-image: radial-gradient(82% 90% at 100% 0%, #000 22%, rgb(0 0 0 / .5) 52%, transparent 80%);
}
.gx-widget__art .c1 { stroke: rgb(var(--gx-neon-rgb) / .13); stroke-width: 1; }
.gx-widget__art .c2 { stroke: rgb(var(--gx-neon-rgb) / .1); stroke-width: 1; stroke-dasharray: 1.5 6; }
.gx-widget__art .c3 { stroke: rgb(var(--gx-neon-rgb) / .06); stroke-width: 1; }
.gx-widget__art .e { stroke: rgb(var(--gx-neon-rgb) / .06); stroke-width: 1; }
.gx-widget__art .p { stroke: rgb(var(--gx-neon-rgb) / .16); stroke-width: 1; }

.gx-widget__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 56px;
  margin: calc(var(--gxw-pad) * -1) calc(var(--gxw-pad) * -1) var(--gxw-pad);
  padding: 0 calc(var(--gxw-pad) - 4px) 0 var(--gxw-pad);
  border-bottom: 1px solid var(--gx-line);
}
.gx-widget__title {
  font-size: .9375rem;
  font-weight: 560;
  line-height: 1.2;
  letter-spacing: -0.012em;
  color: var(--gx-text);
}
.gx-widget .gx-widget__type {
  --gx-seg-h: 26px;
  --gx-seg-pad: 3px;
  background-color: rgb(var(--gx-void-rgb) / .7);
}
.gx-widget .gx-widget__type > * {
  gap: 5px;
  padding: 0 10px 0 9px;
  font-size: 12px;
  font-weight: 500;
}
.gx-widget .gx-widget__type > * > svg { width: 12px; height: 12px; opacity: .8; }

.gx-widget__pair { position: relative; display: grid; }
.gx-widget__seam { position: relative; z-index: 4; height: 4px; }

.gx-widget__field {
  position: relative;
  display: grid;
  gap: 0;
  min-width: 0;
  padding: 11px 12px 10px 14px;
  border-radius: var(--gxw-field-r);
  background-color: var(--gxw-field-bg);
  box-shadow: var(--gxw-field-line);
  transition: box-shadow var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__field:hover { box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .025); }
.gx-widget__field:has(.gx-widget__input:focus) {
  background-color: var(--gxw-field-bg-focus);
  box-shadow: var(--gxw-ring);
}
.gx-widget__field--to { background-color: rgb(var(--gx-line-rgb) / .018); }
.gx-widget__field.has-error,
.gx-widget__field.has-error:hover {
  box-shadow: inset 0 0 0 1px rgb(var(--gx-danger-rgb) / .5), 0 0 0 3px rgb(var(--gx-danger-rgb) / .06);
}

.gx-widget__ftop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 20px;
}
.gx-widget__label {
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 0;
  color: var(--gx-text-3);
  cursor: text;
}
.gx-widget__row {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 46px;
}
.gx-widget__amount {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  --k: 1;
}
.gx-widget__approx {
  flex: none;
  max-width: 1.1em;
  margin-right: .12em;
  overflow: hidden;
  font-size: calc(var(--gxw-amt) * var(--k) * .66);
  font-weight: 400;
  line-height: 1;
  color: var(--gx-text-3);
  transition: max-width var(--gx-dur-3) var(--gx-ease), opacity var(--gx-dur-2) var(--gx-ease), margin var(--gx-dur-3) var(--gx-ease);
}
.gx-widget:not(.is-float) .gx-widget__approx { max-width: 0; margin-right: 0; opacity: 0; }

.gx-widget__numwrap {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  height: 46px;
}
.gx-widget__input,
.gx-widget__num {
  font-family: var(--gx-font-sans);
  font-size: calc(var(--gxw-amt) * var(--k));
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.03em;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum" 1;
}
.gx-widget__input {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: none;
  background: none;
  box-shadow: none;
  color: var(--gx-text);
  caret-color: var(--gx-violet-300);
  text-overflow: clip;
  appearance: none;
  -webkit-appearance: none;
}
.gx-widget__input::placeholder { color: var(--gx-text-4); opacity: 1; }
.gx-widget__input:focus-visible { outline: none; }
.gx-widget__numwrap:not(:focus-within) .gx-widget__input:not(:placeholder-shown) { color: transparent; }
.gx-widget__num {
  position: absolute;
  inset: 0 auto 0 0;
  display: flex;
  align-items: center;
  white-space: pre;
  color: var(--gx-text);
  pointer-events: none;
}
.gx-widget__numwrap:focus-within .gx-widget__num { visibility: hidden; }
.gx-widget__num > span,
.gx-widget__rate-v > span { display: inline-block; }
.gx-widget__num > .is-in,
.gx-widget__rate-v > .is-in {
  animation: gxw-digit-up 520ms var(--gx-ease) both;
  animation-delay: calc(var(--i, 0) * 14ms);
}
.gx-widget__num[data-dir="down"] > .is-in,
.gx-widget__rate-v[data-dir="down"] > .is-in { animation-name: gxw-digit-down; }

.gx-widget__skel {
  position: absolute;
  top: 50%;
  left: 0;
  width: 56%;
  height: 22px;
  margin-top: -11px;
  border-radius: 7px;
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--gx-dur-2) var(--gx-ease) 120ms, visibility 0s linear 360ms;
}
.gx-widget.is-loading .gx-widget__field--to .gx-widget__skel,
.gx-widget.is-loading .gx-widget__rate-text .gx-widget__skel {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--gx-dur-2) var(--gx-ease) 120ms, visibility 0s;
}
.gx-widget.is-loading .gx-widget__field--to .gx-widget__num,
.gx-widget.is-loading .gx-widget__field--to .gx-widget__input::placeholder { opacity: 0; }
.gx-widget.is-loading .gx-widget__usd:empty::before,
.gx-widget.is-loading .gx-widget__limits b {
  content: "";
  display: inline-block;
  vertical-align: middle;
  border-radius: 4px;
  color: transparent;
  background-color: rgb(var(--gx-line-rgb) / .07);
  background-image: linear-gradient(100deg, rgb(255 255 255 / 0) 30%, rgb(var(--gx-line-rgb) / .1) 50%, rgb(255 255 255 / 0) 70%);
  background-size: 200% 100%;
  animation: gx-shimmer 1.6s var(--gx-ease-in-out) infinite;
}
.gx-widget.is-loading .gx-widget__usd:empty::before { width: 56px; height: 9px; }
.gx-widget.is-loading .gx-widget__limits b { min-width: 30px; height: 9px; line-height: 9px; overflow: hidden; }

.gx-widget__asset {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 38px;
  padding: 0 9px 0 6px;
  border-radius: var(--gx-radius-pill);
  font-size: .9375rem;
  font-weight: 560;
  letter-spacing: -0.01em;
  color: var(--gx-text);
  white-space: nowrap;
  background-color: rgb(var(--gx-ink-800-rgb) / .72);
  background-image: linear-gradient(180deg, rgb(255 255 255 / .04), rgb(255 255 255 / 0));
  box-shadow:
    inset 0 0 0 1px var(--gx-line-strong),
    inset 0 1px 0 rgb(255 255 255 / .06),
    0 1px 2px rgb(0 0 0 / .5);
  transition:
    background-color var(--gx-dur-2) var(--gx-ease),
    box-shadow var(--gx-dur-2) var(--gx-ease),
    scale var(--gx-dur-1) var(--gx-ease);
}
.gx-widget__asset:hover {
  background-color: rgb(var(--gx-ink-700-rgb) / .8);
  box-shadow:
    inset 0 0 0 1px var(--gx-line-bright),
    inset 0 1px 0 rgb(255 255 255 / .08),
    0 1px 2px rgb(0 0 0 / .5);
}
.gx-widget__asset:active { scale: .97; }
.gx-widget__asset:focus-visible { outline: 2px solid var(--gx-violet-300); outline-offset: 2px; border-radius: var(--gx-radius-pill); }
.gx-widget__glyph { display: grid; width: 26px; height: 26px; flex: none; }
.gx-widget__glyph > svg { width: 26px; height: 26px; }
.gx-widget__tick { line-height: 1; }
.gx-widget__asset .gx-net { margin-left: -1px; }
.gx-widget__chev {
  display: grid;
  margin-left: -2px;
  color: var(--gx-text-3);
  transition: color var(--gx-dur-2) var(--gx-ease), transform var(--gx-dur-3) var(--gx-ease);
}
.gx-widget__asset:hover .gx-widget__chev { color: var(--gx-text-2); transform: translateY(1px); }

.gx-widget .gx-net,
.gx-picker .gx-net {
  height: 18px;
  padding: 0 5px;
  border-radius: 5px;
  font-family: var(--gx-font-sans);
  font-size: var(--gx-fs-3xs);
  font-weight: 500;
  line-height: 1;
  letter-spacing: var(--gx-tracking-caps);
  vertical-align: 1px;
}

.gx-widget__ffoot {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 18px;
  font-size: 12px;
  line-height: 1.3;
  color: var(--gx-text-3);
  font-variant-numeric: tabular-nums;
}
.gx-widget__usd { min-width: 0; white-space: nowrap; }
.gx-widget__delta {
  margin-left: 6px;
  font-size: 12px;
  color: var(--gx-text-3);
}
.gx-widget__err {
  display: none;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
  color: var(--gx-danger);
}
.gx-widget__err > svg { flex: none; margin-top: 1px; }
.gx-widget__field.has-error .gx-widget__usd { display: none; }
.gx-widget__field.has-error .gx-widget__err { display: inline-flex; animation: gxw-rise var(--gx-dur-3) var(--gx-ease) both; }
.gx-widget--full .gx-widget__field--from.has-error { padding-bottom: 20px; transition: box-shadow var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease), padding var(--gx-dur-3) var(--gx-ease); }
.gx-widget__limits {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: -3px -6px -3px auto;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.gx-widget__limit {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  height: 24px;
  padding: 0 6px;
  border-radius: 6px;
  font-size: 12px;
  line-height: 24px;
  color: var(--gx-text-3);
  transition: color var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease), box-shadow var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__limit > span {
  font-family: var(--gx-font-sans);
  font-size: var(--gx-fs-3xs);
  font-weight: 500;
  letter-spacing: var(--gx-tracking-caps);
  text-transform: uppercase;
  color: var(--gx-text-3);
}
.gx-widget__limit > b { font-weight: 500; color: var(--gx-text-2); }
.gx-widget__limit:hover { background-color: rgb(var(--gx-line-rgb) / .07); }
.gx-widget__limit:hover > b { color: var(--gx-text); }
.gx-widget__limit:focus-visible { outline-offset: 1px; border-radius: 6px; }
.gx-widget__limit.is-hit { background-color: rgb(var(--gx-danger-rgb) / .08); box-shadow: inset 0 0 0 1px rgb(var(--gx-danger-rgb) / .28); }
.gx-widget__limit.is-hit > b { color: var(--gx-danger); }
.gx-widget__limits-sep { width: 1px; height: 10px; background: var(--gx-line-strong); }
/* The 24px Min/Max targets overhang the top row by 2px; keep a 4px gap to the amount input and asset button below (both fields, so they stay the same height). */
.gx-widget--full .gx-widget__ftop { margin-bottom: 6px; }

.gx-widget__flip {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin: -17px 0 0 -17px;
  border-radius: 11px;
  color: var(--gx-text-2);
  background-color: var(--gx-ink-850);
  background-image: linear-gradient(180deg, rgb(255 255 255 / .05), rgb(255 255 255 / 0));
  box-shadow:
    0 0 0 4px var(--gxw-cut),
    inset 0 0 0 1px var(--gx-line-strong),
    inset 0 1px 0 rgb(255 255 255 / .06),
    0 6px 14px -6px rgb(0 0 0 / .8);
  transition:
    color var(--gx-dur-2) var(--gx-ease),
    box-shadow var(--gx-dur-2) var(--gx-ease),
    scale var(--gx-dur-2) var(--gx-ease-spring);
}
.gx-widget__flip:hover {
  color: var(--gx-text);
  box-shadow:
    0 0 0 4px var(--gxw-cut),
    inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .5),
    inset 0 1px 0 rgb(255 255 255 / .08),
    0 6px 14px -6px rgb(0 0 0 / .8);
}
.gx-widget__flip:active { scale: .92; }
.gx-widget__flip:focus-visible { outline: 2px solid var(--gx-violet-300); outline-offset: 3px; border-radius: 11px; }
.gx-widget__flip.is-disabled { color: var(--gx-text-4); cursor: not-allowed; }
.gx-widget__flip.is-disabled:hover { box-shadow: 0 0 0 4px var(--gxw-cut), inset 0 0 0 1px var(--gx-line), 0 6px 14px -6px rgb(0 0 0 / .7); }
.gx-widget__flip-icon {
  display: grid;
  transform: rotate(var(--r, 0deg));
  transition: transform 640ms var(--gx-ease-spring);
}
.gx-widget__flip-icon > svg { width: 16px; height: 16px; }
.gx-widget__pair.is-flipping .gx-widget__field--from .gx-widget__row { animation: gxw-from-below 560ms var(--gx-ease) both; }
.gx-widget__pair.is-flipping .gx-widget__field--to .gx-widget__row { animation: gxw-from-above 560ms var(--gx-ease) both; }

.gx-widget__quote {
  margin-top: 10px;
  border-radius: var(--gx-radius-lg);
  background-color: rgb(var(--gx-void-rgb) / .35);
  box-shadow: inset 0 0 0 1px var(--gx-line);
}
.gx-widget__rate {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 10px 0 7px;
  font-size: 12.5px;
}
.gx-widget__ttl {
  display: grid;
  place-items: center;
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: var(--gx-violet-300);
  transition: background-color var(--gx-dur-2) var(--gx-ease), color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__ttl:hover { color: var(--gx-violet-200); background-color: rgb(var(--gx-line-rgb) / .08); }
.gx-widget__ttl:focus-visible { border-radius: 50%; outline-offset: 0; }
.gx-widget__ttl > svg { transform: rotate(-90deg); overflow: visible; }
.gx-widget__ttl-track { fill: none; stroke: rgb(var(--gx-line-rgb) / .18); stroke-width: 1.7; }
.gx-widget__ttl-bar { fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; transition: stroke-dashoffset .25s linear; }
.gx-widget.is-quoting .gx-widget__ttl > svg { animation: gx-spin .9s linear infinite; }
.gx-widget.is-quoting .gx-widget__ttl-bar { stroke-dashoffset: 30px; transition: none; }
.gx-widget__rate-text {
  position: relative;
  flex: 0 1 auto;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: 500;
  color: var(--gx-text);
  font-variant-numeric: tabular-nums;
}
.gx-widget__rate-v { white-space: pre; }
.gx-widget__rate-text .gx-widget__skel { width: 136px; height: 10px; margin-top: -5px; border-radius: 4px; }
.gx-widget.is-loading .gx-widget__rate-v { opacity: 0; }
.gx-widget__quote.has-error .gx-widget__rate-text { color: var(--gx-warning); font-weight: 400; }
.gx-widget__info {
  display: grid;
  place-items: center;
  flex: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  color: var(--gx-text-4);
  cursor: help;
  transition: color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__info:hover, .gx-widget__info:focus-visible { color: var(--gx-text-2); }
.gx-widget__info:focus-visible { border-radius: 50%; outline-offset: 0; }
.gx-widget__info > svg { width: 13px; height: 13px; }
.gx-widget__agent {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: none;
  margin-left: auto;
  padding-left: 8px;
  font-size: 12px;
  color: var(--gx-text-3);
  white-space: nowrap;
  cursor: help;
}
.gx-widget__agent > b {
  font-family: var(--gx-font-sans);
  font-size: 12px;
  font-weight: 560;
  letter-spacing: 0;
  color: var(--gx-violet-200);
}
.gx-widget__agent > .gx-widget__node { margin-left: 1px; }
.gx-widget__agent:not(.is-live) > .gx-widget__node.gx-widget__node--ice { background: var(--gx-violet-300); }

.gx-widget__node,
.gx-picker .gx-widget__node {
  display: inline-block;
  flex: none;
  width: 7px;
  height: 7px;
  background: var(--gx-violet-300);
  clip-path: var(--gx-pent);
  transform: translateY(.5px);
}
.gx-widget__node.gx-widget__node--ice { background: var(--gx-ice); }
.gx-widget__node.gx-widget__node--ok { background: var(--gx-success); }
.gx-widget__node.gx-widget__node--dim { background: var(--gx-text-4); }

.gx-widget__fees-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 38px;
  padding: 0 10px;
  border-top: 1px solid var(--gx-line);
  border-radius: 0 0 var(--gx-radius-lg) var(--gx-radius-lg);
  font-size: 12.5px;
  color: var(--gx-text-2);
  text-align: left;
  transition: background-color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__fees-toggle:hover { background-color: rgb(var(--gx-line-rgb) / .025); }
.gx-widget__fees-toggle[aria-expanded="true"] { border-radius: 0; }
.gx-widget__fees-toggle:focus-visible { outline-offset: -2px; border-radius: 0 0 var(--gx-radius-lg) var(--gx-radius-lg); }
.gx-widget__fee-badge {
  display: inline-grid;
  place-items: center;
  flex: none;
  height: 20px;
  padding: 0 7px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  color: var(--gx-violet-100);
  font-variant-numeric: tabular-nums;
  background-color: rgb(var(--gx-violet-rgb) / .16);
  box-shadow:
    inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .34),
    inset 0 1px 0 rgb(255 255 255 / .06);
}
.gx-widget__fee-sum {
  display: flex;
  align-items: center;
  gap: 7px;
  flex: 1 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
}
.gx-widget__fee-net { color: var(--gx-text-3); overflow: hidden; text-overflow: ellipsis; }
.gx-widget__fees-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: none;
  font-size: 12px;
  color: var(--gx-text-3);
  transition: color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__fees-toggle:hover .gx-widget__fees-more { color: var(--gx-text-2); }
.gx-widget__fees-more > svg,
.gx-widget__refund-chev > svg { width: 14px; height: 14px; transition: transform var(--gx-dur-3) var(--gx-ease); }
[aria-expanded="true"] .gx-widget__fees-more > svg,
[aria-expanded="true"] .gx-widget__refund-chev > svg { transform: rotate(180deg); }

.gx-widget__collapse {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--gx-dur-3) var(--gx-ease);
}
.gx-widget__collapse.is-open { grid-template-rows: 1fr; }
.gx-widget__collapse-inner {
  min-height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: visibility 0s linear var(--gx-dur-3);
}
.gx-widget__collapse.is-open > .gx-widget__collapse-inner { visibility: visible; transition-delay: 0s; }

.gx-widget__fees {
  display: grid;
  margin: 0;
  padding: 4px 12px 10px;
  border-top: 1px solid var(--gx-line-faint);
}
.gx-widget__fees > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 6px 0;
}
.gx-widget__fees dt { font-size: 12px; color: var(--gx-text-3); white-space: nowrap; }
.gx-widget__fees dd {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 2px 8px;
  margin: 0;
  font-size: 12px;
  color: var(--gx-text-2);
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.gx-widget__fees dd > b { font-weight: 600; color: var(--gx-text); }
.gx-widget__fee-amt { color: var(--gx-text-3); }
.gx-widget__incl { color: var(--gx-success) !important; align-items: center !important; gap: 5px !important; }
.gx-widget__fees > .gx-widget__fees-total {
  margin-top: 4px;
  padding-top: 9px;
  border-top: 1px dashed var(--gx-line-strong);
}
.gx-widget__fees-total dt { color: var(--gx-text-2); }
.gx-widget__fees-total dd { font-size: 12.5px; font-weight: 500; color: var(--gx-text); }

.gx-widget__dest {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}
.gx-widget__sect {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  margin: 0 2px -2px;
}
.gx-widget__sect-net {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  color: var(--gx-text-3);
  white-space: nowrap;
}
.gx-widget__sect-net > span { overflow: hidden; text-overflow: ellipsis; }
.gx-widget__sect-net > svg { width: 14px; height: 14px; }

.gx-widget__afield { display: grid; gap: 6px; min-width: 0; }
.gx-widget__afield > * { min-width: 0; }
.gx-widget__afield[hidden] { display: none; }
.gx-widget__alabel {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 0 2px;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--gx-text-2);
}
.gx-widget__ahint {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  color: var(--gx-text-3);
}
.gx-widget__ainput {
  position: relative;
  display: flex;
  align-items: center;
  height: 44px;
  border-radius: var(--gx-radius-field);
  background-color: var(--gxw-field-bg);
  box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .025);
  transition: box-shadow var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__ainput:hover { box-shadow: inset 0 0 0 1px var(--gx-line-bright), inset 0 1px 0 rgb(255 255 255 / .025); }
.gx-widget__ainput:focus-within {
  background-color: var(--gxw-field-bg-focus);
  box-shadow: var(--gxw-ring);
}
.gx-widget__afield.is-valid .gx-widget__ainput { box-shadow: inset 0 0 0 1px rgb(var(--gx-success-rgb) / .32), inset 0 1px 0 rgb(255 255 255 / .025); }
.gx-widget__afield.is-valid .gx-widget__ainput:focus-within { box-shadow: inset 0 0 0 1px rgb(var(--gx-success-rgb) / .8), 0 0 0 3px rgb(var(--gx-success-rgb) / .08); }
.gx-widget__afield.is-invalid .gx-widget__ainput,
.gx-widget__afield.is-invalid .gx-widget__ainput:focus-within {
  background-color: rgb(var(--gx-danger-rgb) / .035);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-danger-rgb) / .55), 0 0 0 3px rgb(var(--gx-danger-rgb) / .07);
}
.gx-widget__ain {
  flex: 1 1 auto;
  width: 0;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0 10px 0 14px;
  border: 0;
  outline: none;
  background: none;
  font-family: var(--gx-font-mono);
  font-size: 12.5px;
  letter-spacing: 0;
  color: var(--gx-text);
  caret-color: var(--gx-violet-300);
  text-overflow: ellipsis;
}
.gx-widget__ain::placeholder {
  font-family: var(--gx-font-sans);
  font-size: 13px;
  letter-spacing: 0;
  color: var(--gx-text-4);
  opacity: 1;
}
.gx-widget__ain:focus-visible { outline: none; }
.gx-widget__astate {
  display: none;
  place-items: center;
  flex: none;
  width: 22px;
  height: 22px;
  margin-right: 8px;
  border-radius: 50%;
  color: var(--gx-success);
  background-color: rgb(var(--gx-success-rgb) / .1);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-success-rgb) / .24);
}
.gx-widget__astate > svg { width: 12px; height: 12px; }
.gx-widget__afield.is-valid .gx-widget__astate { display: grid; animation: gxw-pop var(--gx-dur-3) var(--gx-ease-spring) both; }
.gx-widget__afield.is-valid .gx-widget__paste { margin-left: 0; }
.gx-widget__paste {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex: none;
  height: 30px;
  margin-right: 7px;
  padding: 0 10px 0 9px;
  border-radius: var(--gx-radius-sm);
  font-size: 12px;
  font-weight: 500;
  color: var(--gx-text-2);
  background-color: rgb(var(--gx-ink-800-rgb) / .7);
  box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .05);
  transition: color var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease), scale var(--gx-dur-1) var(--gx-ease);
}
.gx-widget__paste:hover { color: var(--gx-text); background-color: rgb(var(--gx-ink-700-rgb) / .8); }
.gx-widget__paste:active { scale: .96; }
.gx-widget__paste:focus-visible { outline-offset: 1px; border-radius: var(--gx-radius-sm); }

.gx-widget__msg {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  padding: 0 2px;
  font-size: 12px;
  line-height: 1.45;
  color: var(--gx-text-3);
  animation: gxw-rise var(--gx-dur-3) var(--gx-ease) both;
}
.gx-widget__msg:empty { display: none; }
.gx-widget__msg > svg { flex: none; width: 13px; height: 13px; margin-top: 2px; }
.gx-widget__msg > .gx-widget__node { margin-top: 5px; }
.gx-widget__msg.is-ok { color: var(--gx-success); }
.gx-widget__msg.is-ok .gx-widget__msg-sub { color: var(--gx-text-3); }
.gx-widget__msg.is-error { color: var(--gx-danger); }
.gx-widget__msg.is-hint { color: var(--gx-text-2); }
.gx-widget__msg.is-hint > svg { color: var(--gx-violet-300); }

.gx-widget__refund {
  display: grid;
  border-radius: var(--gx-radius-field);
  background-color: rgb(var(--gx-line-rgb) / .018);
  box-shadow: inset 0 0 0 1px var(--gx-line), inset 0 1px 0 rgb(255 255 255 / .02);
  transition: box-shadow var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__refund.is-required { box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .2), inset 0 1px 0 rgb(255 255 255 / .02); }
.gx-widget__refund:has(> .gx-widget__refund-toggle:hover) { background-color: rgb(var(--gx-line-rgb) / .03); box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .02); }
.gx-widget__refund-toggle {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 58px;
  padding: 10px 14px 10px 12px;
  border-radius: var(--gx-radius-field);
  text-align: left;
}
.gx-widget__refund-toggle:focus-visible { outline-offset: -2px; border-radius: var(--gx-radius-field); }
.gx-widget__refund-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  color: var(--gx-violet-200);
  background-color: rgb(var(--gx-violet-rgb) / .12);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .24);
  transition: color var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease), box-shadow var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__refund-icon > svg { width: 15px; height: 15px; }
.gx-widget__refund-text { display: grid; gap: 3px; min-width: 0; }
.gx-widget__refund-title {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  font-size: 13px;
  font-weight: 560;
  line-height: 1.25;
  letter-spacing: -0.005em;
  color: var(--gx-text);
}
.gx-widget__refund-sub {
  font-size: 12px;
  line-height: 1.35;
  color: var(--gx-text-3);
}
.gx-widget__opt {
  display: inline-flex;
  align-items: center;
  flex: none;
  height: 18px;
  padding: 0 7px;
  border-radius: var(--gx-radius-pill);
  font-size: 11px;
  font-weight: 560;
  line-height: 1;
  letter-spacing: 0;
  color: var(--gx-text-3);
  background-color: rgb(var(--gx-line-rgb) / .035);
  box-shadow: inset 0 0 0 1px var(--gx-line-strong);
  transition: color var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease), box-shadow var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__refund.is-required .gx-widget__opt {
  color: var(--gx-violet-200);
  background-color: rgb(var(--gx-violet-rgb) / .12);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .28);
}
.gx-widget__refund.is-required .gx-widget__refund-sub { color: var(--gx-text-2); }
.gx-widget__opt-set { display: none; align-items: center; gap: 4px; }
.gx-widget__opt-set > svg { width: 11px; height: 11px; }
.gx-widget__refund:has(.gx-widget__afield:not(.gx-widget__afield--memo).is-valid) .gx-widget__opt-rec { display: none; }
.gx-widget__refund:has(.gx-widget__afield:not(.gx-widget__afield--memo).is-valid) .gx-widget__opt-set { display: inline-flex; }
.gx-widget__refund:has(.gx-widget__afield:not(.gx-widget__afield--memo).is-valid) .gx-widget__opt {
  color: var(--gx-success);
  background-color: rgb(var(--gx-success-rgb) / .08);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-success-rgb) / .26);
}
.gx-widget__refund:has(.gx-widget__afield:not(.gx-widget__afield--memo).is-valid) .gx-widget__refund-icon {
  color: var(--gx-success);
  background-color: rgb(var(--gx-success-rgb) / .08);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-success-rgb) / .22);
}
.gx-widget__refund-chev { display: grid; place-items: center; color: var(--gx-text-3); transition: color var(--gx-dur-2) var(--gx-ease); }
.gx-widget__refund-toggle:hover .gx-widget__refund-chev { color: var(--gx-text-2); }
.gx-widget__refund-body {
  display: grid;
  gap: 10px;
  margin: 0 12px;
  padding: 12px 0 12px;
  border-top: 1px solid var(--gx-line);
}
.gx-widget__hint { padding: 0 2px; font-size: 12px; line-height: 1.5; color: var(--gx-text-3); }
.gx-widget__hint b,
.gx-widget__hint strong {
  font-weight: 560;
  letter-spacing: 0;
  color: var(--gx-text-2);
}

.gx-widget__terms-wrap { display: grid; gap: 6px; margin-top: 2px; }
.gx-widget__terms { gap: 9px; font-size: 12.5px; color: var(--gx-text-2); }
.gx-widget__terms > input { width: 16px; height: 16px; border-radius: 5px; }
.gx-widget__terms a {
  color: var(--gx-violet-200);
  text-decoration: underline;
  text-decoration-color: rgb(var(--gx-neon-rgb) / .35);
  text-underline-offset: 3px;
  transition: color var(--gx-dur-2) var(--gx-ease), text-decoration-color var(--gx-dur-2) var(--gx-ease);
}
.gx-widget__terms a:hover { color: var(--gx-violet-100); text-decoration-color: currentColor; }
.gx-widget__terms-wrap.is-invalid .gx-checkbox > input:not(:checked) {
  box-shadow: inset 0 0 0 1px rgb(var(--gx-danger-rgb) / .8), 0 0 0 3px rgb(var(--gx-danger-rgb) / .1);
}

.gx-widget__alert {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 14px;
  padding: 10px 12px;
  border-radius: var(--gx-radius-field);
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--gx-danger);
  background-color: rgb(var(--gx-danger-rgb) / .07);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-danger-rgb) / .24);
  animation: gxw-rise var(--gx-dur-3) var(--gx-ease) both;
}
.gx-widget__alert > svg { flex: none; width: 15px; height: 15px; margin-top: 1px; }

.gx-widget .gx-widget__cta {
  --gx-btn-h: 48px;
  --gx-btn-fs: .9375rem;
  --gx-btn-icon: 17px;
  margin-top: 16px;
  font-weight: 560;
}
.gx-widget__cta-idle,
.gx-widget__cta-busy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  transition: opacity var(--gx-dur-2) var(--gx-ease), transform var(--gx-dur-3) var(--gx-ease);
}
.gx-widget__cta-busy {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
}
.gx-widget .gx-widget__cta.is-loading { color: rgb(255 255 255) !important; }
.gx-widget .gx-widget__cta.is-loading::before { display: none; }
.gx-widget__cta.is-loading .gx-widget__cta-idle { opacity: 0; transform: translateY(-10px); }
.gx-widget__cta.is-loading .gx-widget__cta-busy { opacity: 1; transform: none; }
.gx-widget__mark { flex: none; width: 18px; height: 18px; }

.gx-widget__assure {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 6px 0;
  margin: 16px calc(var(--gxw-pad) * -1) calc(var(--gxw-pad) * -1);
  padding: 13px var(--gxw-pad) 14px;
  border-top: 1px solid var(--gx-line);
  border-radius: 0 0 var(--gxw-radius) var(--gxw-radius);
  background-color: rgb(var(--gx-void-rgb) / .4);
  list-style: none;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--gx-text-2);
}
.gx-widget__assure > li { display: inline-flex; align-items: center; gap: 6px; padding: 0 12px; white-space: nowrap; }
.gx-widget__assure > li + li { box-shadow: -1px 0 0 var(--gx-line-strong); }
.gx-widget__assure svg { width: 14px; height: 14px; color: var(--gx-violet-300); }

.gx-widget--compact { max-width: var(--gx-widget-max, 900px); }
.gx-widget--compact .gx-widget__card {
  display: grid;
  gap: 8px;
  padding: 8px;
  border-radius: var(--gx-radius-2xl);
}
.gx-widget--compact .gx-widget__field { padding: 10px 12px 8px 14px; }
.gx-widget--compact .gx-widget__limits { display: none; }
.gx-widget--compact .gx-widget__continue {
  --gx-btn-h: 48px;
  width: 100%;
}
.gx-widget__cmeta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4px 12px;
  margin-top: 12px;
  font-size: 12px;
  color: var(--gx-text-3);
  font-variant-numeric: tabular-nums;
}
.gx-widget__cmeta b { font-weight: 600; color: var(--gx-text); }
.gx-widget__cmeta-rate { color: var(--gx-text-2); }
.gx-widget__cmeta-rate:empty,
.gx-widget__cmeta-rate:empty + .gx-dotsep { display: none; }

@container gxw (min-width: 720px) {
  .gx-widget--compact .gx-widget__card { grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; }
  .gx-widget--compact .gx-widget__pair { grid-template-columns: minmax(0, 1fr) 6px minmax(0, 1fr); }
  .gx-widget--compact .gx-widget__seam { height: auto; }
  .gx-widget--compact .gx-widget__flip-icon > svg { rotate: -90deg; }
  .gx-widget--compact .gx-widget__field--from { padding-right: 26px; }
  .gx-widget--compact .gx-widget__field--to { padding-left: 28px; }
  .gx-widget--compact .gx-widget__continue { width: auto; min-width: 152px; margin-right: 4px; }
}

@container gxw (max-width: 400px) {
  .gx-widget__card { --gxw-pad: 16px; --gxw-radius: var(--gx-radius-xl); --gxw-field-r: 13px; --gxw-amt: 1.625rem; }
  .gx-widget__title { font-size: 1rem; }
  .gx-widget__field { padding: 10px 10px 9px 13px; }
  .gx-widget__row { min-height: 42px; }
  .gx-widget__numwrap { height: 44px; margin-block: -1px; } /* 44px tap target; the -1px margins keep the 42px row */
  .gx-widget__asset { position: relative; gap: 6px; height: 44px; margin-block: -1px; padding: 0 8px 0 5px; font-size: .875rem; } /* relative: its 1px overhang stays tappable above the row below */
  .gx-widget__glyph, .gx-widget__glyph > svg { width: 24px; height: 24px; }
  .gx-widget__agent-by { display: none; }
  .gx-widget__fee-net { display: none; }
  .gx-widget__fee-sum .gx-dotsep { display: none; }
  .gx-widget__rate { padding-right: 9px; }
  .gx-widget__head { min-height: 52px; }
  .gx-widget__assure { font-size: 12px; }
  .gx-widget__assure > li { gap: 5px; padding: 0 10px; }
  .gx-widget__assure svg { width: 13px; height: 13px; }
  .gx-widget__refund-toggle { gap: 11px; padding-inline: 11px 12px; }
  .gx-widget__opt { font-size: 12px; }
  /* 44px tap targets on phones. Fixed/Floating: the -9px margins keep the 26px track and the head height. */
  .gx-widget .gx-widget__type > * { height: 44px; margin-block: -9px; }
  .gx-widget .gx-widget__type > :focus-visible { outline-offset: -8px; }
  /* Paste fills the 44px address box; ::before draws the unchanged 30px pill. */
  .gx-widget__paste { position: relative; isolation: isolate; height: 44px; background: none; box-shadow: none; }
  .gx-widget__paste::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 7px 0;
    border-radius: inherit;
    background-color: rgb(var(--gx-ink-800-rgb) / .7);
    box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .05);
    transition: background-color var(--gx-dur-2) var(--gx-ease);
  }
  .gx-widget__paste:hover { background: none; }
  .gx-widget__paste:hover::before { background-color: rgb(var(--gx-ink-700-rgb) / .8); }
  .gx-widget__paste:focus-visible { outline-offset: -6px; }
  /* Terms label: 13px block padding balanced by -13px margins = a 44px row without moving the layout. */
  .gx-widget__terms { display: flex; min-height: 44px; padding-block: 13px; margin-block: -13px; }
  /* Invisible 44px hit areas (::after) for the small quote controls: same visuals, same widget height (CLS reserve).
     Min/Max reach up over the field's top padding and stop at the amount row. */
  .gx-widget__limit { position: relative; }
  .gx-widget__limit::after { content: ""; position: absolute; inset: -17px 0 -3px; }
  .gx-widget__flip::after { content: ""; position: absolute; inset: -5px; border-radius: 15px; }
  /* Refresh ring and rate info: from the 10px gap above the quote box down to the fee row (z-index: over the rate text they overhang). */
  .gx-widget__ttl,
  .gx-widget__info { position: relative; z-index: 1; }
  .gx-widget__ttl::after { content: ""; position: absolute; inset: -15px -9px -3px; }
  .gx-widget__info::after { content: ""; position: absolute; inset: -16px -10px -4px; }
  .gx-widget__fees-toggle { position: relative; }
  .gx-widget__fees-toggle::after { content: ""; position: absolute; inset: -3px 0; }
}
@container gxw (max-width: 340px) {
  .gx-widget__card { --gxw-amt: 1.5rem; }
  .gx-widget .gx-widget__type > * { padding: 0 9px; }
  .gx-widget .gx-widget__type > * > svg { display: none; }
  .gx-widget__refund-title { gap: 6px; } /* keeps "Refund address" + the 12px chip on one line at 320px */
  .gx-widget__opt { padding: 0 5px; }
}

.gx-modal.gx-picker-modal .gx-modal__dialog {
  --gx-modal-w: 420px;
  display: flex;
  flex-direction: column;
  height: min(620px, calc(100dvh - 48px));
  padding: 0;
  overflow: hidden;
  border-radius: var(--gx-radius-2xl);
  background-color: rgb(var(--gx-ink-950-rgb) / .98);
  background-image:
    radial-gradient(90% 160px at 50% 0%, rgb(var(--gx-violet-rgb) / .07), transparent 72%),
    linear-gradient(180deg, rgb(255 255 255 / .018), rgb(255 255 255 / 0) 120px);
  box-shadow:
    0 0 0 1px rgb(var(--gx-line-rgb) / .16),
    inset 0 1px 0 rgb(255 255 255 / .05),
    var(--gx-shadow-xl);
}
.gx-picker-modal .gx-modal__close { top: 14px; right: 14px; width: 32px; height: 32px; }
.gx-picker-modal .gx-modal__close svg { width: 14px; height: 14px; }
.gx-picker-modal .gx-modal__body { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
.gx-picker { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
.gx-picker__head { padding: 20px 60px 12px 20px; }
.gx-picker__eyebrow { margin-bottom: 8px; color: var(--gx-violet-300); }
.gx-picker__title {
  font-size: 1.0625rem;
  font-weight: 560;
  line-height: 1.25;
  letter-spacing: -0.018em;
  color: var(--gx-text);
}
.gx-picker__sub { margin-top: 4px; font-size: 12.5px; color: var(--gx-text-3); }
.gx-picker__search {
  position: relative;
  display: flex;
  align-items: center;
  flex: none;
  height: 42px;
  margin: 0 14px 6px;
  border-radius: var(--gx-radius-field);
  background-color: rgb(var(--gx-line-rgb) / .03);
  box-shadow: inset 0 0 0 1px var(--gx-line-strong), inset 0 1px 0 rgb(255 255 255 / .025);
  transition: box-shadow var(--gx-dur-2) var(--gx-ease);
}
.gx-picker__search:focus-within {
  box-shadow:
    inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .72),
    0 0 0 3px rgb(var(--gx-violet-rgb) / .12);
}
.gx-picker__sicon { position: absolute; left: 13px; top: 50%; display: grid; margin-top: -8px; color: var(--gx-text-3); pointer-events: none; }
.gx-picker__input {
  flex: 1 1 auto;
  width: 0;
  min-width: 0;
  height: 100%;
  padding: 0 10px 0 38px;
  border: 0;
  outline: none;
  background: none;
  font-family: var(--gx-font-sans);
  font-size: .875rem;
  color: var(--gx-text);
  caret-color: var(--gx-violet-300);
}
.gx-picker__input::placeholder { color: var(--gx-text-4); opacity: 1; }
.gx-picker__input:focus-visible { outline: none; }
.gx-picker__input::-webkit-search-cancel-button { display: none; }
.gx-picker__clear {
  display: grid;
  place-items: center;
  flex: none;
  width: 26px;
  height: 26px;
  margin-right: 8px;
  border-radius: var(--gx-radius-sm);
  color: var(--gx-text-3);
  transition: color var(--gx-dur-2) var(--gx-ease), background-color var(--gx-dur-2) var(--gx-ease);
}
.gx-picker__clear:hover { color: var(--gx-text); background-color: rgb(var(--gx-line-rgb) / .08); }
.gx-picker__esc { flex: none; margin-right: 10px; }
.gx-picker__clear:not([hidden]) ~ .gx-picker__esc { display: none; }
.gx-picker .gx-kbd { font-size: var(--gx-fs-3xs); }

.gx-picker__list {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 2px 8px 10px;
  scroll-padding: 36px 0 8px;
}
.gx-picker__list[hidden] { display: none; }
.gx-picker__glabel {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 10px 6px;
  background-color: rgb(var(--gx-ink-950-rgb) / .96);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.gx-picker__gcount { font-weight: 500; letter-spacing: 0; color: var(--gx-text-4); }
.gx-picker__group + .gx-picker__group { margin-top: 4px; }

.gx-picker__opt {
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 11px;
  min-height: 50px;
  padding: 7px 10px 7px 9px;
  border-radius: var(--gx-radius-field);
  cursor: pointer;
  transition: background-color var(--gx-dur-1) var(--gx-ease), box-shadow var(--gx-dur-1) var(--gx-ease);
}
.gx-picker__opt.is-active { background-color: rgb(var(--gx-line-rgb) / .055); box-shadow: inset 0 0 0 1px var(--gx-line-strong); }
.gx-picker__opt.is-current { background-color: rgb(var(--gx-violet-rgb) / .1); box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .26); }
.gx-picker__opt.is-current.is-active { background-color: rgb(var(--gx-violet-rgb) / .15); box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .42); }
.gx-picker__opt[aria-disabled="true"] { cursor: not-allowed; }
.gx-picker__opt[aria-disabled="true"] .gx-picker__glyph,
.gx-picker__opt[aria-disabled="true"] .gx-picker__id { opacity: .42; filter: grayscale(.7); }
.gx-picker__glyph { display: grid; width: 28px; height: 28px; }
.gx-picker__glyph > svg { width: 28px; height: 28px; }
.gx-picker__id { display: grid; gap: 2px; min-width: 0; }
.gx-picker__tick {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: .875rem;
  line-height: 1.2;
  color: var(--gx-text);
}
.gx-picker__tick > b { font-weight: 560; }
.gx-picker__name {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 12px;
  line-height: 1.3;
  color: var(--gx-text-3);
}
.gx-picker__on { color: var(--gx-text-4); }
.gx-picker__tag {
  padding: 3px 5px;
  border-radius: 5px;
  font-size: var(--gx-fs-3xs);
  font-weight: 600;
  line-height: 1;
  letter-spacing: var(--gx-tracking-caps);
  text-transform: uppercase;
  color: var(--gx-violet-200);
  background-color: rgb(var(--gx-violet-rgb) / .12);
  box-shadow: inset 0 0 0 1px rgb(var(--gx-violet-400-rgb) / .26);
}
.gx-picker__meta {
  display: grid;
  justify-items: end;
  gap: 1px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.gx-picker__price { font-size: 12.5px; color: var(--gx-text-2); }
.gx-picker__chg { font-size: 11px; color: var(--gx-text-4); }
.gx-picker__chg.is-up { color: var(--gx-success); }
.gx-picker__chg.is-down { color: var(--gx-danger); }
.gx-picker__na { font-size: 12px; color: var(--gx-text-3); }
.gx-picker__check { display: grid; place-items: center; color: var(--gx-violet-300); }
.gx-picker__check > svg { width: 14px; height: 14px; }

.gx-picker__empty {
  display: grid;
  flex: 1 1 auto;
  place-content: center;
  justify-items: center;
  gap: 6px;
  padding: 20px 28px 48px;
  text-align: center;
}
.gx-picker__empty[hidden] { display: none; }
.gx-picker__empty-art svg { width: 48px; height: 48px; }
.gx-picker__empty-art .r { stroke: rgb(var(--gx-neon-rgb) / .28); stroke-width: 1; }
.gx-picker__empty-art .p { stroke: rgb(var(--gx-neon-rgb) / .5); stroke-width: 1.2; }
.gx-picker__empty-art .n { fill: var(--gx-violet-300); }
.gx-picker__empty-title { margin-top: 8px; font-size: .875rem; font-weight: 560; color: var(--gx-text); }
.gx-picker__empty-text { max-width: 30ch; font-size: 12.5px; line-height: 1.5; color: var(--gx-text-3); }

.gx-picker__foot {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: none;
  padding: 10px 16px;
  border-top: 1px solid var(--gx-line);
  font-size: 12px;
  color: var(--gx-text-3);
}
.gx-picker__foot > span { display: inline-flex; align-items: center; gap: 5px; }
.gx-picker__foot .gx-kbd { min-width: 18px; height: 18px; padding: 0 4px; border-radius: 5px; }
.gx-picker__src { margin-left: auto; gap: 7px !important; }

@media (max-width: 639px) {
  .gx-modal.gx-picker-modal .gx-modal__dialog { height: 86dvh; max-height: 86dvh; padding: 0; border-radius: var(--gx-radius-2xl) var(--gx-radius-2xl) 0 0; }
  .gx-picker__head { padding: 26px 56px 12px 18px; }
  .gx-picker__search { margin-inline: 12px; }
  .gx-picker__input { font-size: 1rem; }
  .gx-picker__list { padding: 2px 6px calc(12px + env(safe-area-inset-bottom)); }
  .gx-picker__esc { display: none; }
}
@media (hover: none), (max-width: 639px) {
  .gx-picker__foot > span:not(.gx-picker__src) { display: none; }
  .gx-picker__foot { justify-content: center; padding-bottom: calc(10px + env(safe-area-inset-bottom)); }
  .gx-picker__src { margin-left: 0; }
}

@keyframes gxw-digit-up {
  from { opacity: 0; transform: translateY(.42em); filter: blur(3px); }
  to { opacity: 1; transform: none; filter: none; }
}
@keyframes gxw-digit-down {
  from { opacity: 0; transform: translateY(-.42em); filter: blur(3px); }
  to { opacity: 1; transform: none; filter: none; }
}
@keyframes gxw-from-below {
  from { opacity: 0; transform: translateY(18px); filter: blur(4px); }
  to { opacity: 1; transform: none; filter: none; }
}
@keyframes gxw-from-above {
  from { opacity: 0; transform: translateY(-18px); filter: blur(4px); }
  to { opacity: 1; transform: none; filter: none; }
}
@keyframes gxw-rise {
  from { opacity: 0; transform: translateY(-3px); }
  to { opacity: 1; transform: none; }
}
@keyframes gxw-pop {
  from { opacity: 0; transform: scale(.4); }
  to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .gx-widget__num > .is-in,
  .gx-widget__rate-v > .is-in,
  .gx-widget__pair.is-flipping .gx-widget__row,
  .gx-widget__msg,
  .gx-widget__alert,
  .gx-widget__field.has-error .gx-widget__err,
  .gx-widget__afield.is-valid .gx-widget__astate { animation: none !important; }
  .gx-widget__flip-icon { transition: none; }
  .gx-widget.is-quoting .gx-widget__ttl > svg { animation: none; }
  .gx-widget .gx-mark.is-loading .gx-mark__iris { animation: none; }
}

@media (max-width: 639px) {
  .gx-widget__ain, .gx-widget__ain::placeholder { font-size: 1rem; }
}

@media (prefers-reduced-transparency: reduce) {
  .gx-widget__card { background-color: var(--gx-ink-950); }
}
@media (forced-colors: active) {
  .gx-widget__card, .gx-widget__field, .gx-widget__ainput, .gx-widget__asset, .gx-widget__quote, .gx-widget__refund, .gx-picker__opt.is-active { border: 1px solid CanvasText; }
  .gx-widget__node { background: CanvasText; }
}
