.portal-page {
  --primary:#172a46;
  --secondary:rgba(18,34,58,.9);
  --glass:rgba(34,57,86,.72);
  --accent:#64a2ff;
  --accent-glow:rgba(100,162,255,.32);
  --text-main:#f7f9fd;
  --text-muted:#bdc9d9;
  --border:rgba(255,255,255,.13);
  background:#172a46 !important;
  position:relative;
  isolation:isolate;
  overflow-x:hidden;
}
.portal-page::before {
  content:"";
  position:fixed;
  z-index:-1;
  inset:0;
  background:linear-gradient(135deg,rgba(15,29,51,.18),rgba(30,64,105,.12));
  pointer-events:none;
}
.portal-page::after {
  content:"";
  position:fixed;
  z-index:-1;
  inset:-4rem;
  background-image:linear-gradient(rgba(174,197,225,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(174,197,225,.11) 1px,transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 92%);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 92%);
  pointer-events:none;
  animation:portal-grid-drift 16s linear infinite;
  will-change:transform;
}
.portal-page .ambient-scene {position:fixed;z-index:-1;inset:0;overflow:hidden;pointer-events:none}
.portal-page .ambient-orb {position:absolute;border-radius:50%;will-change:transform;transform:translate3d(0,0,0)}
.portal-page .ambient-orb.one {width:clamp(480px,52vw,820px);aspect-ratio:1;left:-18%;top:-28%;background:radial-gradient(circle,rgba(37,99,235,.62),rgba(37,99,235,.28) 34%,transparent 70%);animation:portal-orb-one 12s ease-in-out infinite alternate}
.portal-page .ambient-orb.two {width:clamp(440px,46vw,720px);aspect-ratio:1;right:-16%;top:18%;background:radial-gradient(circle,rgba(6,182,212,.48),rgba(14,165,233,.22) 38%,transparent 72%);animation:portal-orb-two 15s ease-in-out infinite alternate}
.portal-page .ambient-orb.three {width:clamp(500px,56vw,880px);aspect-ratio:1;left:22%;bottom:-42%;background:radial-gradient(circle,rgba(99,102,241,.48),rgba(124,58,237,.2) 38%,transparent 72%);animation:portal-orb-three 17s ease-in-out infinite alternate}
.portal-page .sidebar {background:rgba(18,34,58,.9);backdrop-filter:blur(18px)}
.portal-page .auth-card {background:rgba(34,57,86,.74);backdrop-filter:blur(18px)}
@keyframes portal-grid-drift {to{transform:translate3d(54px,54px,0)}}
@keyframes portal-orb-one {to{transform:translate3d(18vw,14vh,0) scale(1.12)}}
@keyframes portal-orb-two {to{transform:translate3d(-20vw,18vh,0) scale(.92)}}
@keyframes portal-orb-three {to{transform:translate3d(12vw,-24vh,0) scale(1.08)}}
@media(prefers-reduced-motion:reduce){.portal-page::after,.portal-page .ambient-orb{animation:none;transform:none}}
