:root {
  color-scheme: dark;
  --ulx-obsidian: #05070a;
  --ulx-deep-navy: #08111f;
  --ulx-panel: rgba(9, 17, 30, 0.78);
  --ulx-panel-solid: #0a1321;
  --ulx-graphite: #151a21;
  --ulx-steel: #263342;
  --ulx-border: rgba(174, 211, 235, 0.16);
  --ulx-border-strong: rgba(0, 163, 255, 0.42);
  --ulx-white: #fff;
  --ulx-text: #eaf3f8;
  --ulx-muted: #8da0ae;
  --ulx-blue: #00a3ff;
  --ulx-blue-soft: #62c7ff;
  --ulx-blue-dark: #007acc;
  --ulx-red: #ff2d2d;
  --ulx-cyan: #b8ecff;
  --ulx-green: #53e6a8;
  --ulx-font-heading: "IBM Plex Sans", "Inter", "Segoe UI", sans-serif;
  --ulx-font-body: "Inter", "Segoe UI", sans-serif;
  --ulx-font-mono: "IBM Plex Mono", Consolas, monospace;
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--ulx-obsidian); }
body { font-family: var(--ulx-font-body); color: var(--ulx-text); }
button, input { font: inherit; }
a { color: inherit; }

#ulx-register-v1 {
  --pointer-x: 50vw;
  --pointer-y: 40vh;
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  background:
    radial-gradient(circle at 15% 10%, rgba(0, 122, 204, 0.14), transparent 27%),
    linear-gradient(135deg, #030508 0%, #07101c 48%, #030508 100%);
  isolation: isolate;
}

#ulx-register-v1::before,
#ulx-register-v1::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -2;
}

#ulx-register-v1::before {
  background-image:
    linear-gradient(rgba(93, 176, 222, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(93, 176, 222, 0.055) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(to bottom, #000, transparent 90%);
}

#ulx-register-v1::after {
  background:
    linear-gradient(115deg, transparent 0 56%, rgba(0, 163, 255, 0.04) 56% 56.2%, transparent 56.2%),
    linear-gradient(25deg, transparent 0 63%, rgba(255,255,255,.025) 63% 63.15%, transparent 63.15%);
}

.ulx-pointer-field {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(520px circle at var(--pointer-x) var(--pointer-y), rgba(0, 163, 255, 0.12), transparent 62%);
  mix-blend-mode: screen;
}

.ulx-noise {
  position: fixed;
  inset: 0;
  opacity: .038;
  pointer-events: none;
  z-index: 20;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}

.ulx-topbar,
.ulx-footer {
  width: min(1460px, calc(100% - 64px));
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 5;
}

.ulx-topbar { height: 94px; border-bottom: 1px solid rgba(255,255,255,.08); }
.ulx-brand { display: inline-flex; align-items: center; }
.ulx-brand img { width: 216px; height: auto; display: block; }
.ulx-topbar__meta { display: flex; align-items: center; gap: 26px; }
.ulx-system-pill,
.ulx-language {
  font-family: var(--ulx-font-mono);
  font-size: 11px;
  letter-spacing: .1em;
  color: var(--ulx-muted);
  text-transform: uppercase;
}
.ulx-system-pill { display: inline-flex; align-items: center; gap: 9px; }
.ulx-system-pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--ulx-green); box-shadow: 0 0 16px rgba(83,230,168,.8); animation: ulx-status-pulse 2.4s ease-in-out infinite; }
.ulx-language b { color: var(--ulx-blue); margin-inline: 3px; }
.ulx-home-route { color: #8FA5B1; font: 600 10px/1 var(--ulx-font-mono); letter-spacing: .12em; text-decoration: none; transition: color .2s ease; }
.ulx-home-route:hover { color: var(--ulx-blue-soft); }
[data-register-only].is-auth-hidden { display: none !important; }
#ulx-register-v1[data-account-view="signin"] .ulx-auth-panel { max-width: 620px; }
#ulx-register-v1[data-account-view="signin"] .ulx-form-grid { grid-template-columns: 1fr; }

.ulx-shell {
  width: min(1460px, calc(100% - 64px));
  min-height: calc(100vh - 164px);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(480px, .92fr);
  align-items: stretch;
  border-left: 1px solid rgba(255,255,255,.06);
  border-right: 1px solid rgba(255,255,255,.06);
}

.ulx-identity-stage {
  position: relative;
  min-height: 740px;
  padding: clamp(54px, 6vw, 96px);
  overflow: hidden;
  border-right: 1px solid rgba(255,255,255,.08);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.ulx-stage-grid {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent 49.8%, rgba(0,163,255,.12) 50%, transparent 50.2%),
    linear-gradient(transparent 49.8%, rgba(0,163,255,.08) 50%, transparent 50.2%);
  background-size: 170px 170px;
  mask-image: radial-gradient(circle at 58% 58%, black 8%, transparent 70%);
  animation: ulx-grid-drift 18s linear infinite;
}

.ulx-stage-copy { position: relative; z-index: 2; max-width: 690px; }
.ulx-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--ulx-font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  color: var(--ulx-blue-soft);
  text-transform: uppercase;
}
.ulx-kicker::before { content: ""; width: 28px; height: 1px; background: var(--ulx-blue); box-shadow: 0 0 10px rgba(0,163,255,.8); }
.ulx-stage-copy h1 {
  margin: 20px 0 22px;
  max-width: 780px;
  font-family: var(--ulx-font-heading);
  font-size: clamp(48px, 5vw, 82px);
  line-height: .98;
  letter-spacing: -.045em;
  color: var(--ulx-white);
}
.ulx-stage-copy p {
  max-width: 610px;
  margin: 0;
  font-size: 17px;
  line-height: 1.7;
  color: #9eb0bc;
}

.ulx-core-wrap {
  position: relative;
  width: clamp(330px, 34vw, 510px);
  aspect-ratio: 1;
  align-self: center;
  display: grid;
  place-items: center;
  margin: 12px 0 28px;
  transform-style: preserve-3d;
}
.ulx-core-halo {
  position: absolute;
  width: 52%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,163,255,.25), rgba(0,122,204,.08) 35%, transparent 70%);
  filter: blur(10px);
  animation: ulx-halo-breathe 4.5s ease-in-out infinite;
}
.ulx-orbit {
  position: absolute;
  border: 1px solid rgba(104,204,255,.24);
  border-radius: 50%;
  transform: rotateX(66deg) rotateZ(0deg);
  box-shadow: inset 0 0 24px rgba(0,163,255,.035), 0 0 24px rgba(0,163,255,.04);
}
.ulx-orbit::before,
.ulx-orbit::after {
  content: "";
  position: absolute;
  border-radius: 50%;
}
.ulx-orbit::before { inset: 9%; border: 1px dashed rgba(184,236,255,.1); }
.ulx-orbit::after { inset: 22%; border: 1px solid rgba(255,255,255,.06); }
.ulx-orbit--outer { width: 100%; aspect-ratio: 1; animation: ulx-orbit-spin 22s linear infinite; }
.ulx-orbit--middle { width: 76%; aspect-ratio: 1; animation: ulx-orbit-spin-reverse 15s linear infinite; }
.ulx-orbit--inner { width: 54%; aspect-ratio: 1; border-color: rgba(0,163,255,.42); animation: ulx-orbit-spin 9s linear infinite; }
.ulx-orbit-node {
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--ulx-blue);
  box-shadow: 0 0 22px rgba(0,163,255,.95);
}
.ulx-orbit-node--a { top: 16%; left: 18%; }
.ulx-orbit-node--b { right: 7%; bottom: 34%; background: var(--ulx-red); box-shadow: 0 0 16px rgba(255,45,45,.72); }
.ulx-orbit-node--c { right: 13%; top: 22%; width: 6px; height: 6px; }
.ulx-core {
  position: relative;
  z-index: 3;
  width: 35%;
  aspect-ratio: 1;
  border-radius: 26px;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, rgba(18,37,58,.95), rgba(5,10,17,.96));
  border: 1px solid rgba(121,214,255,.45);
  box-shadow: 0 30px 80px rgba(0,0,0,.45), inset 0 0 32px rgba(0,163,255,.1), 0 0 50px rgba(0,163,255,.12);
  transform: rotate(45deg);
}
.ulx-core::before { content: ""; position: absolute; inset: 10px; border: 1px solid rgba(255,255,255,.07); border-radius: 18px; }
.ulx-core-logo {
  width: 76%;
  height: 76%;
  display: grid;
  place-items: center;
  transform: rotate(-45deg);
}
.ulx-core-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 0 14px rgba(0,163,255,.22)) drop-shadow(0 0 7px rgba(255,45,45,.16));
}
.ulx-core-status {
  position: absolute;
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%);
  min-width: 220px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 12px 16px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(3,8,14,.78);
  backdrop-filter: blur(12px);
  font-family: var(--ulx-font-mono);
  font-size: 10px;
  letter-spacing: .12em;
}
.ulx-core-status span { color: var(--ulx-muted); }
.ulx-core-status strong { color: var(--ulx-green); }
.ulx-core-wrap[data-state="focus"] .ulx-core { box-shadow: 0 30px 100px rgba(0,0,0,.5), inset 0 0 42px rgba(0,163,255,.18), 0 0 80px rgba(0,163,255,.22); }
.ulx-core-wrap[data-state="error"] .ulx-core { border-color: rgba(255,45,45,.6); }

.ulx-stage-telemetry {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255,255,255,.08);
}
.ulx-stage-telemetry div { padding: 17px 18px 0 0; border-right: 1px solid rgba(255,255,255,.06); }
.ulx-stage-telemetry div:last-child { border-right: 0; padding-left: 18px; }
.ulx-stage-telemetry span,
.ulx-stage-telemetry strong { display: block; font-family: var(--ulx-font-mono); }
.ulx-stage-telemetry span { font-size: 9px; color: #627480; letter-spacing: .14em; }
.ulx-stage-telemetry strong { margin-top: 6px; font-size: 11px; color: #bdcfda; letter-spacing: .08em; }

.ulx-auth-panel {
  position: relative;
  z-index: 2;
  align-self: center;
  width: min(100%, 690px);
  margin: 44px auto;
  padding: clamp(34px, 4vw, 58px);
  background: linear-gradient(160deg, rgba(12,24,40,.92), rgba(5,11,19,.86));
  border: 1px solid rgba(162,211,238,.16);
  box-shadow: 0 42px 120px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter: blur(24px);
  overflow: hidden;
}
.ulx-auth-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, var(--ulx-blue), transparent 34%) top left / 44% 1px no-repeat,
    linear-gradient(180deg, var(--ulx-blue), transparent 42%) top left / 1px 40% no-repeat,
    radial-gradient(360px circle at var(--panel-x, 50%) var(--panel-y, 20%), rgba(0,163,255,.12), transparent 64%);
}
.ulx-auth-panel__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; margin-bottom: 30px; }
.ulx-auth-panel h2 { margin: 12px 0 8px; font: 600 clamp(29px, 3vw, 42px)/1.05 var(--ulx-font-heading); letter-spacing: -.035em; }
.ulx-auth-panel__header p { margin: 0; max-width: 480px; color: var(--ulx-muted); font-size: 14px; line-height: 1.6; }
.ulx-mode-indicator { min-width: 82px; padding: 9px 10px; border: 1px solid rgba(255,255,255,.1); text-align: right; font-family: var(--ulx-font-mono); }
.ulx-mode-indicator span, .ulx-mode-indicator strong { display: block; }
.ulx-mode-indicator span { font-size: 8px; letter-spacing: .14em; color: #607582; }
.ulx-mode-indicator strong { margin-top: 5px; font-size: 10px; color: var(--ulx-blue-soft); letter-spacing: .08em; }

.ulx-provider-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ulx-provider {
  --provider-x: 50%;
  --provider-y: 50%;
  position: relative;
  min-height: 54px;
  padding: 0 16px;
  border: 1px solid rgba(181,217,237,.16);
  color: #e9f3f9;
  background: rgba(255,255,255,.035);
  display: grid;
  grid-template-columns: 24px 1fr 16px;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  overflow: hidden;
  text-align: left;
  transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease;
}
.ulx-provider:first-child { grid-column: 1 / -1; }
.ulx-provider::before { content: ""; position: absolute; inset: 0; background: radial-gradient(180px circle at var(--provider-x) var(--provider-y), rgba(112,205,255,.13), transparent 70%); opacity: 0; transition: opacity .25s ease; }
.ulx-provider:hover { transform: translateY(-2px); border-color: rgba(0,163,255,.42); background: rgba(0,163,255,.055); box-shadow: 0 18px 36px rgba(0,0,0,.22); }
.ulx-provider:hover::before { opacity: 1; }
.ulx-provider svg { width: 21px; position: relative; z-index: 2; }
.ulx-provider span:not(.ulx-provider__shine) { position: relative; z-index: 2; font-size: 13px; font-weight: 600; }
.ulx-provider > i { position: relative; z-index: 2; color: #607582; font-style: normal; transition: transform .2s ease, color .2s ease; }
.ulx-provider:hover > i { transform: translate(2px,-2px); color: var(--ulx-blue-soft); }
.ulx-provider__shine { position: absolute; inset: -60% auto -60% -30%; width: 18%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent); transform: skewX(-20deg); transition: left .65s ease; }
.ulx-provider:hover .ulx-provider__shine { left: 115%; }
.ulx-provider--apple { color: #fff; }

.ulx-separator { display: flex; align-items: center; gap: 16px; margin: 28px 0; color: #627581; font-family: var(--ulx-font-mono); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.ulx-separator::before, .ulx-separator::after { content: ""; flex: 1; height: 1px; background: rgba(255,255,255,.08); }

.ulx-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 19px 16px; }
.ulx-field { position: relative; display: block; }
.ulx-field--wide { grid-column: 1 / -1; }
.ulx-field__label { display: block; margin-bottom: 8px; font-family: var(--ulx-font-mono); font-size: 9px; font-weight: 600; letter-spacing: .12em; color: #8fa5b1; text-transform: uppercase; }
.ulx-field__control { position: relative; display: block; }
.ulx-field input {
  width: 100%;
  height: 54px;
  padding: 0 17px;
  border: 1px solid rgba(180,216,236,.15);
  border-radius: 0;
  outline: none;
  color: #eff8fd;
  background: rgba(2,8,14,.7);
  transition: border-color .22s ease, box-shadow .22s ease, background .22s ease;
}
.ulx-field input::placeholder { color: #4f6470; }
.ulx-field input:focus { border-color: rgba(0,163,255,.72); background: rgba(4,14,23,.9); box-shadow: 0 0 0 3px rgba(0,163,255,.09), inset 0 -1px 0 rgba(0,163,255,.55); }
.ulx-field__control > i { position: absolute; left: 0; right: 100%; bottom: 0; height: 1px; background: linear-gradient(90deg, var(--ulx-blue), var(--ulx-cyan)); box-shadow: 0 0 12px rgba(0,163,255,.7); transition: right .42s cubic-bezier(.2,.8,.2,1); }
.ulx-field:focus-within .ulx-field__control > i { right: 0; }
.ulx-field__message { display: block; margin-top: 7px; color: #617580; font-size: 10px; line-height: 1.45; }
.ulx-field.is-invalid input { border-color: rgba(255,45,45,.66); box-shadow: 0 0 0 3px rgba(255,45,45,.07); }
.ulx-field.is-invalid .ulx-field__message { color: #ff8585; }
.ulx-password-toggle { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); width: 36px; height: 36px; border: 0; background: transparent; color: #8094a0; cursor: pointer; }
.ulx-eye { position: absolute; left: 8px; top: 11px; width: 20px; height: 13px; border: 1.5px solid currentColor; border-radius: 50% / 60%; }
.ulx-eye::after { content: ""; position: absolute; width: 5px; height: 5px; border: 1.5px solid currentColor; border-radius: 50%; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.ulx-strength { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; margin-top: 8px; }
.ulx-strength span { height: 2px; background: rgba(255,255,255,.08); transition: background .25s ease, box-shadow .25s ease; }
.ulx-strength[data-score="1"] span:nth-child(-n+1) { background: var(--ulx-red); box-shadow: 0 0 8px rgba(255,45,45,.45); }
.ulx-strength[data-score="2"] span:nth-child(-n+2) { background: #ff9b42; box-shadow: 0 0 8px rgba(255,155,66,.35); }
.ulx-strength[data-score="3"] span:nth-child(-n+3) { background: var(--ulx-blue); box-shadow: 0 0 8px rgba(0,163,255,.35); }
.ulx-strength[data-score="4"] span:nth-child(-n+4) { background: var(--ulx-green); box-shadow: 0 0 8px rgba(83,230,168,.35); }

.ulx-consent { position: relative; display: grid; grid-template-columns: 18px 1fr; align-items: start; gap: 11px; margin-top: 18px; cursor: pointer; }
.ulx-consent input { position: absolute; opacity: 0; pointer-events: none; }
.ulx-consent > span { width: 18px; height: 18px; border: 1px solid rgba(178,214,233,.24); background: rgba(0,0,0,.2); transition: .2s ease; }
.ulx-consent > span::after { content: ""; display: block; width: 8px; height: 4px; border-left: 2px solid #041019; border-bottom: 2px solid #041019; transform: translate(4px,4px) rotate(-45deg) scale(0); transition: transform .18s ease; }
.ulx-consent input:checked + span { background: var(--ulx-blue); border-color: var(--ulx-blue); box-shadow: 0 0 14px rgba(0,163,255,.32); }
.ulx-consent input:checked + span::after { transform: translate(4px,4px) rotate(-45deg) scale(1); }
.ulx-consent input:focus-visible + span { outline: 2px solid var(--ulx-blue-soft); outline-offset: 3px; }
.ulx-consent em { font-style: normal; color: #8397a3; font-size: 11px; line-height: 1.5; }
.ulx-consent em a { color: #bfd6e2; text-underline-offset: 3px; }
.ulx-consent--optional { margin-top: 11px; }

.ulx-submit {
  position: relative;
  width: 100%;
  min-height: 58px;
  margin-top: 25px;
  border: 1px solid rgba(76,196,255,.74);
  color: #031019;
  background: linear-gradient(100deg, #009ce9, #52caff 50%, #0091df);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: 0 17px 0 22px;
  cursor: pointer;
  overflow: hidden;
  font-weight: 700;
  box-shadow: 0 20px 50px rgba(0,122,204,.18), inset 0 1px 0 rgba(255,255,255,.42);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.ulx-submit:hover { transform: translateY(-2px); filter: saturate(1.08); box-shadow: 0 25px 70px rgba(0,122,204,.3), inset 0 1px 0 rgba(255,255,255,.5); }
.ulx-submit:active { transform: translateY(0); }
.ulx-submit__copy { justify-self: start; }
.ulx-submit__status { width: 30px; height: 30px; display: grid; place-items: center; background: rgba(3,16,25,.12); border: 1px solid rgba(3,16,25,.2); font-family: var(--ulx-font-mono); font-size: 10px; }
.ulx-submit__beam { position: absolute; top: 0; bottom: 0; left: -30%; width: 18%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.6), transparent); transform: skewX(-18deg); }
.ulx-submit:hover .ulx-submit__beam { animation: ulx-submit-beam .9s ease; }
.ulx-submit.is-loading { pointer-events: none; }
.ulx-submit.is-loading .ulx-submit__beam { animation: ulx-submit-loading 1s linear infinite; }
.ulx-signin { margin: 18px 0 0; text-align: center; color: #718692; font-size: 12px; }
.ulx-signin a { color: var(--ulx-blue-soft); font-weight: 600; text-decoration: none; }

.ulx-security-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 27px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.07); }
.ulx-security-row div { display: flex; align-items: flex-start; gap: 8px; color: #637985; font-size: 9px; line-height: 1.45; }
.ulx-security-row i { width: 6px; height: 6px; flex: 0 0 auto; margin-top: 3px; border: 1px solid var(--ulx-blue); transform: rotate(45deg); box-shadow: 0 0 8px rgba(0,163,255,.35); }

.ulx-footer { min-height: 70px; color: #566a76; font: 10px var(--ulx-font-mono); letter-spacing: .07em; }
.ulx-footer nav { display: flex; gap: 20px; }
.ulx-footer a { text-decoration: none; }
.ulx-footer a:hover { color: var(--ulx-blue-soft); }

.ulx-dialog {
  width: min(520px, calc(100% - 32px));
  padding: 0;
  color: var(--ulx-text);
  background: rgba(5,12,20,.96);
  border: 1px solid rgba(0,163,255,.38);
  box-shadow: 0 30px 120px rgba(0,0,0,.65), inset 0 0 40px rgba(0,163,255,.05);
  backdrop-filter: blur(20px);
}
.ulx-dialog::backdrop { background: rgba(0,3,8,.72); backdrop-filter: blur(7px); }
.ulx-dialog form { position: relative; padding: 38px; }
.ulx-dialog__close { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 1px solid rgba(255,255,255,.1); color: #8da0ae; background: transparent; cursor: pointer; }
.ulx-dialog h2 { margin: 15px 0 12px; font: 600 31px/1.08 var(--ulx-font-heading); }
.ulx-dialog p { color: var(--ulx-muted); line-height: 1.65; }
.ulx-dialog__route { margin: 24px 0; padding: 16px; border: 1px solid rgba(255,255,255,.08); display: grid; grid-template-columns: 1fr auto; gap: 10px; font-family: var(--ulx-font-mono); font-size: 9px; letter-spacing: .1em; }
.ulx-dialog__route span { color: #607582; }
.ulx-dialog__route strong { color: var(--ulx-blue-soft); }
.ulx-dialog__action { width: 100%; min-height: 50px; border: 1px solid var(--ulx-blue); color: #041019; background: var(--ulx-blue); font-weight: 700; cursor: pointer; }

.ulx-success {
  position: fixed;
  inset: 0;
  z-index: 50;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2,7,12,.94);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .45s ease, visibility .45s ease;
}
.ulx-success.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.ulx-success__rings { position: absolute; width: min(620px, 80vw); aspect-ratio: 1; }
.ulx-success__rings i { position: absolute; inset: 0; border: 1px solid rgba(0,163,255,.15); border-radius: 50%; animation: ulx-success-ring 4s ease-in-out infinite; }
.ulx-success__rings i:nth-child(2) { inset: 15%; animation-delay: -.8s; }
.ulx-success__rings i:nth-child(3) { inset: 30%; animation-delay: -1.6s; border-color: rgba(83,230,168,.22); }
.ulx-success__content { position: relative; z-index: 2; width: min(560px, 100%); padding: 54px; text-align: center; background: rgba(8,17,31,.88); border: 1px solid rgba(0,163,255,.38); box-shadow: 0 40px 120px rgba(0,0,0,.55), inset 0 0 45px rgba(0,163,255,.05); }
.ulx-success h2 { margin: 17px 0 12px; font: 600 clamp(32px, 5vw, 54px)/1.02 var(--ulx-font-heading); }
.ulx-success p { color: var(--ulx-muted); line-height: 1.7; }
.ulx-success__reset { min-height: 48px; margin-top: 22px; padding: 0 22px; border: 1px solid var(--ulx-blue); color: var(--ulx-white); background: rgba(0,163,255,.1); cursor: pointer; }

@keyframes ulx-status-pulse { 0%,100% { opacity: .55; transform: scale(.85); } 50% { opacity: 1; transform: scale(1.15); } }
@keyframes ulx-grid-drift { to { background-position: 170px 170px; } }
@keyframes ulx-orbit-spin { to { transform: rotateX(66deg) rotateZ(360deg); } }
@keyframes ulx-orbit-spin-reverse { to { transform: rotateX(66deg) rotateZ(-360deg); } }
@keyframes ulx-halo-breathe { 0%,100% { transform: scale(.92); opacity: .55; } 50% { transform: scale(1.08); opacity: 1; } }
@keyframes ulx-submit-beam { from { left: -30%; } to { left: 120%; } }
@keyframes ulx-submit-loading { from { left: -30%; } to { left: 120%; } }
@keyframes ulx-success-ring { 0%,100% { transform: scale(.92); opacity: .25; } 50% { transform: scale(1.04); opacity: .75; } }

@media (max-width: 1120px) {
  .ulx-shell { grid-template-columns: .88fr 1.12fr; }
  .ulx-identity-stage { padding: 52px; }
  .ulx-stage-copy h1 { font-size: clamp(44px, 5.7vw, 66px); }
  .ulx-core-wrap { width: min(390px, 100%); }
  .ulx-auth-panel { margin-inline: 28px; }
}

@media (max-width: 880px) {
  .ulx-topbar, .ulx-footer, .ulx-shell { width: min(100% - 32px, 760px); }
  .ulx-shell { grid-template-columns: 1fr; border: 0; }
  .ulx-identity-stage { min-height: auto; padding: 52px 32px 38px; border: 1px solid rgba(255,255,255,.07); border-bottom: 0; }
  .ulx-stage-copy { max-width: none; }
  .ulx-stage-copy h1 { max-width: 680px; font-size: clamp(42px, 8vw, 66px); }
  .ulx-core-wrap { width: 310px; margin: 25px auto 18px; }
  .ulx-stage-telemetry { display: none; }
  .ulx-auth-panel { width: 100%; margin: 0; border-top-color: rgba(0,163,255,.3); }
}

@media (max-width: 620px) {
  .ulx-topbar { height: 76px; }
  .ulx-brand img { width: 165px; }
  .ulx-system-pill { display: none; }
  .ulx-identity-stage { padding: 38px 22px 24px; }
  .ulx-stage-copy h1 { margin-top: 15px; font-size: clamp(37px, 11vw, 49px); }
  .ulx-stage-copy p { font-size: 14px; }
  .ulx-core-wrap { width: 235px; margin-block: 22px 10px; }
  .ulx-core-status { display: none; }
  .ulx-auth-panel { padding: 30px 20px; }
  .ulx-auth-panel__header { display: block; }
  .ulx-mode-indicator { display: none; }
  .ulx-provider-grid, .ulx-form-grid { grid-template-columns: 1fr; }
  .ulx-provider:first-child, .ulx-field--wide { grid-column: auto; }
  .ulx-security-row { grid-template-columns: 1fr; }
  .ulx-footer { align-items: flex-start; flex-direction: column; justify-content: center; gap: 9px; padding-block: 18px; }
  .ulx-success__content { padding: 38px 22px; }
}

@media (pointer: coarse) {
  .ulx-pointer-field { display: none; }
  .ulx-provider::before, .ulx-auth-panel::before { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
  .ulx-pointer-field { display: none; }
}

/* V2.5.5 immediate foreground orbit arcs */
#ulx-register-v1 .ulx-orbit,
#ulx-register-v1 .ulx-orbit-front { backface-visibility:hidden; transform-origin:50% 50%; will-change:transform; }
#ulx-register-v1 .ulx-orbit-front {
  position:absolute; z-index:4; border:1px solid rgba(104,204,255,.36); border-radius:50%;
  transform:rotateX(66deg) rotateZ(0deg); pointer-events:none;
  clip-path:inset(49% -10% -10% -10%);
  filter:drop-shadow(0 0 7px rgba(0,163,255,.2));
}
#ulx-register-v1 .ulx-orbit-front--outer { width:100%; aspect-ratio:1; animation:ulx-front-arc-pulse 4.8s ease-in-out infinite; }
#ulx-register-v1 .ulx-orbit-front--middle { width:76%; aspect-ratio:1; animation:ulx-front-arc-pulse 4.8s ease-in-out -1.2s infinite; opacity:.78; }
#ulx-register-v1 .ulx-orbit-front--inner { width:54%; aspect-ratio:1; border-color:rgba(0,163,255,.58); animation:ulx-front-arc-pulse 4.8s ease-in-out -2.4s infinite; }
@keyframes ulx-front-arc-pulse { 0%,100% { opacity:.7; } 50% { opacity:1; } }
@media (prefers-reduced-motion:reduce) {
  #ulx-register-v1 .ulx-orbit-front { animation:none; }
}

.ulx-topbar .ulx-language a { color:inherit; text-decoration:none; }
