/* KARETA.KZ r78 — stable application preloader */
.k-app-preloader{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  min-height:100dvh;
  padding:24px;
  background:#fff;
  color:#172033;
  box-sizing:border-box;
  opacity:1;
  visibility:visible;
  transition:opacity .24s ease,visibility .24s ease;
}
.k-app-preloader[hidden],.k-app-preloader.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.k-app-preloader__panel{
  width:min(430px,100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:30px 26px 26px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:28px;
  background:#fff;
  box-shadow:0 22px 70px rgba(15,23,42,.10);
  box-sizing:border-box;
}
.k-app-preloader__logo{
  display:block;
  width:min(280px,78vw);
  max-height:112px;
  object-fit:contain;
  margin:0 auto 18px;
}
.k-app-preloader__slogan{
  margin:0 0 40px;
  color:#ff6b00;
  font-size:clamp(17px,4.6vw,22px);
  line-height:1.22;
  font-weight:850;
  letter-spacing:-.025em;
}
.k-app-preloader__copy{
  width:100%;
  display:grid;
  gap:13px;
}
.k-app-preloader__meta{
  min-height:22px;
  margin:0;
  color:#667085;
  font-size:13px;
  line-height:1.45;
  font-weight:700;
}
.k-app-preloader__progress{
  width:100%;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:#eef1f5;
}
.k-app-preloader__bar{
  display:block;
  width:4%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#ff6b00,#ff9c55);
  transition:width .22s ease;
}
.k-app-preloader__percent{
  color:#98a2b3;
  font-size:11px;
  font-weight:800;
}
.k-app-preloader__retry{
  display:none;
  min-height:44px;
  padding:0 18px;
  border:0;
  border-radius:14px;
  background:#ff6b00;
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}
.k-app-preloader.is-error .k-app-preloader__retry{display:inline-flex;align-items:center;justify-content:center}
.k-app-preloader.is-error .k-app-preloader__bar{background:#ef4444}
@media(max-width:480px){
  .k-app-preloader{padding:14px}
  .k-app-preloader__panel{padding:25px 18px 22px;border-radius:23px}
  .k-app-preloader__logo{width:min(248px,80vw)}
  .k-app-preloader__slogan{margin-bottom:40px;font-size:18px}
  .k-app-preloader__meta{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .k-app-preloader,.k-app-preloader__bar{transition:none}
}

/* r78q — logo skeleton and final slogan color */
.k-app-preloader__logo-shell{
  position:relative;
  width:min(280px,78vw);
  min-height:112px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:20px;
}
.k-app-preloader__logo-skeleton{
  position:absolute;
  inset:14px 8px;
  border-radius:18px;
  background:linear-gradient(100deg,#eef1f4 20%,#fafbfc 38%,#eef1f4 56%);
  background-size:220% 100%;
  animation:k-app-logo-skeleton 1.15s linear infinite;
  transition:opacity .2s ease,visibility .2s ease;
}
.k-app-preloader__logo-shell.is-loaded .k-app-preloader__logo-skeleton{
  opacity:0;
  visibility:hidden;
}
.k-app-preloader__logo-shell .k-app-preloader__logo{
  position:relative;
  z-index:1;
  width:100%;
  max-height:112px;
  margin:0;
  opacity:0;
  transition:opacity .22s ease;
}
.k-app-preloader__logo-shell.is-loaded .k-app-preloader__logo{opacity:1}
.k-app-preloader__slogan{color:#615e5d !important}
@keyframes k-app-logo-skeleton{to{background-position:-220% 0}}
@media(max-width:480px){
  .k-app-preloader__logo-shell{width:min(248px,80vw);min-height:94px}
  .k-app-preloader__logo-shell .k-app-preloader__logo{max-height:94px}
}
@media(prefers-reduced-motion:reduce){.k-app-preloader__logo-skeleton{animation:none}}
