/*
 * SAM AI "orb" color layer.
 * Loaded conditionally by app/sam-ai/route.ts; the original template stays untouched.
 */
:root {
  --sam-orb-bg: #020606;
  --sam-orb-bg-soft: #071010;
  --sam-orb-surface: rgba(10, 25, 24, 0.72);
  --sam-orb-surface-strong: rgba(7, 18, 18, 0.92);
  --sam-orb-line: rgba(103, 239, 194, 0.18);
  --sam-orb-text: #f4fffb;
  --sam-orb-muted: #9db6ae;
  --sam-orb-mint: #58f0bd;
  --sam-orb-green: #79ff2f;
  --sam-orb-cyan: #25dced;
  --sam-orb-blue: #3b82f6;

  --pw-user-color-style-6ce387c8-34d4-4438-91b3-ef15f7563451: #dcece7;
  --pw-user-color-style-18aa8819-e702-4f28-b8e6-ca428ebfcae1: rgba(169, 255, 225, 0.07);
  --pw-user-color-style-530acd54-7ab7-4802-a2e6-537fc4327e1f: var(--sam-orb-text);
  --pw-user-color-style-5d5bbd6c-3d15-4617-9080-925229b574d0: rgba(214, 240, 232, 0.62);
  --pw-user-color-style-31856edf-d870-43ac-a0a5-dc0365dd60ac: #dcece7;
  --pw-user-color-style-cd560c70-5097-46bd-a08c-307edce4bb4e: rgba(141, 255, 219, 0.11);
  --pw-user-color-style-5a50d038-4e8c-4199-971a-20e5da394938: var(--sam-orb-text);
  --pw-user-color-style-a2d34486-9ce4-4655-b4d4-30b22f4b5e05: rgba(224, 246, 239, 0.72);
  --pw-user-color-style-0fa32ba8-dd03-4bce-909c-a4fe5287b588: #abc1ba;
  --pw-user-color-style-6d0a807c-a691-4251-9a6c-9a4350ed59c1: var(--sam-orb-text);
  --pw-user-color-style-7ec2d05b-f86e-4bad-8d3e-4e6e9869bbf5: rgba(224, 246, 239, 0.58);
  --pw-user-color-style-a7cde41e-0f7f-4095-a882-a21affbb5c85: var(--sam-orb-green);
  --pw-user-color-style-c7660bd1-fc29-453a-9b4b-efed684e5ce6: #31e98f;
  --pw-user-color-style-0e5f906d-121b-42fb-b897-14d2940af610: var(--sam-orb-cyan);
  --pw-user-color-style-69b20c10-8337-4748-a3ee-c26b5673eaae: var(--sam-orb-mint);
  --pw-user-color-style-d3b30375-c6a8-4a14-a9af-a974a08b296f: #031513;
  --pw-user-color-style-638cefad-7e44-448c-b7c4-e6ba29f86741: #062321;

  --sam-violet: var(--sam-orb-cyan);
  --sam-lilac: #a7ffe0;
  --sam-mint: var(--sam-orb-mint);
  --sam-ink: var(--sam-orb-bg);
}

html,
body,
#i6mb,
#pwb-body-wrap {
  background-color: var(--sam-orb-bg) !important;
  color: var(--sam-orb-text);
}

#ip1j {
  background:
    radial-gradient(circle at 78% 12%, rgba(32, 217, 229, 0.12), transparent 32%),
    radial-gradient(circle at 24% 72%, rgba(86, 255, 82, 0.09), transparent 30%),
    var(--sam-orb-bg);
}

#ip1j::after {
  position: absolute;
  inset: 0;
  z-index: 3;
  content: "";
  pointer-events: none;
  background:
    linear-gradient(rgba(93, 238, 192, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(93, 238, 192, 0.025) 1px, transparent 1px),
    radial-gradient(circle at 64% 34%, rgba(43, 230, 217, 0.11), transparent 24%),
    linear-gradient(180deg, transparent 55%, rgba(2, 6, 6, 0.28));
  background-size: 56px 56px, 56px 56px, auto, auto;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, 0.72) 70%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, rgba(0, 0, 0, 0.72) 70%, transparent 100%);
}

#ijsk {
  filter: hue-rotate(-18deg) saturate(1.22) contrast(1.04);
}

/* Floating navigation */
#imob0j-3-3-2 {
  border: 1px solid rgba(126, 242, 207, 0.11);
  background: rgba(3, 10, 10, 0.64) !important;
  box-shadow: 0 18px 60px rgba(0, 0, 0, 0.28), inset 0 1px rgba(255, 255, 255, 0.04);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
  backdrop-filter: blur(18px) saturate(135%);
}

#ispyh-2-3-2-3-3-2,
#ispyh-2-3-2-3-3-2-2,
#i5gga9-3 {
  color: var(--sam-orb-text) !important;
  text-shadow: 0 0 28px rgba(66, 239, 190, 0.18);
}

/* Editorial labels become the shared mint accent. */
.pw-user-text-style-47248e95-3515-4423-8189-0bbe15d8728f {
  color: var(--sam-orb-mint) !important;
  text-shadow: 0 0 22px rgba(63, 238, 186, 0.16);
}

/* Dark sections and long-form cards: remove the old purple cast. */
#ilwyn-2-2,
#ilwyn-2-2-3,
#ilwyn-2-2-2,
#ilwyn-2-2-2-3 {
  background:
    radial-gradient(circle at 80% 16%, rgba(31, 211, 217, 0.08), transparent 28%),
    radial-gradient(circle at 16% 72%, rgba(97, 255, 53, 0.055), transparent 30%),
    linear-gradient(150deg, #030909 0%, #061110 52%, #020606 100%) !important;
}

#ipgqtg,
#i1lwz-2-4-2-2-3,
#i1lwz-2-4-2-2-3-2,
#i1lwz-2-4-2-2-3-2-2,
#i1lwz-2-4-2-2-3-4,
#i1lwz-2-4-2-2-3-2-3,
#i1lwz-2-4-2-2-3-4-5,
#i1lwz-2-4-2-2-3-2-3-3,
#i1lwz-2-4-2-2-3-4-2,
#i1lwz-2-4-2-2-3-4-2-2,
#i1lwz-2-4-2-2-3-4-2-2-2,
#i1lwz-2-4-2-2-3-4-2-3,
#i1lwz-2-4-2-2-3-3-3,
#i1lwz-2-4-2-2-3-3-2-2-2,
#i1lwz-2-4-2-2-3-3-3-2-3,
#i1lwz-2-4-2-2-3-3-3-2-2-3,
#i1lwz-2-4-2-2-3-3-3-2-2-2-2 {
  border: 1px solid var(--sam-orb-line) !important;
  background:
    radial-gradient(circle at 100% 0, rgba(40, 218, 221, 0.08), transparent 34%),
    linear-gradient(145deg, rgba(12, 29, 28, 0.86), rgba(5, 14, 14, 0.78)) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.035), 0 30px 80px -55px rgba(45, 240, 181, 0.5);
}

#i1lwz-2-4-2-2-3-4-3,
#iktmiu,
#i1lwz-2-4-2-2-3-4-3-2,
#i1lwz-2-4-2-2-3-4-3-2-2 {
  border-color: var(--sam-orb-line) !important;
  background-color: #06100f !important;
}

/* Integration tiles */
#iod904 > div {
  border: 1px solid rgba(104, 239, 198, 0.14);
  background: linear-gradient(145deg, rgba(13, 31, 30, 0.72), rgba(4, 13, 13, 0.68)) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.035);
  transition: border-color 220ms ease, background-color 220ms ease, transform 220ms ease;
}

#iod904 > div:hover {
  border-color: rgba(72, 235, 187, 0.42);
  transform: translateY(-3px);
}

/* Primary calls to action share the preloader's green-to-cyan energy. */
#i1lwz-2-2-2-6,
#i1lwz-2-2-2-2-2,
#i1lwz-2-2-2-2-2-3-2,
#i1lwz-2-2-2-2-2-3,
#i1lwz-2-2-2-2-2-2,
#i1lwz-2-2-2-2-2-2-4,
#i1lwz-2-2-2-2-2-2-6,
#i1lwz-2-2-2-2-2-2-6-2,
#i1lwz-2-2-2-2-2-2-3-2,
#i1lwz-2-2-2-2-2-2-3,
#i1lwz-2-2-2-2-2-2-6-5,
#i1lwz-2-2-2-2-2-2-6-3-3 {
  border: 1px solid rgba(153, 255, 209, 0.34) !important;
  background: linear-gradient(105deg, #73f238 0%, #41e79c 46%, #27d7e9 100%) !important;
  box-shadow: 0 15px 42px -18px rgba(47, 233, 172, 0.7), inset 0 1px rgba(255, 255, 255, 0.42);
  transition: filter 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

#i1lwz-2-2-2-6:hover,
#i1lwz-2-2-2-2-2:hover,
#i1lwz-2-2-2-2-2-3-2:hover,
#i1lwz-2-2-2-2-2-3:hover,
#i1lwz-2-2-2-2-2-2:hover,
#i1lwz-2-2-2-2-2-2-4:hover {
  filter: brightness(1.06) saturate(1.06);
  transform: translateY(-2px);
  box-shadow: 0 20px 48px -18px rgba(47, 233, 172, 0.82), inset 0 1px rgba(255, 255, 255, 0.5);
}

#i1lwz-2-2-2-6 p,
#i1lwz-2-2-2-2-2 p,
#i1lwz-2-2-2-2-2-3-2 p,
#i1lwz-2-2-2-2-2-3 p,
#i1lwz-2-2-2-2-2-2 p,
#i1lwz-2-2-2-2-2-2-4 p,
#i1lwz-2-2-2-2-2-2-6 p,
#i1lwz-2-2-2-2-2-2-6-2 p,
#i1lwz-2-2-2-2-2-2-3-2 p,
#i1lwz-2-2-2-2-2-2-3 p,
#i1lwz-2-2-2-2-2-2-6-5 p,
#i1lwz-2-2-2-2-2-2-6-3-3 p {
  color: #03110d !important;
  font-weight: 700 !important;
}

/* Pricing cards get clearer hierarchy without changing their layout. */
#i1lwz-2-4-2-2-3-3-3,
#i1lwz-2-4-2-2-3-3-2-2-2 {
  position: relative;
  overflow: hidden;
}

#i1lwz-2-4-2-2-3-3-3::before,
#i1lwz-2-4-2-2-3-3-2-2-2::before {
  position: absolute;
  top: 0;
  right: 0;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  content: "";
  background: radial-gradient(circle, rgba(51, 225, 191, 0.14), transparent 68%);
  transform: translate(38%, -42%);
  pointer-events: none;
}

/* Unlock section and its cards are the strongest visual bridge to the orb. */
#pw-unlocking-block {
  background:
    radial-gradient(circle at 50% 38%, rgba(31, 222, 208, 0.16), transparent 30%),
    radial-gradient(circle at 20% 72%, rgba(94, 255, 43, 0.08), transparent 28%),
    linear-gradient(155deg, #010404, #06100f 52%, #020606) !important;
}

#pw-unlocking-block .pw-unlock-card.is-hero {
  box-shadow:
    0 0 0 1px rgba(124, 255, 210, 0.18),
    0 34px 100px rgba(31, 223, 187, 0.22),
    0 0 78px rgba(38, 206, 235, 0.14) !important;
}

#pw-unlocking-block .pw-unlock-card.is-hero::after {
  background: radial-gradient(circle at 50% 55%, rgba(43, 237, 185, 0.24), transparent 60%) !important;
}

#pw-unlocking-block .pw-unlock-cta {
  border-color: rgba(143, 255, 215, 0.42) !important;
  background: linear-gradient(105deg, var(--sam-orb-green), var(--sam-orb-cyan)) !important;
  color: #03110d !important;
  box-shadow: 0 15px 46px -18px rgba(50, 235, 177, 0.72);
  font-weight: 700;
}

/* The landing's own loader now opens in the same visual language. */
#pwb-loading-wrap {
  background:
    radial-gradient(circle at 50% 44%, rgba(34, 218, 205, 0.19), transparent 31%),
    radial-gradient(circle at 42% 58%, rgba(101, 255, 38, 0.08), transparent 28%),
    #020606 !important;
}

#pwb-loading-wrap > #im3p5,
#pwb-loading-wrap > #ieupsz { opacity: 0 !important; pointer-events: none !important; }

.sam-landing-orb-loader {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  overflow: hidden;
  place-items: center;
  color: #f7fffc;
  background: radial-gradient(circle at 50% 44%, rgba(13,65,61,.32), transparent 28%), radial-gradient(circle at 50% 58%, rgba(60,255,80,.06), transparent 34%), linear-gradient(155deg, #020505, #050a0b 45%, #010303);
}

.sam-landing-orb-loader.is-exiting {
  transform-origin: 50% 0;
  animation: sam-landing-loader-elastic-exit 980ms cubic-bezier(.7, 0, .18, 1) forwards;
}

body.sam-landing-revealing #pwb-body-wrap {
  animation: sam-landing-page-reveal 920ms cubic-bezier(.16, 1, .3, 1) both;
}

.sam-landing-orb-loader::before {
  position: absolute;
  inset: 0;
  content: "";
  background-image: linear-gradient(rgba(98,255,192,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(98,255,192,.025) 1px, transparent 1px);
  background-size: 54px 54px;
  -webkit-mask-image: radial-gradient(circle at center, #000, transparent 72%);
  mask-image: radial-gradient(circle at center, #000, transparent 72%);
}

.sam-landing-orb-loader__content {
  position: relative;
  z-index: 2;
  display: flex;
  width: min(90vw, 440px);
  flex-direction: column;
  align-items: center;
  text-align: center;
  animation: sam-landing-content-in 650ms cubic-bezier(.22,.8,.24,1) both;
}

.sam-landing-orb-loader__orb {
  position: relative;
  width: clamp(220px, 31vw, 320px);
  aspect-ratio: 1;
  filter: drop-shadow(0 30px 50px rgba(0,0,0,.62));
}

.sam-landing-orb-loader__orb svg { position: relative; z-index: 2; display: block; width: 100%; height: 100%; overflow: visible; animation: sam-landing-orb-breathe 3.8s ease-in-out infinite; }
.sam-landing-orb-loader__halo { position: absolute; inset: 15%; z-index: 1; border-radius: 50%; background: conic-gradient(from 30deg, rgba(55,134,255,.22), rgba(34,238,189,.25), rgba(107,255,26,.24), rgba(55,134,255,.22)); filter: blur(30px); animation: sam-landing-halo 5.5s linear infinite; }
.sam-landing-orb-loader__core { animation: sam-landing-core 2.8s ease-in-out infinite; transform-origin: center; }
.sam-landing-orb-loader__mesh { fill: none; stroke: url(#sam-landing-flow); stroke-width: .72; stroke-dasharray: 5 7; opacity: .42; transform-origin: 160px 160px; }
.sam-landing-orb-loader__mesh--one { animation: sam-landing-mesh 13s linear infinite; }
.sam-landing-orb-loader__mesh--two { stroke: url(#sam-landing-flow-reverse); opacity: .3; animation: sam-landing-mesh-reverse 16s linear infinite; }
.sam-landing-orb-loader__ribbons { fill: none; stroke: url(#sam-landing-flow); stroke-width: 1.35; stroke-linecap: round; opacity: .88; }
.sam-landing-orb-loader__ribbons path { stroke-dasharray: 32 12 7 15; animation: sam-landing-flow 2.6s linear infinite; }
.sam-landing-orb-loader__arc { fill: none; stroke: url(#sam-landing-flow); stroke-width: 3; stroke-linecap: round; filter: url(#sam-landing-glow); opacity: .8; stroke-dasharray: 170 80; }
.sam-landing-orb-loader__arc--one { animation: sam-landing-arc 3.4s ease-in-out infinite; }
.sam-landing-orb-loader__arc--two { animation: sam-landing-arc 3.4s ease-in-out -1.7s infinite reverse; }
.sam-landing-orb-loader__rim { fill: none; stroke: url(#sam-landing-flow-reverse); stroke-width: .8; stroke-dasharray: 2 12 38 18; opacity: .58; transform-origin: 160px 160px; animation: sam-landing-rim 8s linear infinite; }
.sam-landing-orb-loader__eyebrow { margin-top: -5px; color: #63efbd; font-size: 10px; font-weight: 750; letter-spacing: .28em; text-transform: uppercase; }
.sam-landing-orb-loader__title { margin-top: 10px; color: #f7fffc; font-size: clamp(18px,2.1vw,22px); font-weight: 680; letter-spacing: -.025em; }
.sam-landing-orb-loader__subtitle { margin-top: 7px; color: rgba(215,235,230,.56); font-size: 12px; line-height: 1.5; }
.sam-landing-orb-loader__progress { position: relative; width: 132px; height: 2px; margin-top: 22px; overflow: hidden; border-radius: 999px; background: rgba(131,216,192,.12); }
.sam-landing-orb-loader__progress > span { position: absolute; inset: 0 auto 0 0; width: 48%; border-radius: inherit; background: linear-gradient(90deg, transparent, #55ff9d, #31ddf0, transparent); box-shadow: 0 0 12px rgba(50,245,185,.45); animation: sam-landing-progress 1.55s ease-in-out infinite; }

@keyframes sam-landing-content-in { from { opacity: 0; transform: translateY(12px) scale(.975); } to { opacity: 1; transform: none; } }
@keyframes sam-landing-loader-elastic-exit {
  0% { border-radius: 0; transform: translate3d(0,0,0) scaleY(1); }
  26% { border-radius: 0 0 7% 7% / 0 0 3% 3%; transform: translate3d(0,-4%,0) scaleY(1.035); }
  58% { border-radius: 0 0 38% 38% / 0 0 13% 13%; transform: translate3d(0,-52%,0) scaleY(1.015); }
  100% { border-radius: 0 0 50% 50% / 0 0 18% 18%; transform: translate3d(0,-112%,0) scaleY(.94); visibility: hidden; pointer-events: none; }
}
@keyframes sam-landing-page-reveal {
  from { opacity: .58; transform: translate3d(0,42px,0) scale(.992); filter: saturate(.82); }
  to { opacity: 1; transform: translate3d(0,0,0) scale(1); filter: saturate(1); }
}
@keyframes sam-landing-orb-breathe { 0%,100% { transform: scale(.985); } 50% { transform: scale(1.018); } }
@keyframes sam-landing-halo { to { transform: rotate(360deg); } }
@keyframes sam-landing-mesh { to { transform: rotate(360deg); stroke-dashoffset: -90; } }
@keyframes sam-landing-mesh-reverse { to { transform: rotate(-360deg); stroke-dashoffset: 110; } }
@keyframes sam-landing-rim { to { transform: rotate(360deg); stroke-dashoffset: -70; } }
@keyframes sam-landing-core { 0%,100% { opacity: .55; transform: scale(.92); } 50% { opacity: 1; transform: scale(1.04); } }
@keyframes sam-landing-flow { to { stroke-dashoffset: -66; } }
@keyframes sam-landing-arc { 0%,100% { opacity: .38; stroke-dashoffset: 42; } 50% { opacity: .92; stroke-dashoffset: -92; } }
@keyframes sam-landing-progress { 0% { transform: translateX(-110%); } 100% { transform: translateX(320%); } }

@media (max-width: 480px) {
  .sam-landing-orb-loader__orb { width: min(68vw, 270px); }
  .sam-landing-orb-loader__subtitle { max-width: 260px; }

  #i1lwz-3 {
    border: 1px solid rgba(126, 242, 207, 0.1);
    background: rgba(3, 10, 10, 0.7) !important;
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
  }

  #iy2h61 {
    border: 1px solid rgba(126, 242, 207, 0.14);
    background: rgba(4, 14, 13, 0.96) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .sam-landing-orb-loader.is-exiting,
  body.sam-landing-revealing #pwb-body-wrap {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }

  .sam-landing-orb-loader *,
  .sam-landing-orb-loader *::before,
  .sam-landing-orb-loader *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
  }

  #iod904 > div,
  #i1lwz-2-2-2-6,
  #i1lwz-2-2-2-2-2,
  #i1lwz-2-2-2-2-2-2-4 {
    transition: none;
  }
}
