/*
  Boot splash siblings of #root. Landing lives in #root (empty in git; build prerender).
  Hide #root while session/auth/hold splash is showing.
*/
[data-platform-boot='session'],
[data-platform-boot='auth'],
[data-platform-boot='hold'],
[data-platform-boot='forgot-password'],
[data-platform-boot='reset-password'] {
  display: none;
}
html.platform-boot-session [data-platform-boot='session'] {
  display: flex;
}
html.platform-boot-auth [data-platform-boot='auth'] {
  display: flex;
}
html.platform-boot-hold [data-platform-boot='hold'] {
  display: flex;
}
html.platform-boot-forgot [data-platform-boot='forgot-password'] {
  display: flex;
}
html.platform-boot-reset [data-platform-boot='reset-password'] {
  display: flex;
}
html.platform-boot-session:not(.platform-boot-ready) #root,
html.platform-boot-auth:not(.platform-boot-ready) #root,
html.platform-boot-hold:not(.platform-boot-ready) #root,
html.platform-boot-forgot:not(.platform-boot-ready) #root,
html.platform-boot-reset:not(.platform-boot-ready) #root {
  display: none;
}
html.platform-boot-ready [data-platform-boot] {
  display: none !important;
}
[data-boot-lng='pl'] {
  display: none;
}
html[lang='pl'] [data-boot-lng='en'] {
  display: none;
}
html[lang='pl'] [data-boot-lng='pl'] {
  display: inline;
}
html[lang='pl'] p[data-boot-lng='pl'],
html[lang='pl'] span[data-boot-lng='pl'].platform-boot-line {
  display: block;
}

.platform-boot-herb {
  display: block;
  width: 1.375rem;
  height: 1.375rem;
  flex-shrink: 0;
  background-color: #163526;
  -webkit-mask-image: url('/brand/culinio-herb-mark.png');
  mask-image: url('/brand/culinio-herb-mark.png');
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}
.platform-boot-field {
  margin-top: 0.5rem;
  height: 3rem;
  border: 1px solid #c2c8c1;
  border-radius: 0.75rem;
  background: #fcf9f3;
}

.platform-boot-auth {
  min-height: 100vh;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  background: #fcf9f3;
  color: #1c1c18;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
}
.platform-boot-auth-card {
  width: 100%;
  max-width: 28rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.platform-boot-auth-title {
  margin: 0;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.875rem;
  font-weight: 700;
  text-align: center;
}
.platform-boot-auth-sub {
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #727973;
  text-align: center;
}
.platform-boot-auth-google {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  border-radius: 0.75rem;
  background: #f0eee8;
  font-weight: 500;
}
.platform-boot-auth-or {
  margin: 0;
  text-align: center;
  font-size: 0.75rem;
  letter-spacing: 0.04em;
  color: #727973;
}
.platform-boot-auth-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  border-radius: 999px;
  background: #163526;
  font-weight: 600;
  color: #fff;
}
.platform-boot-session {
  min-height: 100vh;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  background: #fcf9f3;
  color: #1c1c18;
  font-family: 'Playfair Display', Georgia, serif;
}
.platform-boot-brand-loader {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
}
.platform-boot-brand-name {
  margin: 0;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-size: 1.625rem;
  font-weight: 800;
  letter-spacing: -0.05em;
  color: #1c1c18;
  opacity: 1;
  transform: scale(1);
  transform-origin: left center;
}
html.platform-boot-herb-animate .platform-boot-brand-name {
  opacity: 0;
  transform: scale(0.94);
  animation: platform-boot-brand-name-in 0.85s cubic-bezier(0.22, 1, 0.36, 1) 0.48s forwards;
}
@keyframes platform-boot-brand-name-in {
  from {
    opacity: 0;
    transform: scale(0.94);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.platform-boot-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
  font-size: 1.625rem;
  font-weight: 800;
  letter-spacing: -0.05em;
}
.platform-boot-status {
  margin: 0;
  font-family: 'Be Vietnam Pro', system-ui, sans-serif;
  font-size: 0.875rem;
  color: #727973;
}
.culinio-herb-sprig-loader {
  position: relative;
  display: block;
  width: 2rem;
  height: auto;
  overflow: visible;
  color: #163526;
}
.culinio-herb-sprig-leaf {
  position: absolute;
  inset: 0;
  background-color: currentcolor;
  opacity: 1;
}
html.platform-boot-herb-animate .culinio-herb-sprig-leaf {
  opacity: 0;
}
html.platform-boot-herb-animate .culinio-herb-sprig-leaf--right {
  animation: platform-boot-herb-right 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}
html.platform-boot-herb-animate .culinio-herb-sprig-leaf--left {
  animation: platform-boot-herb-left 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}
html.platform-boot-herb-animate .culinio-herb-sprig-leaf--top {
  animation: platform-boot-herb-top 2.2s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}
@keyframes platform-boot-herb-right {
  0% {
    opacity: 0;
  }
  6% {
    opacity: 0.35;
  }
  14% {
    opacity: 1;
  }
  93% {
    opacity: 1;
  }
  98% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes platform-boot-herb-left {
  0%,
  10% {
    opacity: 0;
  }
  16% {
    opacity: 0.35;
  }
  24% {
    opacity: 1;
  }
  93% {
    opacity: 1;
  }
  98% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes platform-boot-herb-top {
  0%,
  20% {
    opacity: 0;
  }
  26% {
    opacity: 0.35;
  }
  34% {
    opacity: 1;
  }
  93% {
    opacity: 1;
  }
  98% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .culinio-herb-sprig-leaf {
    animation: none;
    opacity: 1;
  }
  .platform-boot-brand-name {
    animation: none;
    opacity: 1;
    transform: none;
  }
}
