/* Figma YofwjuYzkw5r1p88og70hh, frames 4:68 / 4:129. Full original logo alpha mask. */
html.has-sanmi-welcome, .has-sanmi-welcome body { overflow: hidden; }
.sanmi-welcome {
  --welcome-paper: #f8f5ec; --welcome-muted: #66796e;
  position: fixed; inset: 0; z-index: 2147483000; box-sizing: border-box; height: 100vh; height: 100dvh;
  display: grid; place-items: center;
  padding: max(20px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  overflow: hidden; background: var(--welcome-paper); outline: none; isolation: isolate; transition: opacity 220ms ease;
}
.sanmi-welcome.is-leaving { opacity: 0; pointer-events: none; }
.sanmi-welcome *, .sanmi-welcome *::before, .sanmi-welcome *::after { box-sizing: border-box; }
.welcome-main { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; width: 100%; }
.welcome-art { position: relative; width: min(760px, calc(100vw - 32px), calc((100dvh - 116px) * 1.9)); aspect-ratio: 1.9; flex: none; }
.welcome-loading, .welcome-tagline { margin: 0; color: var(--welcome-muted); font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", sans-serif; font-weight: 400; text-align: center; }
.welcome-loading { font-size: 15px; letter-spacing: .045em; line-height: 1.5; }
.welcome-tagline { position: absolute; left: max(16px, env(safe-area-inset-left)); right: max(16px, env(safe-area-inset-right)); bottom: max(26px, calc(env(safe-area-inset-bottom) + 16px)); font-size: 14px; letter-spacing: .12em; line-height: 1.5; }
.welcome-art-canvas { position: absolute; top: 0; left: 0; width: 760px; height: 400px; transform: scale(var(--welcome-scale, 1)); transform-origin: 0 0; }
.welcome-layer { position: absolute; }
.welcome-layer picture, .welcome-layer img { display: block; }
.welcome-layer img { max-width: none; }
.welcome-wash, .welcome-route { inset: 0; }
.welcome-mountains { left: 27.2px; top: 265.45px; }
.welcome-sun { left: 608px; top: 5px; width: 80px; height: 80px; }
.welcome-sprout { left: 35px; top: 173px; width: 112px; height: 135px; }
.welcome-sprout picture { position: absolute; left: 24.15px; top: 23.09px; }
.welcome-book { left: 610px; top: 271px; width: 106px; height: 82px; }
.welcome-book picture { position: absolute; left: 8.15px; top: 8.15px; }
.welcome-logo { left: 175px; top: 60px; width: 410px; height: 238.426px; isolation: isolate; }
.welcome-logo::after {
  content: ""; position: absolute; z-index: -2; inset: -14% -12%; pointer-events: none;
  border-radius: 50%; background: radial-gradient(ellipse at 50% 48%, rgba(89, 205, 198, .29), rgba(89, 205, 198, .11) 43%, transparent 76%);
  filter: blur(18px);
}
.welcome-logo img { display: block; width: 410px; height: auto; }
.welcome-logo-gradient, .welcome-logo-glow { display: none; }
@supports ((mask-image: url("/partner/assets/welcome/logo.png")) or (-webkit-mask-image: url("/partner/assets/welcome/logo.png"))) {
  .welcome-logo img { opacity: 0; }
  .welcome-logo-gradient, .welcome-logo-glow {
    display: block; position: absolute; inset: 0; pointer-events: none;
    -webkit-mask: url("/partner/assets/welcome/logo.png") center / 100% 100% no-repeat;
    mask: url("/partner/assets/welcome/logo.png") center / 100% 100% no-repeat;
  }
  .welcome-logo-gradient {
    background: linear-gradient(112deg, #26737a 4%, #55b9b7 30%, #d1bb75 49%, #63c7c4 67%, #236d75 96%);
    background-size: 220% 100%; animation: welcome-logo-shimmer 4s ease-in-out infinite;
    filter: drop-shadow(0 0 9px rgba(41, 180, 181, .42)) drop-shadow(0 0 22px rgba(41, 155, 159, .24));
  }
  .welcome-logo-glow {
    inset: -2px; z-index: -1; background: linear-gradient(112deg, #66d9d4, #8ee8db 48%, #e3d18d);
    opacity: .72; filter: blur(16px); transform: scale(.99);
    animation: welcome-logo-breathe 2.8s ease-in-out infinite alternate;
  }
}
@keyframes welcome-logo-shimmer { 0%, 100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }
@keyframes welcome-logo-breathe { from { opacity: .32; } to { opacity: .65; } }
.welcome-friends { left: 334px; top: 309px; width: 88px; height: 72px; }
.welcome-friends picture { position: absolute; left: 8.2px; top: 5.2px; }
@media (prefers-color-scheme: dark) {
  .sanmi-welcome { --welcome-paper: #192c27; --welcome-muted: #b6c9bb; }
  /* Dark SVGs come from the 358px Figma mobile scene. Scale their slots up to
     the shared 760px canvas while preserving the exported SVG root geometry. */
  .welcome-layer picture img { transform: scale(2.122905028); transform-origin: 0 0; }
}
@media (max-width: 600px) {
  .welcome-main { gap: 18px; }
  .welcome-loading { font-size: 13px; }
  .welcome-tagline { font-size: 12px; }
}
/* Authoritative Figma keyframes follow. The entrance plays once; the settled
   illustration stays visible until the 4-second welcome timer completes. */

.sanmi-welcome.is-playing [data-welcome-motion="7:381"] {animation: kf_7_381_opacity_0 2.4s linear, kf_7_381_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_381_opacity_0 { 0% { animation-timing-function: ease-in-out; opacity: 0; } 16.667% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_381_translate_0 { 0% { animation-timing-function: ease-in-out; translate: 0px 7px; } 16.667% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:390"] {animation: kf_7_390_opacity_0 2.4s linear, kf_7_390_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_390_opacity_0 { 0% { opacity: 0; } 10.417% { animation-timing-function: ease-in-out; opacity: 0; } 35.417% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_390_translate_0 { 0% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

@property --sanmi-welcome-rotate { syntax: '<angle>'; initial-value: 0rad; inherits: false; }

.sanmi-welcome.is-playing [data-welcome-motion="7:395"] { transform: rotate(var(--sanmi-welcome-rotate, 0.157rad)); animation: kf_7_395_opacity_0 2.4s linear, kf_7_395_rotate_0 2.4s linear, kf_7_395_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_395_opacity_0 { 0% { opacity: 0; } 6.25% { animation-timing-function: ease-in-out; opacity: 0; } 22.917% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_395_rotate_0 { 0% { --sanmi-welcome-rotate: 0.157rad; } 16.667% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: 0.157rad; } 33.333% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: -0.087rad; } 54.167% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: 0.052rad; } 75% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: -0.035rad; } 100% { --sanmi-welcome-rotate: 0rad; } } @keyframes kf_7_395_translate_0 { 0% { translate: 0px 4px; } 6.25% { animation-timing-function: ease-in-out; translate: 0px 4px; } 22.917% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:400"] { transform: rotate(var(--sanmi-welcome-rotate, 0rad)); animation: kf_7_400_rotate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_400_rotate_0 { 0% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: 0rad; } 33.333% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: 0.052rad; } 62.5% { animation-timing-function: ease-in-out; --sanmi-welcome-rotate: -0.035rad; } 100% { --sanmi-welcome-rotate: 0rad; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:410"] {animation: kf_7_410_opacity_0 2.4s linear, kf_7_410_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_410_opacity_0 { 0% { opacity: 0; } 1.667% { animation-timing-function: ease-in-out; opacity: 0; } 20.833% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_410_translate_0 { 0% { translate: 0px 8px; } 1.667% { animation-timing-function: ease-in-out; translate: 0px 8px; } 20.833% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:414"] {animation: kf_7_414_opacity_0 2.4s linear, kf_7_414_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_414_opacity_0 { 0% { opacity: 0; } 1.667% { animation-timing-function: ease-in-out; opacity: 0; } 20.833% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_414_translate_0 { 0% { translate: 0px 8px; } 1.667% { animation-timing-function: ease-in-out; translate: 0px 8px; } 20.833% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:415"] {animation: kf_7_415_opacity_0 2.4s linear, kf_7_415_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_415_opacity_0 { 0% { opacity: 0; } 12.5% { animation-timing-function: ease-in-out; opacity: 0; } 35.417% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_415_translate_0 { 0% { translate: 0px 7px; } 12.5% { animation-timing-function: ease-in-out; translate: 0px 7px; } 35.417% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:422"] {animation: kf_7_422_opacity_0 2.4s linear, kf_7_422_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_422_opacity_0 { 0% { opacity: 0; } 18.75% { animation-timing-function: ease-in-out; opacity: 0; } 39.583% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_422_translate_0 { 0% { translate: 0px 3px; } 18.75% { animation-timing-function: ease-in-out; translate: 0px 3px; } 39.583% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:423"] {animation: kf_7_423_opacity_0 2.4s linear, kf_7_423_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_423_opacity_0 { 0% { opacity: 0; } 18.75% { animation-timing-function: ease-in-out; opacity: 0; } 39.583% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_7_423_translate_0 { 0% { translate: 0px 3px; } 18.75% { animation-timing-function: ease-in-out; translate: 0px 3px; } 39.583% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="4:178"] {animation: kf_4_178_opacity_0 2.4s linear, kf_4_178_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_4_178_opacity_0 { 0% { opacity: 0; } 16.667% { animation-timing-function: ease-in-out; opacity: 0; } 37.5% { opacity: 1; } 100% { opacity: 1; } } @keyframes kf_4_178_translate_0 { 0% { translate: 0px 7px; } 16.667% { animation-timing-function: ease-in-out; translate: 0px 7px; } 37.5% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:427"] {animation: kf_7_427_opacity_0 2.4s linear, kf_7_427_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_427_opacity_0 { 0% { opacity: 0.45; } 37.5% { animation-timing-function: ease-in-out; opacity: 0.45; } 45% { animation-timing-function: ease-in-out; opacity: 1; } 52.5% { opacity: 0.45; } 100% { opacity: 0.45; } } @keyframes kf_7_427_translate_0 { 0% { translate: 0px 0px; } 37.5% { animation-timing-function: ease-in-out; translate: 0px 0px; } 45% { animation-timing-function: ease-in-out; translate: 0px -3px; } 52.5% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:428"] {animation: kf_7_428_opacity_0 2.4s linear, kf_7_428_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_428_opacity_0 { 0% { opacity: 0.45; } 45% { animation-timing-function: ease-in-out; opacity: 0.45; } 52.5% { animation-timing-function: ease-in-out; opacity: 1; } 60% { opacity: 0.45; } 100% { opacity: 0.45; } } @keyframes kf_7_428_translate_0 { 0% { translate: 0px 0px; } 45% { animation-timing-function: ease-in-out; translate: 0px 0px; } 52.5% { animation-timing-function: ease-in-out; translate: 0px -3px; } 60% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome.is-playing [data-welcome-motion="7:429"] {animation: kf_7_429_opacity_0 2.4s linear, kf_7_429_translate_0 2.4s linear; animation-iteration-count: 1; animation-fill-mode: both; }
@keyframes kf_7_429_opacity_0 { 0% { opacity: 0.45; } 52.5% { animation-timing-function: ease-in-out; opacity: 0.45; } 60% { animation-timing-function: ease-in-out; opacity: 1; } 67.5% { opacity: 0.45; } 100% { opacity: 0.45; } } @keyframes kf_7_429_translate_0 { 0% { translate: 0px 0px; } 52.5% { animation-timing-function: ease-in-out; translate: 0px 0px; } 60% { animation-timing-function: ease-in-out; translate: 0px -3px; } 67.5% { translate: 0px 0px; } 100% { translate: 0px 0px; } }

.sanmi-welcome:not(.is-playing) .welcome-main { visibility: hidden; }
@media (prefers-reduced-motion: reduce) {
  .sanmi-welcome { transition: none; }
  .sanmi-welcome.is-playing [data-welcome-motion] { animation: none !important; translate: none !important; opacity: 1 !important; }
  .sanmi-welcome.is-playing .welcome-sun, .sanmi-welcome.is-playing .welcome-sprout { transform: none !important; }
  .welcome-logo-gradient, .welcome-logo-glow { animation: none !important; }
}
