/* Sub2API · Prismatic fantasy V2, 2026-10-25.
   Native Home/Auth background images, DOM and layout remain untouched. */
.cosmic-home,
.auth-scene {
  --prism-cyan: 157 232 255;
  --prism-violet: 186 157 255;
  --prism-gold: 255 222 164;
}
@keyframes sub2-prism-orbit { to { rotate: 360deg; } }
@keyframes sub2-prism-orbit-reverse { to { rotate: -360deg; } }
@keyframes sub2-prism-breathe { 50% { opacity: .82; scale: 1.025; } }
@keyframes sub2-prism-glint {
  0%,24% { translate: -160% 0; opacity: 0; }
  36% { opacity: .8; }
  60%,100% { translate: 260% 0; opacity: 0; }
}
@keyframes sub2-prism-enter {
  from { opacity: 0; translate: 0 14px; }
  to { opacity: 1; translate: 0 0; }
}
/* Declarative CSS owns every transition, including the first slide switch.
   Only opacity/translate move; layout, backgrounds and native navigation remain untouched. */
@media (min-width: 801px) and (pointer: fine) {
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__main {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    justify-items: center;
    position: relative;
  }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide,
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active {
    display: block;
    grid-area: 1 / 1;
    width: 100%;
    max-width: 1120px;
    margin-inline: auto;
    position: relative;
    z-index: 1;
    opacity: 0;
    translate: 0 -8px;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .26s ease, translate .26s ease, visibility 0s linear .26s;
  }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active {
    z-index: 2;
    opacity: 1;
    translate: 0 0;
    visibility: visible;
    pointer-events: auto;
    transition: opacity .56s ease .12s, translate .56s cubic-bezier(.22,.7,.3,1) .12s, visibility 0s;
  }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide > :is(.cosmic-home__eyebrow,.cosmic-home__title,.cosmic-home__subtitle,.cosmic-home__actions,.cosmic-home__tags,.cosmic-home__feature-grid,.cosmic-home__cta,.cosmic-home__providers) {
    animation: none !important;
    opacity: 0;
    translate: 0 8px;
    transition: opacity .22s ease, translate .22s ease;
  }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > :is(.cosmic-home__eyebrow,.cosmic-home__title,.cosmic-home__subtitle,.cosmic-home__actions,.cosmic-home__tags,.cosmic-home__feature-grid,.cosmic-home__cta,.cosmic-home__providers) {
    opacity: 1;
    translate: 0 0;
    transition: opacity .54s ease .12s, translate .54s cubic-bezier(.22,.7,.3,1) .12s;
  }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > :nth-child(2) { transition-delay: .18s; }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > :nth-child(3) { transition-delay: .24s; }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > :nth-child(4) { transition-delay: .30s; }
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > :nth-child(5) { transition-delay: .36s; }
}
/* Background-image declarations deliberately absent: original illustrations remain authoritative. */
.cosmic-home__slide.is-active {
  position: relative;
  isolation: isolate;
}
.cosmic-home__slide.is-active::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(36vw, 480px);
  aspect-ratio: 1;
  left: -9%;
  top: -45%;
  pointer-events: none;
  border-radius: 50%;
  background:
    radial-gradient(circle, transparent 0 33%, rgb(var(--prism-cyan) / .19) 33.2% 33.5%, transparent 33.8% 45%, rgb(var(--prism-violet) / .20) 45.2% 45.45%, transparent 45.8%),
    repeating-conic-gradient(from 15deg, rgb(var(--prism-cyan) / .32) 0 .35deg, transparent .35deg 15deg),
    conic-gradient(from 25deg, transparent 0 12%, rgb(var(--prism-cyan) / .15) 16%, transparent 23% 55%, rgb(var(--prism-violet) / .18) 62%, transparent 69%);
  -webkit-mask-image: radial-gradient(circle, transparent 0 26%, #000 27% 49%, transparent 50%);
  mask-image: radial-gradient(circle, transparent 0 26%, #000 27% 49%, transparent 50%);
  filter: drop-shadow(0 0 20px rgb(var(--prism-cyan) / .16));
  opacity: .72;
  animation: sub2-prism-orbit 88s linear infinite;
}
.cosmic-home__slide.is-active::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(44vw, 650px);
  height: min(44vw, 650px);
  left: -19%;
  top: -70%;
  pointer-events: none;
  background:
    radial-gradient(ellipse, rgb(var(--prism-cyan) / .13), transparent 58%),
    conic-gradient(from 25deg at 50% 50%, transparent, rgb(var(--prism-violet) / .07), transparent 38%);
  animation: sub2-prism-breathe 10s ease-in-out infinite;
}
.cosmic-home__slide.is-active > .cosmic-home__eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #c4efff;
  letter-spacing: .24em;
  text-shadow: 0 0 20px rgb(var(--prism-cyan) / .32);
}
.cosmic-home__slide.is-active > .cosmic-home__eyebrow::before {
  content: "";
  width: 34px;
  height: 1px;
  flex: 0 0 auto;
  background: linear-gradient(90deg, rgb(var(--prism-cyan) / .95), rgb(var(--prism-violet) / .3));
  box-shadow: 0 0 12px rgb(var(--prism-cyan) / .5);
}
.cosmic-home__slide.is-active > .cosmic-home__title {
  filter: drop-shadow(0 4px 22px rgb(93 153 233 / .20));
}
.cosmic-home__slide--hero.is-active > .cosmic-home__title {
  background-image: linear-gradient(108deg, #f7fcff 5%, #bceaff 33%, #a9f3e0 57%, #c7b1ff 82%, #ffe1ac 112%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.cosmic-home__slide.is-active > .cosmic-home__subtitle {
  color: rgb(225 239 255 / .88);
}
.cosmic-home__slide.is-active :is(.cosmic-home__cta,.cosmic-home__actions a,.cosmic-home__nav-button,.cosmic-home__theme) {
  position: relative;
  overflow: hidden;
}
.cosmic-home__slide.is-active .cosmic-home__cta,
.cosmic-home__actions .cosmic-home__cta {
  border-color: rgb(224 250 255 / .66);
  background: linear-gradient(110deg, #a7e3f3, #a7c7f4 48%, #c1b1f0);
  color: #152b4b;
  box-shadow: inset 0 1px rgb(255 255 255 / .72), 0 10px 32px rgb(80 166 223 / .28), 0 0 36px rgb(var(--prism-violet) / .18);
}
.cosmic-home__slide.is-active .cosmic-home__cta::after,
.cosmic-home__actions .cosmic-home__cta::after,
.auth-scene .auth-card__form .btn-primary::after {
  content: "";
  position: absolute;
  inset: -50% auto -50% 0;
  width: 32%;
  pointer-events: none;
  background: linear-gradient(100deg, transparent, rgb(255 255 255 / .68), transparent);
  transform: skewX(-20deg);
  animation: sub2-prism-glint 8s ease-in-out infinite;
}
.cosmic-home__slide.is-active .cosmic-home__secondary,
.cosmic-home__actions a:not(.cosmic-home__cta),
.cosmic-home__nav-button,
.cosmic-home__theme {
  border-color: rgb(var(--prism-cyan) / .38);
  background: linear-gradient(120deg, rgb(var(--prism-cyan) / .11), rgb(var(--prism-violet) / .075));
  box-shadow: inset 0 1px rgb(255 255 255 / .17), 0 8px 28px rgb(7 22 55 / .15);
  backdrop-filter: blur(18px) saturate(1.2);
}
.cosmic-home__slide.is-active :is(.cosmic-home__feature,.cosmic-home__feature-card) {
  border-color: rgb(var(--prism-cyan) / .34);
  background-image: linear-gradient(135deg, rgb(var(--prism-cyan) / .105), transparent 40% 70%, rgb(var(--prism-violet) / .095));
  box-shadow: inset 0 1px rgb(255 255 255 / .18), 0 18px 50px rgb(3 11 34 / .20);
}
.cosmic-home__pager button.is-active {
  background: linear-gradient(180deg, #b7efff, #b8a2f1);
  box-shadow: 0 0 16px rgb(var(--prism-cyan) / .5);
}
/* Auth: visible crystal facets and a brighter glass silhouette, without touching form dimensions. */
.auth-scene .auth-intro::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 540px;
  aspect-ratio: 1;
  left: -170px;
  top: -210px;
  pointer-events: none;
  border-radius: 50%;
  background:
    radial-gradient(circle, transparent 0 30%, rgb(var(--prism-cyan) / .17) 30.2% 30.4%, transparent 30.8% 43%, rgb(var(--prism-violet) / .18) 43.2% 43.45%, transparent 43.8%),
    repeating-conic-gradient(from 4deg, rgb(var(--prism-cyan) / .28) 0 .35deg, transparent .35deg 12deg),
    conic-gradient(from 0deg, transparent 0 8%, rgb(var(--prism-cyan) / .16) 14%, transparent 21% 53%, rgb(var(--prism-violet) / .15) 60%, transparent 66%);
  -webkit-mask-image: radial-gradient(circle, transparent 0 24%, #000 25% 49%, transparent 50%);
  mask-image: radial-gradient(circle, transparent 0 24%, #000 25% 49%, transparent 50%);
  filter: drop-shadow(0 0 20px rgb(var(--prism-cyan) / .18));
  opacity: .84;
  animation: sub2-prism-orbit 90s linear infinite;
}
.auth-scene .auth-intro {
  isolation: isolate;
}
.auth-scene .auth-intro__title {
  background: linear-gradient(106deg, #f7fcff 8%, #c5edff 38%, #b2e8e1 62%, #c5b1ff 92%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 4px 22px rgb(87 155 221 / .22));
}
.auth-scene .auth-scene__orb {
  border-color: rgb(var(--prism-cyan) / .42);
  background: conic-gradient(from 20deg, transparent, rgb(var(--prism-cyan) / .06), transparent 28% 58%, rgb(var(--prism-violet) / .07), transparent 80%);
  box-shadow: inset 0 0 90px rgb(var(--prism-cyan) / .08), 0 0 100px rgb(var(--prism-violet) / .14);
}
.auth-scene .auth-card {
  border-color: rgb(var(--prism-cyan) / .47);
  background:
    linear-gradient(138deg, rgb(123 192 235 / .115), transparent 27% 68%, rgb(158 125 220 / .09)),
    rgb(10 23 49 / .78);
  box-shadow:
    inset 0 1px rgb(255 255 255 / .25),
    inset 1px 0 rgb(var(--prism-cyan) / .09),
    0 30px 90px rgb(1 8 31 / .42),
    0 0 0 1px rgb(var(--prism-violet) / .06),
    0 0 65px rgb(var(--prism-cyan) / .13);
  backdrop-filter: blur(26px) saturate(1.25);
  animation: sub2-prism-enter .6s cubic-bezier(.2,.72,.2,1) backwards;
}
.auth-scene .auth-card::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(126deg, rgb(255 255 255 / .105), transparent 17% 70%, rgb(var(--prism-violet) / .07)),
    linear-gradient(115deg, transparent 0 68%, rgb(var(--prism-cyan) / .045) 68.2% 68.6%, transparent 69%);
}
.auth-scene .auth-card::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 10%;
  right: 10%;
  top: 0;
  height: 1px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, #c2f2ff, #c8b5ff, transparent);
  box-shadow: 0 0 18px rgb(var(--prism-cyan) / .42);
}
.auth-scene .auth-card__header,
.auth-scene .auth-card__form,
.auth-scene .auth-card__footer { position: relative; z-index: 2; }
.auth-scene .auth-card__header {
  background: linear-gradient(180deg, rgb(var(--prism-cyan) / .035), transparent);
}
.auth-scene .auth-card__overline { color: #b5e5f2; }
.auth-scene .auth-card__heading-row h2,
.auth-scene .auth-card__title {
  background: linear-gradient(105deg, #f4fbff, #c6ebfa 55%, #c5b5f6);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.auth-scene .auth-card__orbit {
  border-color: rgb(var(--prism-cyan) / .5);
  background: linear-gradient(145deg, rgb(var(--prism-cyan) / .17), rgb(var(--prism-violet) / .10));
  box-shadow: inset 0 1px rgb(255 255 255 / .28), 0 0 32px rgb(var(--prism-cyan) / .18);
}
.auth-scene .auth-card__form .input {
  border-color: rgb(163 209 237 / .25);
  background: rgb(7 20 43 / .40);
  box-shadow: inset 0 1px 8px rgb(0 5 20 / .15), inset 0 1px rgb(255 255 255 / .035);
}
.auth-scene .auth-card__form .input:focus,
.auth-scene .auth-card__form .input:focus-within {
  border-color: rgb(var(--prism-cyan) / .85);
  box-shadow: 0 0 0 3px rgb(var(--prism-cyan) / .12), 0 0 26px rgb(var(--prism-cyan) / .12), inset 0 1px rgb(255 255 255 / .10);
}
.auth-scene .auth-card__form .btn-primary:not(:disabled) {
  position: relative;
  overflow: hidden;
  border-color: rgb(231 252 255 / .62);
  background: linear-gradient(110deg, #86d7e8, #8ab5e5 50%, #aa92dc);
  color: #102845;
  box-shadow: inset 0 1px rgb(255 255 255 / .48), 0 12px 32px rgb(51 146 186 / .28), 0 0 32px rgb(var(--prism-violet) / .17);
}
.auth-scene .auth-card__form .btn-primary:disabled { opacity: .60; }
.auth-scene .auth-card__footer {
  border-top-color: rgb(var(--prism-cyan) / .16);
  background: linear-gradient(90deg, transparent, rgb(var(--prism-cyan) / .035), transparent);
}
.auth-scene :is(a,button,input,[role="button"]):focus-visible,
.cosmic-home :is(a,button,[role="button"]):focus-visible {
  outline: 2px solid rgb(var(--prism-cyan) / .95);
  outline-offset: 3px;
}
/* Airy light version: not a dark glass card pasted over the original light illustration. */
.cosmic-home:not(.is-dark) .cosmic-home__slide--hero.is-active > .cosmic-home__title {
  background-image: linear-gradient(108deg, #183c65, #277894 42%, #4e6eac 68%, #785c9d);
  -webkit-background-clip: text;
  background-clip: text;
}
.cosmic-home:not(.is-dark) .cosmic-home__slide.is-active > .cosmic-home__eyebrow { color: #255f83; }
.cosmic-home:not(.is-dark) .cosmic-home__slide.is-active > .cosmic-home__subtitle { color: #2a4d70; }
.cosmic-home:not(.is-dark) .cosmic-home__slide.is-active .cosmic-home__cta,
.cosmic-home:not(.is-dark) .cosmic-home__actions .cosmic-home__cta {
  background: linear-gradient(110deg, #408faa, #657fbd 55%, #8b70b3);
  color: #fff;
  box-shadow: inset 0 1px rgb(255 255 255 / .32), 0 12px 30px rgb(49 109 156 / .24), 0 0 30px rgb(125 99 176 / .14);
}
.cosmic-home:not(.is-dark) .cosmic-home__nav-button,
.cosmic-home:not(.is-dark) .cosmic-home__theme,
.cosmic-home:not(.is-dark) .cosmic-home__actions a:not(.cosmic-home__cta) {
  background: linear-gradient(120deg, rgb(255 255 255 / .45), rgb(234 228 255 / .30));
  border-color: rgb(255 255 255 / .7);
}
.auth-scene:not(.is-dark) .auth-intro__title {
  background: linear-gradient(106deg, #143655, #1d687e 38%, #3d578e 68%, #61427f);
  -webkit-background-clip: text;
  background-clip: text;
}
.auth-scene:not(.is-dark) .auth-intro::before { opacity: .58; }
.auth-scene:not(.is-dark) .auth-card {
  border-color: rgb(255 255 255 / .85);
  background:
    linear-gradient(138deg, rgb(255 255 255 / .38), transparent 28% 68%, rgb(177 154 225 / .09)),
    rgb(242 249 255 / .84);
  box-shadow: inset 0 1px #fff, 0 30px 80px rgb(43 79 123 / .22), 0 0 55px rgb(96 154 197 / .14);
}
.auth-scene:not(.is-dark) .auth-card__overline { color: #32718e; }
.auth-scene:not(.is-dark) .auth-card__heading-row h2,
.auth-scene:not(.is-dark) .auth-card__title {
  background: linear-gradient(105deg, #193a60, #327d9c 55%, #725693);
  -webkit-background-clip: text;
  background-clip: text;
}
.auth-scene:not(.is-dark) .auth-card__form .input {
  border-color: rgb(84 132 170 / .26);
  background: rgb(255 255 255 / .57);
}
.auth-scene:not(.is-dark) .auth-card__form .btn-primary:not(:disabled) {
  background: linear-gradient(110deg, #3d8ea9, #5f7fba 55%, #886eaf);
  color: #fff;
}
.auth-scene:not(.is-dark) .auth-card__orbit { background: linear-gradient(145deg, rgb(255 255 255 / .62), rgb(175 154 230 / .13)); }
@media (max-width: 800px), (pointer: coarse) {
  .cosmic-home:not(.is-compact) [data-home-slide] > :is(.cosmic-home__eyebrow,.cosmic-home__title,.cosmic-home__subtitle,.cosmic-home__actions,.cosmic-home__tags,.cosmic-home__feature-grid,.cosmic-home__cta,.cosmic-home__providers) {
    animation: none !important;
    opacity: .2;
    translate: 0 16px;
    transition: opacity .52s ease, translate .64s cubic-bezier(.22,.7,.3,1);
  }
  .cosmic-home:not(.is-compact) [data-home-slide].is-active > :is(.cosmic-home__eyebrow,.cosmic-home__title,.cosmic-home__subtitle,.cosmic-home__actions,.cosmic-home__tags,.cosmic-home__feature-grid,.cosmic-home__cta,.cosmic-home__providers) {
    opacity: 1;
    translate: 0 0;
  }
  .cosmic-home:not(.is-compact) [data-home-slide].is-active > :nth-child(2) { transition-delay: .06s; }
  .cosmic-home:not(.is-compact) [data-home-slide].is-active > :nth-child(3) { transition-delay: .12s; }
  .cosmic-home:not(.is-compact) [data-home-slide].is-active > :nth-child(4) { transition-delay: .18s; }
  .cosmic-home:not(.is-compact) [data-home-slide].is-active > :nth-child(5) { transition-delay: .24s; }
  .cosmic-home__slide.is-active::before {
    width: 280px;
    left: -92px;
    top: -78px;
    opacity: .62;
    animation: sub2-prism-orbit 110s linear infinite;
  }
  .cosmic-home__slide.is-active::after {
    display: block;
    width: 330px;
    height: 330px;
    left: -115px;
    top: -110px;
    opacity: .48;
    animation: sub2-prism-breathe 13s ease-in-out infinite;
  }
  .cosmic-home__slide.is-active > .cosmic-home__eyebrow { letter-spacing: .18em; }
  .auth-scene .auth-intro::before {
    width: 310px;
    left: -100px;
    top: -100px;
    opacity: .55;
    animation: none;
  }
  .auth-scene .auth-card {
    box-shadow: inset 0 1px rgb(255 255 255 / .22), 0 24px 60px rgb(1 8 31 / .32), 0 0 36px rgb(var(--prism-cyan) / .09);
  }
}
@media (prefers-reduced-motion: reduce) {
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide,
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active,
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide > *,
  .cosmic-home:not(.is-compact):not(.is-compact) .cosmic-home__slide.is-active > * { transition: none !important; }
  .cosmic-home__slide.is-active::before,
  .cosmic-home__slide.is-active::after,
  .cosmic-home__slide.is-active .cosmic-home__cta::after,
  .cosmic-home__actions .cosmic-home__cta::after,
  .auth-scene .auth-intro::before,
  .auth-scene .auth-card,
  .auth-scene .auth-card__form .btn-primary::after { animation: none !important; }
  .cosmic-home :is(a,button),
  .auth-scene :is(input,button,a) { transition: none !important; }
}
