:root {
  --ink: #060411;
  --ink-soft: #0e0a21;
  --panel: rgba(18, 13, 41, 0.72);
  --panel-strong: rgba(15, 11, 35, 0.94);
  --line: rgba(167, 143, 255, 0.18);
  --line-bright: rgba(123, 238, 255, 0.34);
  --white: #f7f6ff;
  --muted: #a7a2b9;
  --cyan: #46f1ec;
  --cyan-soft: #8bfaff;
  --violet: #8d5bff;
  --violet-bright: #b37dff;
  --danger: #ff829d;
  --page-pad: clamp(22px, 5vw, 78px);
  --max-width: 1440px;
}

* {
  box-sizing: border-box;
}

body:has(.auth-page) { background: var(--ink); }

body:has(.auth-page) { margin: 0; background: var(--ink); color: var(--white); overflow-x: hidden; }

body::selection {
  color: var(--ink);
  background: var(--cyan);
}

a {
  color: inherit;
  text-decoration: none;
}

button,
summary,
a {
  -webkit-tap-highlight-color: transparent;
}

button {
  font: inherit;
}

.site-shell {
  min-height: 100vh;
  position: relative;
  isolation: isolate;
  overflow: clip;
  background:
    linear-gradient(rgba(128, 104, 190, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(128, 104, 190, 0.045) 1px, transparent 1px),
    radial-gradient(circle at 50% -10%, rgba(67, 36, 133, 0.32), transparent 35%),
    var(--ink);
  background-size: 72px 72px, 72px 72px, auto, auto;
}

.galaxy-canvas {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -3;
  pointer-events: none;
}

.grain {
  position: fixed;
  inset: 0;
  z-index: 20;
  opacity: 0.035;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 20%, white 0 0.45px, transparent 0.8px) 0 0 / 5px 5px,
    radial-gradient(circle at 73% 61%, white 0 0.35px, transparent 0.7px) 0 0 / 7px 7px;
}

.scroll-progress {
  position: fixed;
  z-index: 40;
  top: 0;
  left: 0;
  height: 2px;
  width: 100%;
  transform: scaleX(0);
  transform-origin: left;
  background: linear-gradient(90deg, var(--violet), var(--cyan));
  box-shadow: 0 0 16px var(--cyan);
}

@supports (animation-timeline: scroll()) {
  .scroll-progress {
    animation: progress linear;
    animation-timeline: scroll();
  }
  @keyframes progress { to { transform: scaleX(1); } }
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-height: 44px;
  isolation: isolate;
}

.brand-mark {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  position: relative;
  flex: 0 0 40px;
  filter: drop-shadow(0 0 14px rgba(59, 231, 237, 0.16));
}

.brand-planet {
  position: absolute;
  z-index: 2;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  overflow: hidden;
  background:
    radial-gradient(circle at 30% 25%, #e4ffff 0 4%, #80fff5 5% 11%, transparent 12%),
    radial-gradient(circle at 34% 30%, #55eee6 0, #17bcc9 28%, #086487 58%, #14153c 80%, #090b21 100%);
  border: 1px solid rgba(172, 255, 252, 0.78);
  box-shadow:
    0 0 6px rgba(107, 255, 245, 0.9),
    0 0 22px rgba(31, 210, 220, 0.52),
    inset -5px -5px 9px rgba(1, 6, 27, 0.72),
    inset 3px 3px 6px rgba(203, 255, 255, 0.2);
  animation: brand-planet-breathe 4.8s ease-in-out infinite;
}

.brand-planet::before,
.brand-planet::after {
  content: "";
  position: absolute;
  left: -4px;
  width: 30px;
  border-radius: 50%;
  transform: rotate(-18deg);
}

.brand-planet::before {
  top: 8px;
  height: 5px;
  border-top: 1px solid rgba(195, 255, 252, 0.5);
  background: linear-gradient(90deg, transparent, rgba(106, 244, 242, 0.18), transparent);
}

.brand-planet::after {
  top: 13px;
  height: 2px;
  background: rgba(3, 49, 75, 0.5);
  filter: blur(0.4px);
}

.brand-planet > i {
  position: absolute;
  top: 3px;
  right: 5px;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(231, 255, 255, 0.75);
  box-shadow: -8px 10px 0 -1px rgba(156, 255, 249, 0.32);
}

.brand-orbit {
  position: absolute;
  z-index: 3;
  border-radius: 50%;
  pointer-events: none;
}

.brand-orbit-primary {
  width: 49px;
  height: 17px;
  border: 1px solid rgba(186, 252, 255, 0.82);
  transform: rotate(-14deg);
  box-shadow: 0 0 7px rgba(76, 231, 238, 0.13);
}

.brand-orbit-primary > i {
  position: absolute;
  top: calc(50% - 2.5px);
  left: calc(50% - 2.5px);
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #bffffc;
  box-shadow: 0 0 5px #8ffff8, 0 0 12px rgba(72, 242, 239, 0.85);
  offset-position: center;
  offset-path: ellipse(24px 8px at 50% 50%);
  offset-rotate: 0deg;
  animation: brand-satellite-run 3.6s linear infinite;
}

.brand-orbit-secondary {
  z-index: 1;
  width: 15px;
  height: 35px;
  border: 1px solid rgba(118, 181, 255, 0.42);
  transform: rotate(32deg);
  animation: brand-orbit-drift 6.5s ease-in-out infinite;
}

.brand-mark-hero {
  width: 96px;
  height: 96px;
  flex-basis: 96px;
  filter:
    drop-shadow(0 0 12px rgba(112, 255, 248, 0.42))
    drop-shadow(0 0 32px rgba(66, 210, 238, 0.28));
}

.brand-mark-hero .brand-planet {
  width: 54px;
  height: 54px;
  border-width: 1.5px;
  box-shadow:
    0 0 12px rgba(107, 255, 245, 0.95),
    0 0 38px rgba(31, 210, 220, 0.62),
    inset -12px -12px 18px rgba(1, 6, 27, 0.78),
    inset 7px 7px 12px rgba(203, 255, 255, 0.22);
  animation-name: hero-brand-planet-breathe;
}

.brand-mark-hero .brand-planet::before {
  top: 20px;
  left: -8px;
  width: 70px;
  height: 11px;
  border-top-width: 1.5px;
}

.brand-mark-hero .brand-planet::after {
  top: 33px;
  left: -8px;
  width: 70px;
  height: 4px;
}

.brand-mark-hero .brand-planet > i {
  top: 8px;
  right: 12px;
  width: 6px;
  height: 6px;
  box-shadow: -20px 25px 0 -1px rgba(156, 255, 249, 0.28);
}

.brand-mark-hero .brand-orbit-primary {
  width: 116px;
  height: 42px;
  border-width: 1.5px;
  box-shadow: 0 0 12px rgba(76, 231, 238, 0.25);
}

.brand-mark-hero .brand-orbit-primary > i {
  top: calc(50% - 4px);
  left: calc(50% - 4px);
  width: 8px;
  height: 8px;
  offset-path: ellipse(57px 20px at 50% 50%);
  animation-duration: 5.4s;
  box-shadow: 0 0 7px #c7fffc, 0 0 18px rgba(72, 242, 239, 0.95);
}

.brand-mark-hero .brand-orbit-secondary {
  width: 37px;
  height: 84px;
  border-color: rgba(130, 177, 255, 0.56);
  animation-duration: 8.5s;
}

.brand-wordmark {
  display: inline-flex;
  align-items: baseline;
  font-size: 14px;
  font-weight: 820;
  line-height: 1;
  letter-spacing: 0.2em;
  text-shadow: 0 0 16px rgba(255, 255, 255, 0.08);
}

.brand-wordmark > span {
  color: transparent;
  background: linear-gradient(105deg, #f5f7ff 15%, #ffffff 40%, #9df9f5 50%, #ffffff 60%, #f5f7ff 85%);
  background-size: 250% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  animation: brand-wordmark-sheen 7s ease-in-out infinite;
}

.brand-wordmark > b {
  color: #78f8f2;
  font-weight: inherit;
  text-shadow: 0 0 11px rgba(83, 239, 236, 0.42);
  animation: brand-x-pulse 4.8s ease-in-out infinite;
}

.brand:hover .brand-orbit-primary > i,
.brand:focus-visible .brand-orbit-primary > i {
  animation-duration: 1.8s;
}

@keyframes brand-satellite-run {
  to { offset-distance: 100%; }
}

@keyframes brand-orbit-drift {
  0%, 100% { transform: rotate(32deg) scaleY(1); opacity: 0.45; }
  50% { transform: rotate(46deg) scaleY(0.92); opacity: 0.85; }
}

@keyframes brand-planet-breathe {
  0%, 100% { box-shadow: 0 0 6px rgba(107,255,245,.9), 0 0 20px rgba(31,210,220,.44), inset -5px -5px 9px rgba(1,6,27,.72), inset 3px 3px 6px rgba(203,255,255,.2); }
  50% { box-shadow: 0 0 9px rgba(107,255,245,1), 0 0 28px rgba(31,210,220,.62), inset -5px -5px 9px rgba(1,6,27,.72), inset 3px 3px 6px rgba(203,255,255,.28); }
}

@keyframes brand-wordmark-sheen {
  0%, 68%, 100% { background-position: 100% 50%; }
  82% { background-position: 0 50%; }
}
.auth-page {
  --auth-pointer-x: 0;
  --auth-pointer-y: 0;
  position: relative;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  isolation: isolate;
  overflow: hidden;
  color: var(--white);
  background: #05030e;
}

.auth-space-background {
  position: absolute;
  z-index: -4;
  inset: -4%;
  pointer-events: none;
  opacity: .9;
  transform: translate3d(calc(var(--auth-pointer-x) * -9px), calc(var(--auth-pointer-y) * -7px), 0) scale(1.04);
  transition: transform 1.3s cubic-bezier(.2, .7, .2, 1);
  background:
    linear-gradient(90deg, rgba(5,3,14,.28), rgba(5,3,14,.58) 55%, rgba(5,3,14,.94) 100%),
    linear-gradient(180deg, rgba(5,3,14,.12), rgba(5,3,14,.68) 90%),
    url("/static/img/orbix-hero-galaxy-v2.webp") 42% 48% / cover no-repeat;
  filter: saturate(1.15) contrast(1.07) brightness(.83);
}

.auth-page::before,
.auth-page::after {
  content: "";
  position: absolute;
  z-index: -3;
  pointer-events: none;
  border-radius: 50%;
  filter: blur(52px);
}

.auth-page::before {
  width: min(66vw, 930px);
  aspect-ratio: 1.35;
  left: -10vw;
  top: 8vh;
  opacity: .52;
  background:
    radial-gradient(ellipse at 46% 48%, rgba(61,226,233,.34), transparent 28%),
    radial-gradient(ellipse at 52% 54%, rgba(82,67,202,.37), transparent 62%);
  animation: auth-nebula-drift 15s ease-in-out infinite alternate;
}

.auth-page::after {
  width: 520px;
  height: 520px;
  right: -220px;
  top: 28%;
  opacity: .23;
  background: rgba(126, 61, 218, .46);
}

.auth-stars {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
}

.auth-stars i {
  position: absolute;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background: #dfffff;
  box-shadow: 0 0 8px #79f4f3, 0 0 18px rgba(71,234,238,.55);
  animation: auth-star-twinkle 4.2s ease-in-out infinite;
}

.auth-stars i:nth-child(1) { left: 7%; top: 28%; animation-delay: -.4s; }
.auth-stars i:nth-child(2) { left: 18%; top: 66%; width: 3px; height: 3px; animation-delay: -2s; }
.auth-stars i:nth-child(3) { left: 39%; top: 18%; animation-delay: -3s; }
.auth-stars i:nth-child(4) { left: 54%; top: 76%; animation-delay: -1.2s; }
.auth-stars i:nth-child(5) { left: 70%; top: 17%; animation-delay: -2.6s; }
.auth-stars i:nth-child(6) { left: 84%; top: 63%; width: 3px; height: 3px; animation-delay: -.8s; }
.auth-stars i:nth-child(7) { left: 93%; top: 33%; animation-delay: -3.5s; }
.auth-stars i:nth-child(8) { left: 61%; top: 43%; animation-delay: -1.7s; }

.auth-header {
  position: relative;
  z-index: 20;
  width: min(calc(100% - 48px), 1420px);
  min-height: 76px;
  margin: 18px auto 0;
  padding: 0 14px 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border: 1px solid rgba(132, 111, 205, .28);
  border-radius: 20px;
  background: rgba(5, 5, 13, .78);
  box-shadow: 0 22px 80px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.035);
  backdrop-filter: blur(24px) saturate(140%);
}

.auth-header nav {
  display: flex;
  align-items: center;
  gap: clamp(18px, 2vw, 32px);
}

.auth-header nav a {
  color: #bcb5d1;
  font-size: 14px;
  font-weight: 650;
  transition: color 180ms ease, transform 180ms ease;
}

.auth-header nav a:hover,
.auth-header nav a:focus-visible {
  color: white;
}

.auth-header nav .auth-header-button {
  min-height: 48px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  border-radius: 13px;
  color: #040b14;
  background: linear-gradient(110deg, #72faf3, #31d8eb 65%, #62bdf6);
  box-shadow: 0 12px 34px rgba(35,216,228,.18), inset 0 1px rgba(255,255,255,.65);
}

.auth-header nav .auth-header-button:hover,
.auth-header nav .auth-header-button:focus-visible {
  color: #020810;
  transform: translateY(-2px);
}

.auth-layout {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 48px), 1420px);
  min-height: 680px;
  margin: 0 auto;
  padding: 62px 26px 56px;
  flex: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.22fr) minmax(390px, .78fr);
  align-items: center;
  gap: clamp(28px, 4vw, 72px);
}

.auth-cosmos-copy {
  position: relative;
  z-index: 5;
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  width: min(100%, 570px);
  padding-top: 22px;
}

.auth-kicker {
  margin: 0 0 18px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #7cf8f2;
  font-family: var(--font-geist-mono), Consolas, monospace;
  font-size: 9px;
  font-weight: 760;
  letter-spacing: .18em;
}

.auth-kicker i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 12px var(--cyan);
  animation: auth-live 2.2s ease-in-out infinite;
}

.auth-cosmos-copy h1 {
  max-width: 610px;
  margin: 0;
  font-size: clamp(42px, 4.3vw, 72px);
  font-weight: 770;
  letter-spacing: -.055em;
  line-height: .98;
  text-wrap: balance;
}

.auth-cosmos-copy > p:not(.auth-kicker) {
  max-width: 500px;
  margin: 22px 0 0;
  color: rgba(225,219,238,.68);
  font-size: 15px;
  line-height: 1.72;
}

.auth-route-status {
  width: min(100%, 450px);
  margin-top: 28px;
  padding: 13px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-block: 1px solid rgba(103,236,239,.16);
  color: #8f899e;
  font-family: var(--font-geist-mono), Consolas, monospace;
  font-size: 9px;
  letter-spacing: .13em;
}

.auth-route-status span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.auth-route-status span i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--cyan);
  box-shadow: 0 0 10px var(--cyan);
}

.auth-route-status b { color: #c8fff8; font-weight: 600; }

.auth-portal {
  position: relative;
  z-index: 2;
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  justify-self: end;
  width: min(60vw, 710px);
  height: 520px;
  margin: 115px -30px -42px 0;
  pointer-events: none;
  transform: translate3d(calc(var(--auth-pointer-x) * 10px), calc(var(--auth-pointer-y) * 7px), 0);
  transition: transform 1.15s cubic-bezier(.2,.7,.2,1);
}

.auth-nebula {
  position: absolute;
  border-radius: 50%;
  filter: blur(30px);
  animation: auth-nebula-pulse 8s ease-in-out infinite alternate;
}

.auth-nebula-a {
  width: 440px;
  height: 250px;
  left: 14%;
  top: 31%;
  opacity: .36;
  background: radial-gradient(ellipse, rgba(47,233,234,.64), rgba(44,78,179,.32) 45%, transparent 72%);
  transform: rotate(-14deg);
}

.auth-nebula-b {
  width: 360px;
  height: 300px;
  left: 30%;
  top: 23%;
  opacity: .3;
  background: radial-gradient(ellipse, rgba(128,67,220,.56), rgba(34,187,210,.17) 52%, transparent 74%);
  animation-delay: -4s;
}

.auth-portal-ring {
  position: absolute;
  left: 50%;
  top: 55%;
  border-radius: 50%;
  border: 1px solid rgba(72,232,235,.28);
  box-shadow: 0 0 18px rgba(72,232,235,.07), inset 0 0 18px rgba(115,76,221,.05);
  transform-style: preserve-3d;
}

.auth-portal-ring > i {
  position: absolute;
  top: calc(50% - 3px);
  left: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #adfffb;
  box-shadow: 0 0 8px #56f2ed, 0 0 20px rgba(58,222,237,.8);
}

.auth-portal-ring-a {
  width: 570px;
  height: 190px;
  margin: -95px 0 0 -285px;
  transform: rotate(-13deg);
  animation: auth-ring-drift-a 11s ease-in-out infinite;
}

.auth-portal-ring-a > i {
  offset-path: ellipse(284px 94px at 50% 50%);
  animation: auth-satellite 8s linear infinite;
}

.auth-portal-ring-b {
  width: 460px;
  height: 265px;
  margin: -132px 0 0 -230px;
  border-color: rgba(130,86,228,.28);
  transform: rotate(19deg);
  animation: auth-ring-drift-b 14s ease-in-out infinite;
}

.auth-portal-ring-b > i {
  offset-path: ellipse(229px 131px at 50% 50%);
  animation: auth-satellite 11s linear infinite reverse;
}

.auth-portal-ring-c {
  width: 350px;
  height: 350px;
  margin: -175px 0 0 -175px;
  border-color: rgba(78,216,225,.14);
  transform: rotate(42deg) scaleY(.52);
  animation: auth-ring-drift-c 17s linear infinite;
}

.auth-portal-ring-c > i { display: none; }

.auth-portal-core {
  position: absolute;
  z-index: 4;
  left: 50%;
  top: 55%;
  width: 164px;
  height: 164px;
  margin: -82px 0 0 -82px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background:
    radial-gradient(circle at 42% 39%, rgba(213,255,254,.24), transparent 10%),
    radial-gradient(circle, #0d536c 0, #092644 32%, #0a102b 59%, #070715 72%);
  border: 1px solid rgba(141,244,244,.36);
  box-shadow: 0 0 0 14px rgba(45,229,231,.035), 0 0 50px rgba(42,226,230,.24), 0 0 110px rgba(75,64,199,.27), inset -18px -22px 38px rgba(0,0,0,.66);
  animation: auth-core-float 6.5s ease-in-out infinite;
}

.auth-core-glow {
  position: absolute;
  inset: 17%;
  border-radius: 50%;
  background: rgba(96,255,247,.12);
  box-shadow: 0 0 34px rgba(66,242,236,.3), inset 0 0 26px rgba(150,255,251,.12);
  animation: auth-core-glow 4s ease-in-out infinite;
}

.auth-portal-core .brand-mark-hero {
  transform: scale(.66);
}

.auth-orbit-asset {
  position: absolute;
  z-index: 6;
  display: grid;
  justify-items: center;
  gap: 5px;
  animation: auth-token-float 5s ease-in-out infinite;
}

.auth-orbit-asset > span {
  width: 58px;
  height: 58px;
  padding: 9px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(96,244,239,.36);
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(16,31,52,.9), rgba(9,7,23,.92));
  box-shadow: 0 0 0 7px rgba(56,232,231,.025), 0 12px 30px rgba(0,0,0,.42), 0 0 24px rgba(48,222,228,.12);
  backdrop-filter: blur(12px);
}

.auth-orbit-asset img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 0 7px rgba(61,238,233,.23));
}

.auth-lbtc-mark {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: white;
  font-size: 29px;
  font-style: normal;
  font-weight: 800;
  background: linear-gradient(145deg, #71cfc1, #4da99e);
  box-shadow: 0 0 18px rgba(102,211,195,.35), inset 0 1px rgba(255,255,255,.24);
}

.auth-orbit-asset small {
  color: #eaffff;
  font-family: var(--font-geist-mono), Consolas, monospace;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .11em;
  text-shadow: 0 2px 8px #03030b;
}

.auth-asset-pix { left: 7%; top: 50%; animation-delay: -.8s; }
.auth-asset-depix { right: 7%; top: 31%; animation-delay: -2.1s; }
.auth-asset-usdt { right: 16%; bottom: 5%; animation-delay: -3.4s; }
.auth-asset-lbtc { left: 25%; bottom: 1%; animation-delay: -4.2s; }
.auth-asset-lbtc > span { width: 66px; height: 66px; border-color: rgba(75,226,207,.43); }
.auth-asset-usdt > span { width: 64px; height: 64px; }

.auth-comet {
  position: absolute;
  z-index: 2;
  width: 95px;
  height: 1px;
  opacity: 0;
  background: linear-gradient(90deg, transparent, rgba(99,238,245,.72), white);
  filter: drop-shadow(0 0 5px rgba(91,239,245,.65));
  transform: rotate(-17deg);
  animation: auth-comet 8s ease-in-out infinite;
}

.auth-comet::after {
  content: "";
  position: absolute;
  right: -2px;
  top: -2px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 0 12px #7ef7f4;
}

.auth-comet-a { left: 9%; top: 23%; }
.auth-comet-b { right: 3%; top: 68%; animation-delay: -4.6s; animation-duration: 10s; }

.auth-card-wrap {
  position: relative;
  z-index: 10;
  grid-column: 2;
  grid-row: 1;
  width: min(100%, 470px);
  justify-self: end;
}

.auth-card-glow {
  position: absolute;
  inset: 12% -12%;
  z-index: -1;
  opacity: .36;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(69,219,230,.26), rgba(92,52,174,.18) 46%, transparent 72%);
  filter: blur(28px);
  animation: auth-card-glow 7s ease-in-out infinite;
}

.auth-card {
  position: relative;
  padding: clamp(30px, 3vw, 46px);
  overflow: hidden;
  border: 1px solid rgba(148,120,224,.33);
  border-radius: 24px;
  background:
    linear-gradient(145deg, rgba(28,18,51,.88), rgba(11,8,26,.9)),
    rgba(10,7,23,.9);
  box-shadow: 0 32px 90px rgba(0,0,0,.54), inset 0 1px rgba(255,255,255,.045);
  backdrop-filter: blur(28px) saturate(140%);
}

.auth-card::before {
  content: "";
  position: absolute;
  left: 10%;
  right: 10%;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(100,249,242,.8), transparent);
  box-shadow: 0 0 14px rgba(80,244,240,.48);
}

.auth-card-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #77718a;
  font-family: var(--font-geist-mono), Consolas, monospace;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .18em;
}

.auth-card-topline i {
  padding: 5px 8px;
  border: 1px solid rgba(70,241,236,.18);
  border-radius: 20px;
  color: #71eee8;
  font-style: normal;
}

.auth-card h2 {
  margin: 24px 0 0;
  font-size: clamp(34px, 3vw, 45px);
  line-height: 1;
  letter-spacing: -.045em;
}

.auth-card-intro {
  margin: 12px 0 30px;
  color: #9e97ad;
  font-size: 13px;
  line-height: 1.55;
}

.auth-card > label {
  display: block;
  margin-top: 19px;
}

.auth-card > label > span:first-child {
  display: block;
  margin-bottom: 9px;
  color: #c7c0d7;
  font-size: 12px;
  font-weight: 600;
}

.auth-card input[type="text"],
.auth-card input[type="email"],
.auth-card input[type="password"] {
  width: 100%;
  height: 52px;
  padding: 0 15px;
  border: 1px solid rgba(145,119,219,.28);
  border-radius: 11px;
  outline: 0;
  color: white;
  background: rgba(8,6,20,.54);
  box-shadow: inset 0 1px 8px rgba(0,0,0,.18);
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.auth-card input::placeholder { color: #696376; }

.auth-card input:focus {
  border-color: rgba(82,239,237,.68);
  background: rgba(9,9,24,.76);
  box-shadow: 0 0 0 3px rgba(70,241,236,.08), 0 0 20px rgba(70,241,236,.06);
}

.auth-password-field {
  position: relative;
  display: block;
}

.auth-password-field input { padding-right: 70px !important; }

.auth-password-field button {
  position: absolute;
  top: 50%;
  right: 9px;
  transform: translateY(-50%);
  border: 0;
  padding: 7px 8px;
  color: #78eee9;
  font-size: 10px;
  font-weight: 700;
  background: transparent;
  cursor: pointer;
}

.auth-options {
  margin: 18px 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: #a9a2b7;
  font-size: 11px;
}

.auth-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.auth-check input {
  width: 15px;
  height: 15px;
  accent-color: #46f1ec;
}

.auth-options a,
.auth-switch a { color: #69f2ed; }

.auth-submit {
  width: 100%;
  min-height: 54px;
  padding: 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 0;
  border-radius: 12px;
  color: #030b13;
  font-size: 13px;
  font-weight: 820;
  letter-spacing: .09em;
  text-transform: uppercase;
  background: linear-gradient(105deg, #78fff6, #39dce9 58%, #67baff);
  box-shadow: 0 16px 36px rgba(51,218,229,.18), inset 0 1px rgba(255,255,255,.7);
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease, filter 180ms ease;
}

.auth-submit:hover,
.auth-submit:focus-visible {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 20px 42px rgba(51,218,229,.27), inset 0 1px rgba(255,255,255,.8);
}

.auth-submit span { font-size: 16px; }

.auth-switch {
  margin: 23px 0 0;
  color: #938c9f;
  font-size: 12px;
  text-align: center;
}

.auth-demo-note {
  margin: 14px 0 -4px;
  padding: 10px 12px;
  border: 1px solid rgba(69,240,236,.2);
  border-radius: 9px;
  color: #a7e9e7;
  background: rgba(50,221,224,.055);
  font-size: 10px;
  line-height: 1.45;
}

.auth-footer {
  position: relative;
  z-index: 5;
  width: min(calc(100% - 48px), 1420px);
  min-height: 72px;
  margin: 0 auto;
  padding: 20px 4px;
  display: grid;
  grid-template-columns: .6fr 1.35fr auto;
  align-items: center;
  gap: 24px;
  border-top: 1px solid rgba(153,126,220,.18);
  color: #858091;
  font-size: 11px;
}

.auth-footer > span {
  color: #e8e5f0;
  font-weight: 820;
  letter-spacing: .2em;
}

.auth-footer p { margin: 0; }
.auth-footer nav { display: flex; gap: 20px; }
.auth-footer a:hover, .auth-footer a:focus-visible { color: var(--cyan-soft); }

@keyframes auth-nebula-drift { to { transform: translate3d(30px, 14px, 0) rotate(3deg) scale(1.06); opacity: .65; } }
@keyframes auth-nebula-pulse { to { opacity: .55; transform: rotate(-9deg) scale(1.1); } }
@keyframes auth-star-twinkle { 0%,100% { opacity: .18; transform: scale(.6); } 50% { opacity: 1; transform: scale(1.4); } }
@keyframes auth-live { 50% { opacity: .35; transform: scale(.75); } }
@media (max-width: 520px) {
  .auth-brand .brand-wordmark { font-size: 12px; }
  .auth-brand .brand-mark { width: 34px; height: 34px; transform: scale(.88); }
  .auth-cosmos-copy h1 { font-size: 42px; }
  .auth-cosmos-copy > p:not(.auth-kicker) { font-size: 13px; }
  .auth-route-status { padding-inline: 8px; font-size: 7px; }
  .auth-portal { width: 600px; margin-top: -34px; transform: scale(.67); }
  .auth-card { padding: 28px 22px; border-radius: 19px; }
  .auth-card h2 { font-size: 36px; }
  .auth-options { align-items: flex-start; flex-direction: column; }
  .auth-footer p { line-height: 1.6; }
}

.motion-ready [data-reveal] {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 850ms cubic-bezier(.2,.7,.2,1), transform 850ms cubic-bezier(.2,.7,.2,1);
}

.motion-ready [data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

@keyframes breathe { 50% { transform: scale(1.12); opacity: .72; } }
@keyframes float { 50% { transform: translateY(-12px); } }
@keyframes orbit-spin { to { transform: rotateX(67deg) rotateZ(343deg); } }
@keyframes orbit-spin-reverse { to { transform: rotateX(68deg) rotateZ(-340deg); } }
@keyframes route-signal { to { offset-distance: 100%; } }
@keyframes signal-line { 0%,100% { left: 0; opacity: 0; } 10%,90% { opacity: 1; } 50% { left: calc(100% - 7px); } }
@keyframes small-signal { to { left: calc(100% - 7px); } }
@keyframes blink { 50% { opacity: .3; } }
@keyframes bars { to { transform: scaleY(.72); filter: brightness(1.3); } }
@keyframes marquee { to { transform: translateX(-50%); } }
@keyframes ecosystem-scroll { to { transform: translateX(-100%); } }
@keyframes custody-token { to { offset-distance: 100%; } }
@keyframes noncustody-transfer { 0% { left: 0; opacity: 0; transform: scale(.65); } 12% { opacity: 1; } 46% { transform: scale(1); } 88% { left: calc(100% - 11px); opacity: 1; } 100% { left: calc(100% - 11px); opacity: 0; transform: scale(.72); } }
@keyframes noncustody-router-pulse { 50% { transform: translateX(-50%) scale(1.08); border-color: rgba(var(--art-rgb), .8); box-shadow: 0 0 28px rgba(var(--art-rgb), .2), inset 0 0 18px rgba(var(--art-rgb), .08); } }
@keyframes benefit-signal { 50% { left: calc(100% - 5px); } }
@keyframes operations-flow { 50% { background-position: 100% 50%; filter: brightness(1.35); } }
@keyframes fee-ring { to { transform: rotate(360deg); } }
@keyframes fee-needle { from { transform: rotate(-58deg); } to { transform: rotate(62deg); } }
@keyframes speed-target-pulse { 50% { transform: scale(1.06); box-shadow: 0 0 38px rgba(var(--art-rgb), .26), inset 0 0 26px rgba(var(--art-rgb), .14); } }
@keyframes speed-ring-spin { to { transform: rotate(360deg); } }
@keyframes speed-ring-reverse { to { transform: rotate(-360deg); } }
@keyframes speed-core-pulse { 50% { transform: scale(1.4); opacity: .68; } }
@keyframes speed-impact-wave { 0%, 54% { transform: scale(.75); opacity: 0; } 64% { opacity: .7; } 100% { transform: scale(1.45); opacity: 0; } }
@keyframes speed-streak { 0% { transform: translateX(0); opacity: 0; } 20% { opacity: .7; } 100% { transform: translateX(210%); opacity: 0; } }
@keyframes speed-comet-run { 0% { left: 1%; top: 124px; opacity: 0; transform: scale(.65) rotate(-7deg); } 12% { opacity: 1; } 44% { top: 61px; transform: scale(.9) rotate(4deg); } 78% { left: 64%; top: 84px; opacity: 1; transform: scale(1.05) rotate(0); } 100% { left: 72%; top: 84px; opacity: 0; transform: scale(.78); } }
@keyframes security-ring-spin { to { transform: translateX(-50%) rotate(360deg); } }
@keyframes security-shield-breathe { 50% { transform: translateX(-50%) scale(1.06); filter: brightness(1.2); } }
@keyframes security-scan { 0%, 100% { top: 45px; opacity: 0; } 14%, 86% { opacity: 1; } 50% { top: 139px; } }
@keyframes role-node-float { 50% { transform: translateY(-7px); box-shadow: 0 0 24px rgba(var(--security-rgb), .3); } }
@keyframes roles-core-pulse { 50% { transform: translateX(-50%) scale(1.08); box-shadow: 0 0 36px rgba(var(--security-rgb), .34); } }
@keyframes audit-scan-run { 0%, 100% { left: 8%; opacity: 0; } 12%, 88% { opacity: 1; } 50% { left: 91%; } }
@keyframes support-node-pulse { 50% { transform: scale(1.06); border-color: rgba(var(--security-rgb), .9); box-shadow: 0 0 34px rgba(var(--security-rgb), .28); } }
@keyframes support-wave-run { 0% { opacity: 0; transform: translateX(-50%) scaleX(.4); } 32% { opacity: .75; } 100% { opacity: 0; transform: translateX(-50%) scaleX(1.35); } }
@keyframes phone-float { 50% { transform: translateX(-50%) rotateY(-3deg) translateY(-13px); } }
@keyframes cosmic-drift { to { transform: scale(1.075) translate3d(-0.8%, -0.6%, 0); filter: saturate(1.04) contrast(1.08); } }
@keyframes nebula-breathe { to { opacity: .58; transform: scale(1.08) rotate(1.4deg); } }
@keyframes dust-twinkle { 0%, 100% { opacity: .2; transform: scale(.7); } 50% { opacity: 1; transform: scale(1.35); } }
@keyframes moon-float { 50% { transform: translate3d(-7px, 12px, 0) scale(1.06); } }
@keyframes asset-journey { to { offset-distance: 100%; } }
@keyframes token-halo { 50% { transform: scale(1.12); opacity: .35; } }
@keyframes eclipse-halo { 50% { transform: scale(1.16); opacity: .68; } }

@media (max-width: 1180px) {
  .hero { grid-template-columns: minmax(0, 1fr) minmax(400px, .8fr); }
  .hero h1 { font-size: clamp(56px, 7.6vw, 88px); }
  .benefit-grid, .trust-grid { grid-template-columns: repeat(2, 1fr); }
  .case-grid article { min-height: 570px; }
  .route-stop span { min-width: 92px; padding-inline: 13px; }
  .route-stop-wide span { min-width: 155px; }
}

@media (max-width: 900px) {
  .site-header { top: 10px; width: calc(100% - 20px); height: 60px; border-radius: 15px; }
  .menu-toggle {
    width: 38px;
    height: 38px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid var(--line);
    border-radius: 9px;
    background: transparent;
  }
  .menu-toggle span { width: 17px; height: 1px; background: var(--white); }
  .nav {
    position: absolute;
    top: 68px;
    left: 0;
    right: 0;
    padding: 18px;
    display: none;
    align-items: stretch;
    flex-direction: column;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: rgba(7, 4, 18, .97);
    box-shadow: 0 30px 60px rgba(0,0,0,.5);
  }
  .nav.is-open { display: flex; }
  .nav a { padding: 10px; }
  .nav-login { border-left: 0; border-top: 1px solid var(--line); padding-left: 10px !important; }

  .hero {
    min-height: auto;
    padding-top: 135px;
    grid-template-columns: 1fr;
    text-align: center;
  }
  .hero-space-art {
    background-size: auto 66%;
    background-position: 64% 93%;
    opacity: 0.84;
    filter: saturate(0.84) contrast(1.08);
  }
  .hero::before {
    background:
      linear-gradient(180deg, rgba(6,4,17,.96) 0%, rgba(6,4,17,.76) 43%, rgba(6,4,17,.08) 66%, rgba(6,4,17,.28) 100%),
      linear-gradient(90deg, rgba(6,4,17,.42), transparent 50%, rgba(6,4,17,.12));
  }
  .hero-copy { margin: 0 auto; }
  .eyebrow, .hero-actions { margin-left: auto; margin-right: auto; justify-content: center; }
  .hero-proof { justify-content: center; }
  .orbital-stage { min-height: 600px; margin-top: -40px; }
  .stage-glow, .eclipse, .orbit, .orbital-stage::before { margin-left: 0; }
  .orbit-assets { inset-inline: 0; }
  .hero-bottom { display: none; }

  .section-heading,
  .flow-section,
  .faq-section,
  .app-section { grid-template-columns: 1fr; }
  .section-heading { gap: 30px; }
  .flow-section, .faq-section { gap: 80px; }
  .flow-copy, .faq-intro { position: static; }
  .dash-grid { grid-template-columns: 1fr 1fr; }
  .dash-status { grid-column: 1 / -1; }
  .route-map { flex-direction: column; gap: 0; }
  .route-stop { flex-direction: column; }
  .route-stop > i { width: 1px; height: 52px; flex: none; background: linear-gradient(var(--cyan), rgba(70,241,236,.15)); }
  .route-stop > i::after { left: -3px; animation: small-signal-vertical 3.4s linear infinite; }
  .route-stop span, .route-stop-wide span { min-width: 210px; }
  @keyframes small-signal-vertical { to { top: calc(100% - 7px); } }
  .case-grid { grid-template-columns: 1fr; }
  .case-grid article { min-height: 540px; }
  .case-art { width: min(100%, 520px); margin-inline: auto; }
  .app-section { gap: 30px; }
  .phones { margin-top: 20px; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-links { justify-content: flex-start; }
}

@media (max-width: 600px) {
  :root { --page-pad: 20px; }
  .site-shell { background-size: 48px 48px, 48px 48px, auto, auto; }
  .hero { padding-top: 116px; }
  .hero h1 { font-size: clamp(46px, 15vw, 68px); }
  .hero-lead { font-size: 15px; }
  .hero-actions { flex-direction: column; gap: 24px; }
  .hero-proof { flex-wrap: wrap; row-gap: 14px; }
  .hero-proof span { padding-inline: 12px; }
  .orbital-stage { min-height: 460px; }
  .hero-space-art { background-size: auto 48%; background-position: 63% 96%; }
  .eclipse { width: 92px; }
  .asset-token { width: 52px; height: 52px; top: calc(50% - 26px); left: calc(50% - 26px); padding: 4px; gap: 1px; }
  .asset-token img { width: 32px; height: 32px; }
  .asset-pix img { width: 35px; height: 24px; }
  .asset-depix img { width: 29px; height: 29px; }
  .asset-usdt img { width: 36px; height: 36px; }
  .asset-token small { font-size: 6px; }
  .asset-usdc, .asset-lbtc { --orbit-x: 44%; }
  .node-pix { left: 2%; }
  .node-depix { right: -3%; }
  .node-wallet { left: 4%; }
  .route-signal { display: none; }
  .stage-caption { bottom: 1%; }
  .manifesto { min-height: 620px; }
  .manifesto-text { font-size: 29px; }
  .section-heading h2, .flow-copy h2, .infrastructure h2, .faq-intro h2, .app-section h2, .final-cta h2 { font-size: 45px; }
  .benefit-grid, .trust-grid { grid-template-columns: 1fr; }
  .benefit-card { min-height: 420px; }
  .flow-item { grid-template-columns: 64px 1fr; padding-block: 38px; }
  .flow-number { font-size: 52px; }
  .flow-pulse { display: none; }
  .dash-top .live-pill { display: none; }
  .dash-grid { grid-template-columns: 1fr; }
  .dash-status { grid-column: auto; }
  .dash-table > div { grid-template-columns: 1fr auto; padding-block: 15px; }
  .dash-table span, .dash-table em { display: none; }
  .marquee span { font-size: 20px; }
  .case-grid article { min-height: 555px; padding: 20px; }
  .case-art { height: 256px; }
  .case-featured { top: 12px; right: 12px; }
  .final-cta { min-height: 710px; padding: 88px 26px; }
  .final-cta-frame { inset: 18px 10px; border-radius: 20px; }
  .final-copy > p:not(.section-index) { font-size: 15px; }
  .faq-list summary { grid-template-columns: 34px 1fr 20px; gap: 12px; font-size: 16px; }
  .faq-list details > p { margin-left: 46px; }
  .app-actions { align-items: flex-start; flex-direction: column; }
  .phones { height: 550px; transform: scale(.78); transform-origin: top center; margin-bottom: -120px; }
  .phone-left { transform: translateX(-104%) rotateY(24deg) rotateZ(-5deg) scale(.78); }
  .phone-right { transform: translateX(4%) rotateY(-24deg) rotateZ(5deg) scale(.78); }
  .ecosystem-section { padding: 70px 0 76px; }
  .ecosystem-head { margin-bottom: 44px; }
  .ecosystem-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
  .ecosystem-group { min-width: max-content; gap: 30px; padding: 0 30px 0 0; animation: none; }
  .ecosystem-group[aria-hidden="true"] { display: none; }
  .ecosystem-item img { width: 26px; height: 26px; }
  .ecosystem-item span { font-size: 12px; }
  .footer { padding: 28px 20px; }
  .footer-inner { flex-direction: column; align-items: center; text-align: center; gap: 10px; }
  .footer-links { justify-content: center; gap: 10px 18px; }
  .footer-legal { margin-top: 14px; padding-top: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  .custody-orbit > i { offset-distance: 18%; }
  .operations-panel > i::after { background-position: 50% 50%; }
  .fee-gauge::before { transform: none; }
  .fee-gauge > i { transform: rotate(12deg); }
  .speed-streak { animation: none !important; left: 2%; opacity: .35; }
  .speed-comet { animation: none !important; left: 48%; opacity: 1; transform: none; }
  .speed-target { animation: none !important; }
  .ecosystem-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
  .ecosystem-group { min-width: max-content; animation: none !important; }
  .ecosystem-group[aria-hidden="true"] { display: none; }
  .motion-ready [data-reveal] { opacity: 1; transform: none; }
}


/* ============================================================
   Neutraliza as regras ANTIGAS de .auth-page/.auth-card do
   style.css -- o login antigo usava exatamente as mesmas classes,
   e propriedades que o prototipo nao redefine vazariam
   (padding 96px, justify-content:center, max-width:400px).
   ============================================================ */
.auth-page { padding: 0; justify-content: flex-start; }
.auth-card { width: auto; max-width: none; }

/* ============================================================
   Ponte com o formulario real (WTForms/Flask).
   O prototipo usa <label><span>Rotulo</span><input></label>.
   O WTForms renderiza <label> e <input> como irmaos, entao
   replicamos o mesmo visual num wrapper .auth-field.
   ============================================================ */
.auth-card > .auth-field { display: block; margin-top: 19px; }
.auth-card > .auth-field > label {
  display: block; margin-bottom: 9px;
  color: #c7c0d7; font-size: 12px; font-weight: 600;
}
.auth-card .field-hint {
  display: block; margin-top: 7px;
  color: #8b84a0; font-size: 11.5px; line-height: 1.45;
}
.auth-card .field-error {
  display: block; margin-top: 7px;
  color: var(--danger); font-size: 11.5px; line-height: 1.45;
}
.auth-card input[type="text"].is-invalid,
.auth-card input[type="email"].is-invalid,
.auth-card input[type="password"].is-invalid { border-color: rgba(255,130,157,.55); }

/* mensagens flash do Flask dentro do card */
.auth-flash { display: grid; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.auth-flash li {
  padding: 11px 13px; border-radius: 11px; font-size: 12.5px; line-height: 1.45;
  border: 1px solid rgba(145,119,219,.28); background: rgba(8,6,20,.54); color: #c7c0d7;
}
.auth-flash li.is-error { border-color: rgba(255,130,157,.42); color: #ffb9c8; background: rgba(48,10,25,.42); }
.auth-flash li.is-success { border-color: rgba(70,241,236,.38); color: #8bfaff; background: rgba(6,32,38,.42); }

/* checkbox "manter conectado" vindo do WTForms */
.auth-options .auth-check input[type="checkbox"] { margin: 0; }

/* rodape real do site dentro da pagina cosmica */
.auth-page .site-footer { position: relative; z-index: 3; margin-top: 42px; }


/* ============================================================
   Fundo cosmico compartilhado (todas as paginas, exceto auth,
   que tem a cena "portal" propria).
   Camadas: galaxia -> veu escuro -> estrelas.
   O veu e forte de proposito: o pacote pede que o fundo NUNCA
   atrapalhe a leitura de valores financeiros.
   ============================================================ */
.orbix-backdrop { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; background: var(--orbix-ink, #060411); }
.orbix-backdrop-galaxy {
  position: absolute; inset: -6%;
  background: url("/static/img/orbix-hero-galaxy-v2.webp") center / cover no-repeat;
  opacity: .5; filter: saturate(1.05);
  animation: orbix-backdrop-drift 34s ease-in-out infinite alternate;
}
.orbix-backdrop-veil {
  position: absolute; inset: 0;
  background:
    radial-gradient(120% 85% at 50% 12%, rgba(6,4,17,.42), rgba(6,4,17,.8) 58%, #060411 100%),
    linear-gradient(180deg, rgba(6,4,17,.35), rgba(6,4,17,.9));
}
.orbix-backdrop-stars { position: absolute; inset: 0; }
.orbix-backdrop-stars i {
  position: absolute; width: 2px; height: 2px; border-radius: 50%;
  background: #fff; opacity: .5;
  animation: orbix-star-twinkle 4.2s ease-in-out infinite;
}
.orbix-backdrop-stars i:nth-child(1){ left: 12%; top: 18%; animation-delay: -.2s }
.orbix-backdrop-stars i:nth-child(2){ left: 78%; top: 12%; animation-delay: -1.1s }
.orbix-backdrop-stars i:nth-child(3){ left: 33%; top: 62%; animation-delay: -2.4s; background: #8bfaff }
.orbix-backdrop-stars i:nth-child(4){ left: 88%; top: 54%; animation-delay: -3.1s }
.orbix-backdrop-stars i:nth-child(5){ left: 22%; top: 84%; animation-delay: -1.7s }
.orbix-backdrop-stars i:nth-child(6){ left: 64%; top: 78%; animation-delay: -2.9s; background: #b37dff }
.orbix-backdrop-stars i:nth-child(7){ left: 52%; top: 28%; animation-delay: -.8s }
.orbix-backdrop-stars i:nth-child(8){ left: 6%;  top: 46%; animation-delay: -3.6s }
@keyframes orbix-backdrop-drift { to { transform: scale(1.06) translate3d(-.8%, -.6%, 0); } }
@keyframes orbix-star-twinkle { 0%,100% { opacity: .22; transform: scale(.7) } 50% { opacity: .9; transform: scale(1.2) } }

/* A marca antiga desenhava um circulo interno via ::before.
   A marca nova usa .brand-planet, entao removemos o resto do desenho velho. */
.brand-mark::before { content: none !important; }

@media (prefers-reduced-motion: reduce) {
  .orbix-backdrop-galaxy, .orbix-backdrop-stars i { animation: none !important; }
}
