/* =========================================================
   BLACK HOLE — PREMIUM AUTH EXPERIENCE
   Login / signup only. Auth logic and form IDs remain untouched.
   ========================================================= */

body.bh-auth-page {
  min-height: 100svh;
  overflow-x: hidden;
  color: var(--bh-text);
  background: #020208;
}

.bh-auth {
  position: relative;
  z-index: 4;
  min-height: 100svh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 94px 24px 56px;
  overflow: hidden;
}

/* ---------- 3D dashboard world ---------- */
.bh-auth-world {
  --auth-rx: 0deg;
  --auth-ry: 0deg;
  --auth-x: 0px;
  --auth-y: 0px;
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  perspective: 1500px;
  background: #020208;
}

.bh-auth-world__space {
  position: absolute;
  inset: -7%;
  background:
    radial-gradient(circle at 18% 24%, rgba(116,77,255,.15), transparent 24%),
    radial-gradient(circle at 82% 68%, rgba(62,154,255,.10), transparent 28%),
    linear-gradient(180deg, rgba(2,2,9,.20), rgba(2,2,9,.68)),
    url('../assets/images/landing-black-hole.jpg') center / cover no-repeat;
  filter: brightness(.50) saturate(.74) contrast(1.1);
  transform: translate3d(calc(var(--auth-x) * -.12), calc(var(--auth-y) * -.10), -80px) scale(1.12);
  transform-style: preserve-3d;
  will-change: transform;
}

.bh-auth-world::before,
.bh-auth-world::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.bh-auth-world::before {
  z-index: 1;
  opacity: .68;
  background-image:
    radial-gradient(circle at 8% 18%, rgba(255,255,255,.75) 0 1px, transparent 1.2px),
    radial-gradient(circle at 21% 72%, rgba(172,161,255,.65) 0 1px, transparent 1.2px),
    radial-gradient(circle at 38% 32%, rgba(255,255,255,.6) 0 1px, transparent 1.2px),
    radial-gradient(circle at 55% 82%, rgba(153,191,255,.6) 0 1px, transparent 1.2px),
    radial-gradient(circle at 69% 22%, rgba(255,255,255,.7) 0 1px, transparent 1.2px),
    radial-gradient(circle at 88% 58%, rgba(172,158,255,.62) 0 1px, transparent 1.2px);
  background-size: 270px 270px, 340px 340px, 420px 420px, 370px 370px, 330px 330px, 450px 450px;
  animation: bh-auth-stars 28s linear infinite;
}

.bh-auth-world::after {
  z-index: 5;
  background:
    radial-gradient(ellipse at center, transparent 24%, rgba(2,2,8,.28) 62%, rgba(2,2,8,.90) 100%),
    linear-gradient(90deg, rgba(1,1,6,.52), transparent 22%, transparent 78%, rgba(1,1,6,.54));
}

@keyframes bh-auth-stars { to { background-position: 120px 80px, -100px 140px, 80px -100px, -120px -90px, 90px 110px, -80px 70px; } }

.bh-auth-world__orbit {
  position: absolute;
  z-index: 2;
  border-radius: 50%;
  border: 1px solid rgba(144,111,255,.13);
  box-shadow: 0 0 80px rgba(105,71,255,.05), inset 0 0 60px rgba(76,53,162,.04);
  transform-style: preserve-3d;
}
.bh-auth-world__orbit--one { width: 58vw; height: 18vw; left: -12vw; top: 24vh; transform: rotate(-18deg) rotateX(66deg); animation: bh-auth-orbit 16s ease-in-out infinite alternate; }
.bh-auth-world__orbit--two { width: 44vw; height: 14vw; right: -9vw; bottom: 13vh; transform: rotate(20deg) rotateX(68deg); animation: bh-auth-orbit 20s ease-in-out infinite alternate-reverse; }
@keyframes bh-auth-orbit { from { translate: 0 -6px; opacity:.38; } to { translate: 16px 10px; opacity:.74; } }

.bh-auth-world__rock {
  position: absolute;
  z-index: 3;
  width: 54px;
  aspect-ratio: 1;
  background: linear-gradient(145deg, #171126 0%, #090812 46%, #35205d 100%);
  clip-path: polygon(42% 0, 82% 11%, 100% 44%, 86% 83%, 48% 100%, 10% 82%, 0 42%, 16% 13%);
  opacity: .62;
  filter: drop-shadow(0 18px 30px rgba(0,0,0,.44));
  animation: bh-auth-rock-spin 18s linear infinite;
}
.bh-auth-world__rock::after { content:''; position:absolute; inset:12%; clip-path:inherit; background:linear-gradient(145deg, rgba(142,102,255,.17), transparent 55%); }
.bh-auth-world__rock--1 { left:8%; top:18%; width:68px; animation-duration:21s; }
.bh-auth-world__rock--2 { right:10%; top:26%; width:42px; animation-duration:16s; animation-direction:reverse; }
.bh-auth-world__rock--3 { left:12%; bottom:15%; width:38px; animation-duration:24s; animation-direction:reverse; }
.bh-auth-world__rock--4 { right:14%; bottom:12%; width:74px; animation-duration:28s; }
@keyframes bh-auth-rock-spin { 0% { transform: rotate(0deg) translateY(0) rotateX(18deg); } 50% { transform: rotate(180deg) translateY(-18px) rotateX(44deg); } 100% { transform: rotate(360deg) translateY(0) rotateX(18deg); } }

.bh-auth-dashboard {
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  width: min(1180px, 90vw);
  height: min(690px, 76vh);
  display: grid;
  grid-template-columns: 64px 1fr;
  border: 1px solid rgba(142,112,255,.14);
  border-radius: 26px;
  overflow: hidden;
  background: rgba(4,4,13,.48);
  box-shadow: 0 60px 160px rgba(0,0,0,.56), 0 0 90px rgba(84,47,190,.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transform-style: preserve-3d;
  transform:
    translate3d(-50%, -50%, 0)
    translate3d(var(--auth-x), var(--auth-y), 0)
    rotateX(var(--auth-rx))
    rotateY(var(--auth-ry))
    scale(1.03);
  opacity: .72;
  filter: saturate(.78) brightness(.62);
  will-change: transform;
}

.bh-auth-dashboard__rail {
  padding: 20px 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  border-right: 1px solid rgba(255,255,255,.055);
  background: linear-gradient(180deg, rgba(12,9,26,.82), rgba(5,5,14,.72));
}
.bh-auth-dashboard__rail-brand { width:32px; height:32px; margin-bottom:10px; border-radius:50%; border:2px solid #8667ff; box-shadow:0 0 18px rgba(116,78,255,.26); display:grid; place-items:center; }
.bh-auth-dashboard__rail-brand span { width:13px; height:13px; border-radius:50%; background:#020208; box-shadow:0 0 0 3px rgba(87,220,255,.35); }
.bh-auth-dashboard__rail i { width:28px; height:28px; border-radius:9px; border:1px solid rgba(255,255,255,.055); background:rgba(255,255,255,.025); }
.bh-auth-dashboard__rail i.is-active { border-color:rgba(139,105,255,.26); background:rgba(115,76,255,.11); box-shadow:inset 2px 0 0 #8d67ff; }

.bh-auth-dashboard__surface { min-width:0; padding:28px 30px 32px; }
.bh-auth-dashboard__topbar { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-bottom:22px; border-bottom:1px solid rgba(255,255,255,.055); }
.bh-auth-dashboard__topbar small,
.bh-auth-dashboard article small,
.bh-auth-dashboard header span,
.bh-auth-dashboard header small { color:#77738a; font:500 8px/1.4 var(--bh-font-mono); letter-spacing:.12em; }
.bh-auth-dashboard__topbar strong { display:block; margin-top:7px; font:600 19px/1.1 var(--bh-font-display); color:#ded9ef; }
.bh-auth-dashboard__status { display:flex; align-items:center; gap:7px; color:#76cdb5; font:600 8px var(--bh-font-mono); letter-spacing:.1em; }
.bh-auth-dashboard__status span { width:6px; height:6px; border-radius:50%; background:#62dfb6; box-shadow:0 0 10px #62dfb6; }

.bh-auth-dashboard__kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; margin-top:20px; }
.bh-auth-dashboard__kpis article { min-width:0; padding:16px 17px; border:1px solid rgba(255,255,255,.055); border-radius:14px; background:linear-gradient(145deg, rgba(111,79,214,.07), rgba(255,255,255,.015)); }
.bh-auth-dashboard__kpis strong { display:block; margin-top:10px; color:#f0edf9; font-size:24px; letter-spacing:-.04em; }
.bh-auth-dashboard__kpis article > span { display:block; margin-top:6px; color:#716d82; font:500 8px var(--bh-font-mono); }

.bh-auth-dashboard__grid { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(230px,.75fr); grid-template-rows:1fr 1fr; gap:13px; margin-top:13px; height:calc(100% - 155px); }
.bh-auth-dashboard__grid article { min-width:0; border:1px solid rgba(255,255,255,.055); border-radius:16px; background:linear-gradient(145deg, rgba(90,57,190,.06), rgba(3,4,12,.62)); overflow:hidden; }
.bh-auth-dashboard__grid header { min-height:44px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; border-bottom:1px solid rgba(255,255,255,.05); }
.bh-auth-dashboard__chart { grid-row:1/3; position:relative; padding-bottom:12px; }
.bh-auth-dashboard__chart svg { width:100%; height:calc(100% - 76px); padding:20px; overflow:visible; }
.bh-auth-dashboard__line { fill:none; stroke:#8e70ff; stroke-width:2.5; filter:drop-shadow(0 0 8px rgba(130,95,255,.4)); }
.bh-auth-dashboard__fill { fill:url(#authCurveFill); }
.bh-auth-dashboard__chart-meta { position:absolute; left:18px; right:18px; bottom:15px; display:flex; justify-content:space-between; gap:12px; color:#777388; font:500 8px var(--bh-font-mono); }
.bh-auth-dashboard__chart-meta b { color:#b29cff; }
.bh-auth-dashboard__journal,
.bh-auth-dashboard__dna { padding-bottom:14px; }
.bh-auth-dashboard__journal > div { display:flex; justify-content:space-between; padding:19px 16px 10px; }
.bh-auth-dashboard__journal > div strong { font-size:20px; }
.bh-auth-dashboard__journal > div b { color:#aa8cff; font-size:19px; }
.bh-auth-dashboard__journal p { display:flex; gap:5px; flex-wrap:wrap; margin:0; padding:0 16px; }
.bh-auth-dashboard__journal p span { padding:6px 7px; border:1px solid rgba(255,255,255,.055); border-radius:7px; color:#777487; font-size:8px; }
.bh-auth-dashboard__journal footer { margin:14px 16px 0; padding-top:10px; display:flex; justify-content:space-between; border-top:1px solid rgba(255,255,255,.05); }
.bh-auth-dashboard__journal footer strong { color:#fff; }
.bh-auth-dashboard__dna { text-align:center; }
.bh-auth-dashboard__dna-score { width:76px; height:76px; margin:18px auto 12px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(137,104,255,.22); background:radial-gradient(circle, rgba(116,75,255,.12), transparent 62%); color:#e6e0f5; font-size:24px; box-shadow:inset 0 0 30px rgba(100,65,220,.06); }
.bh-auth-dashboard__dna p { margin:0 14px; display:grid; gap:6px; }
.bh-auth-dashboard__dna p span { display:flex; justify-content:space-between; color:#777487; font-size:8px; }
.bh-auth-dashboard__dna p b { color:#b9b3c7; }

.bh-auth-world__fade { position:absolute; inset:0; z-index:4; background:radial-gradient(circle at 50% 50%, rgba(2,2,8,.08), rgba(2,2,8,.52) 44%, rgba(2,2,8,.78) 100%); }

/* ---------- auth panel ---------- */
.bh-auth__card {
  position: relative;
  z-index: 7;
  width: min(460px, 100%);
  padding: 38px 38px 32px;
  border: 1px solid rgba(145,113,255,.20);
  border-radius: 24px;
  background:
    radial-gradient(circle at 12% 0%, rgba(124,82,255,.13), transparent 31%),
    linear-gradient(155deg, rgba(7,7,18,.94), rgba(4,5,13,.88));
  box-shadow:
    0 42px 110px rgba(0,0,0,.60),
    0 0 0 1px rgba(122,92,223,.04),
    inset 0 1px rgba(255,255,255,.055);
  backdrop-filter: blur(24px) saturate(120%);
  -webkit-backdrop-filter: blur(24px) saturate(120%);
}

.bh-auth__card::before {
  content:'';
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(130deg, rgba(255,255,255,.055), transparent 26%, transparent 70%, rgba(126,89,255,.045));
}

.bh-auth__brand {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  margin-bottom:28px;
  color:#dcd7eb;
  font-family:var(--bh-font-display);
  font-size:13px;
  font-weight:700;
  letter-spacing:.13em;
}

.bh-auth__brand .bh-nav__mark {
  position: relative;
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #010107 0 40%, transparent 42%),
    conic-gradient(from 210deg, #62d8f5, #8f68ff, #e476ff, #62d8f5);
  box-shadow: 0 0 18px rgba(125, 93, 255, .4);
}
.bh-auth__brand .bh-nav__mark::after {
  content: '';
  position: absolute;
  inset: 3px -4px;
  border: 1px solid rgba(126, 222, 255, .42);
  border-radius: 50%;
  transform: rotate(-16deg) scaleY(.42);
  pointer-events: none;
}

.bh-auth__title {
  margin:0;
  text-align:left;
  color:#f5f1ff;
  font-family:var(--bh-font-display);
  font-size:clamp(2rem,4vw,2.55rem);
  font-weight:650;
  line-height:1.05;
  letter-spacing:-.045em;
}

.bh-auth__sub {
  margin:10px 0 29px;
  text-align:left;
  color:#7f7b90;
  font-size:.9rem;
  line-height:1.65;
}

.bh-field { margin-bottom:17px; }
.bh-field label { display:block; margin-bottom:8px; color:#7c778d; font:600 9px/1.3 var(--bh-font-mono); letter-spacing:.13em; text-transform:uppercase; }
.bh-field input[type='text'],
.bh-field input[type='email'],
.bh-field input[type='password'] {
  width:100%;
  height:50px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:11px;
  outline:none;
  color:#efecf8;
  caret-color:#a487ff;
  background:linear-gradient(180deg, rgba(1,2,8,.72), rgba(9,8,21,.70));
  box-shadow:inset 0 1px 8px rgba(0,0,0,.20);
  font-size:14px;
  transition:border-color .22s ease, box-shadow .22s ease, background .22s ease, transform .22s ease;
}
.bh-field input:hover { border-color:rgba(141,112,255,.18); }
.bh-field input:focus { border-color:rgba(145,112,255,.52); background:rgba(8,7,21,.91); box-shadow:0 0 0 3px rgba(121,84,255,.11), 0 0 28px rgba(85,50,172,.08); }
.bh-field input.is-invalid { border-color:var(--bh-loss); }
.bh-field__error { display:none; margin-top:6px; color:var(--bh-loss); font-size:11px; }
.bh-field__error.is-visible { display:block; }

.bh-field-row { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:21px; font-size:12px; }
.bh-checkbox { display:flex; align-items:center; gap:8px; color:#7c788b; cursor:pointer; }
.bh-checkbox input { width:15px; height:15px; accent-color:#8f66ff; cursor:pointer; }
.bh-checkbox .bh-legal-link { color:#a48cff; text-decoration:none; font-weight:600; }
.bh-checkbox .bh-legal-link:hover { color:#c4b4ff; text-decoration:underline; text-underline-offset:2px; }
.bh-link { color:#a48cff; font-size:12px; background:none; border:0; padding:0; cursor:pointer; }
.bh-link:hover { color:#c4b4ff; }

.bh-auth__submit {
  width:100%;
  min-height:50px;
  margin-top:4px;
  border-radius:12px;
  border:1px solid rgba(168,133,255,.34);
  color:#fff;
  background:
    radial-gradient(circle at 20% 15%, rgba(194,170,255,.22), transparent 32%),
    linear-gradient(135deg, #0a0817, #1b113d 38%, #422084 72%, #7b4dff);
  box-shadow:0 18px 44px rgba(74,40,170,.28), inset 0 1px rgba(255,255,255,.16);
  font-weight:700;
  letter-spacing:.055em;
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.bh-auth__submit:hover { transform:translateY(-2px); border-color:rgba(191,160,255,.46); box-shadow:0 22px 56px rgba(79,39,190,.38), 0 0 24px rgba(116,76,255,.13), inset 0 1px rgba(255,255,255,.18); }
.bh-auth__submit:active { transform:translateY(0) scale(.99); }

.bh-auth__footer { margin-top:22px; text-align:center; color:#777385; font-size:12px; }
.bh-auth__footer a { color:#b09aff; font-weight:600; }
.bh-auth__footer a:hover { color:#d1c6ff; }

.bh-auth__notice {
  margin-top:22px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:10px;
  background:rgba(255,255,255,.018);
  color:#5f5c69;
  font-size:10px;
  line-height:1.55;
}

.bh-auth__panel { display:none; }
.bh-auth__panel.is-active { display:block; }
.bh-auth__success { display:none; text-align:center; }
.bh-auth__success.is-active { display:block; }
.bh-auth__success-icon { width:48px; height:48px; margin:0 auto 18px; border-radius:50%; background:rgba(92,232,189,.09); color:#5ce8bd; display:flex; align-items:center; justify-content:center; font-family:var(--bh-font-mono); font-size:20px; }

.bh-back-home {
  position:fixed;
  z-index:10;
  left:24px;
  top:22px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  color:#777384;
  background:rgba(5,5,14,.34);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font:500 10px var(--bh-font-mono);
  letter-spacing:.06em;
}
.bh-back-home:hover { color:#eae7f4; border-color:rgba(140,108,255,.22); }

@media (max-width: 760px) {
  .bh-auth { padding:82px 16px 32px; align-items:flex-start; }
  .bh-auth__card { width:100%; max-width:500px; padding:29px 22px 25px; border-radius:19px; }
  .bh-auth-dashboard { width:120vw; height:72vh; opacity:.38; filter:brightness(.52) saturate(.70); transform:translate3d(-50%,-48%,0) rotateX(4deg) rotateY(-4deg) scale(1.03); }
  .bh-auth-dashboard__surface { padding:18px; }
  .bh-auth-dashboard__kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bh-auth-dashboard__grid { grid-template-columns:1fr; grid-template-rows:1fr; }
  .bh-auth-dashboard__journal,
  .bh-auth-dashboard__dna { display:none; }
  .bh-auth-dashboard__chart { grid-row:auto; }
  .bh-auth-world__rock { opacity:.36; transform:scale(.72); }
  .bh-auth-world__rock--1 { left:-3%; top:19%; }
  .bh-auth-world__rock--2 { right:-3%; top:27%; }
  .bh-back-home { top:14px; left:14px; }
  .bh-auth__title { font-size:2rem; }
}

@media (max-width: 480px) {
  .bh-auth { padding-top:74px; }
  .bh-auth__card { padding:25px 18px 22px; }
  .bh-field-row { align-items:flex-start; flex-wrap:wrap; }
  .bh-auth-dashboard { width:150vw; left:52%; opacity:.30; }
  .bh-auth-world__orbit { opacity:.42; }
  .bh-auth-world__rock--3,
  .bh-auth-world__rock--4 { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  .bh-auth-world::before,
  .bh-auth-world__orbit,
  .bh-auth-world__rock { animation:none !important; }
  .bh-auth-dashboard,
  .bh-auth-world__space { transform:none !important; }
}


/* =========================================================
   2026-09-03 — BLACK-HOLE-IMAGE AUTH BACKGROUND
   Remove the dashboard mockup entirely. Login / signup now use
   the cinematic BLACK HOLE artwork as the real background while
   keeping the premium auth card and subtle depth atmosphere.
   ========================================================= */
.bh-auth-dashboard {
  display: none !important;
}

.bh-auth-world {
  background: #010107;
}

.bh-auth-world__space {
  inset: -5%;
  background:
    radial-gradient(circle at 76% 42%, rgba(133, 82, 255, .10), transparent 27%),
    linear-gradient(90deg, rgba(1,1,7,.80) 0%, rgba(1,1,8,.52) 31%, rgba(1,1,8,.16) 62%, rgba(1,1,7,.34) 100%),
    linear-gradient(180deg, rgba(1,1,8,.24), rgba(1,1,8,.58)),
    url('../assets/images/landing-black-hole.jpg') 66% 47% / cover no-repeat !important;
  filter: brightness(.74) saturate(.90) contrast(1.10) !important;
  transform: translate3d(calc(var(--auth-x) * -.16), calc(var(--auth-y) * -.12), -70px) scale(1.08) !important;
  transform-origin: 66% 47%;
}

.bh-auth-world::before {
  opacity: .46;
}

.bh-auth-world::after {
  background:
    radial-gradient(ellipse at 66% 46%, transparent 15%, rgba(1,1,7,.12) 44%, rgba(1,1,7,.72) 92%),
    linear-gradient(90deg, rgba(1,1,7,.74) 0%, rgba(1,1,8,.42) 31%, transparent 62%, rgba(1,1,8,.28) 100%) !important;
}

.bh-auth-world__orbit {
  opacity: .45;
  border-color: rgba(143, 103, 255, .09);
}

.bh-auth-world__rock {
  opacity: .32;
  filter: drop-shadow(0 16px 28px rgba(0,0,0,.48)) saturate(.72);
}

.bh-auth-world__rock--1 { left: 6%; top: 17%; }
.bh-auth-world__rock--2 { right: 7%; top: 20%; }
.bh-auth-world__rock--3 { left: 9%; bottom: 12%; }
.bh-auth-world__rock--4 { right: 8%; bottom: 10%; }

.bh-auth-world__fade {
  z-index: 4;
  background:
    radial-gradient(circle at 66% 44%, rgba(2,2,8,.04), rgba(2,2,8,.22) 42%, rgba(2,2,8,.62) 100%),
    linear-gradient(90deg, rgba(1,1,7,.58), rgba(1,1,7,.12) 48%, rgba(1,1,7,.28)) !important;
}

.bh-auth__card {
  background:
    radial-gradient(circle at 14% 0%, rgba(124,82,255,.12), transparent 30%),
    linear-gradient(155deg, rgba(6,6,17,.91), rgba(3,4,12,.84)) !important;
  box-shadow:
    0 44px 118px rgba(0,0,0,.66),
    0 0 0 1px rgba(126,94,230,.05),
    inset 0 1px rgba(255,255,255,.055) !important;
}

@media (max-width: 700px) {
  .bh-auth-world__space {
    inset: -2%;
    background:
      linear-gradient(180deg, rgba(1,1,8,.25), rgba(1,1,8,.66)),
      linear-gradient(90deg, rgba(1,1,7,.62), rgba(1,1,7,.18) 56%, rgba(1,1,7,.34)),
      url('../assets/images/landing-black-hole.jpg') 70% 28% / cover no-repeat !important;
    filter: brightness(.68) saturate(.82) contrast(1.08) !important;
    transform: translate3d(calc(var(--auth-x) * -.08), calc(var(--auth-y) * -.06), 0) scale(1.04) !important;
  }

  .bh-auth-world__orbit { opacity: .28; }
  .bh-auth-world__rock { opacity: .20; }
  .bh-auth-world::after {
    background:
      linear-gradient(180deg, rgba(1,1,8,.08), rgba(1,1,8,.28) 45%, rgba(1,1,8,.72)),
      radial-gradient(ellipse at 70% 30%, transparent 12%, rgba(1,1,7,.20) 52%, rgba(1,1,7,.68) 100%) !important;
  }
}


/* =========================================================
   BLACK HOLE V1.9 — Password recovery visibility
   ========================================================= */
.bh-forgot-link {
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 9px;
  margin:-6px -9px;
  border-radius:9px;
  color:#bca9ff;
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
  text-decoration:none;
  transition:color .18s ease, background .18s ease;
}
.bh-forgot-link:hover,
.bh-forgot-link:focus-visible {
  color:#ebe5ff;
  background:rgba(132,94,255,.11);
  outline:none;
}
.bh-reset-status {
  margin:16px 0 0;
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:12px;
  background:rgba(255,255,255,.025);
  color:#aaa5b8;
  font-size:13px;
  line-height:1.55;
}
.bh-reset-status.is-error {
  border-color:rgba(255,96,122,.20);
  background:rgba(159,40,64,.10);
  color:#ff9aab;
}
.bh-reset-status.is-success {
  border-color:rgba(92,232,189,.18);
  background:rgba(92,232,189,.07);
  color:#bdf7e5;
}
.bh-reset-actions {
  display:flex;
  justify-content:center;
  margin-top:18px;
}
.bh-reset-actions a {
  color:#b09aff;
  font-size:13px;
  font-weight:700;
}
@media (max-width:480px) {
  .bh-forgot-link { font-size:14px; }
  .bh-reset-status { font-size:14px; }
}
