/* Stage 25: adaptive first-visit loading UI, intentionally external to the
   deferred Vite bundle. Scoped to #t-page-loader to avoid cascade conflicts. */
#t-page-loader { display: none; }
html.t-page-loading,
html.t-page-loading body { overflow: hidden !important; }
html.t-page-loading body > :not(#t-page-loader) { visibility: hidden !important; }
html.t-page-loading #t-page-loader,
html.t-page-revealing #t-page-loader {
  display: flex;
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  padding: max(24px, env(safe-area-inset-top, 0px)) max(20px, env(safe-area-inset-right, 0px)) max(24px, env(safe-area-inset-bottom, 0px)) max(20px, env(safe-area-inset-left, 0px));
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  direction: rtl;
  text-align: center;
  overflow: hidden;
  color: #27231b;
  background:
    radial-gradient(ellipse at 70% 22%, rgba(220,168,42,.10), transparent 53%),
    radial-gradient(ellipse at 18% 80%, rgba(111,135,87,.07), transparent 55%),
    #faf8f3;
  font-family: "Talaieh UI", "Talaieh Persian", system-ui, sans-serif;
  opacity: 1;
  transition: opacity .32s ease;
  isolation: isolate;
}
html.t-page-revealing #t-page-loader { opacity: 0; pointer-events: none; }
#t-page-loader .t-page-loader__inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: min(100%, 330px);
  padding: 24px 16px;
}
#t-page-loader .t-page-loader__emblem {
  position: relative;
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  border-radius: 32px;
  background: rgba(255,255,255,.8);
  box-shadow: 0 12px 38px rgba(68,50,16,.07), inset 0 0 0 1px rgba(154,119,44,.13);
}
#t-page-loader .t-page-loader__emblem::before {
  content: "";
  position: absolute;
  inset: -11px;
  border: 2px solid rgba(170,119,28,.15);
  border-top-color: #b58320;
  border-right-color: #e1b851;
  border-radius: 40px;
  animation: t-page-loader-rotate 1.8s linear infinite;
}
#t-page-loader .t-page-loader__mark { display: block; width: 72px; height: 72px; object-fit: contain; }
#t-page-loader .t-page-loader__title {
  margin-block: 29px 2px;
  margin-inline: 0;
  font-size: clamp(1.25rem, 4vw, 1.45rem);
  line-height: 1.6;
  letter-spacing: -.025em;
  font-weight: 800;
}
#t-page-loader .t-page-loader__subtitle {
  margin: 0;
  min-height: 26px;
  color: #777064;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.8;
}
#t-page-loader .t-page-loader__track {
  position: relative;
  margin-block-start: 26px;
  width: 164px;
  height: 4px;
  border-radius: 99px;
  background: #eee5d6;
  overflow: hidden;
}
#t-page-loader .t-page-loader__track::after {
  content: "";
  position: absolute;
  inset-block: 0;
  inline-size: 38%;
  inset-inline-start: -38%;
  border-radius: inherit;
  background: linear-gradient(90deg,#d8a22c,#f0d589);
  animation: t-page-loader-sweep 1.35s ease-in-out infinite;
}
#t-page-loader .t-page-loader__caption {
  margin-block-start: 13px;
  color: #968a75;
  font-size: .75rem;
  letter-spacing: 0;
}
@keyframes t-page-loader-rotate { to { transform: rotate(360deg); } }
@keyframes t-page-loader-sweep {
  0% { inset-inline-start: -38%; }
  100% { inset-inline-start: 105%; }
}
@media (prefers-reduced-motion: reduce) {
  #t-page-loader *, #t-page-loader *::before, #t-page-loader *::after { animation: none !important; transition: none !important; }
  html.t-page-revealing #t-page-loader { opacity: 0; }
}

/* Lightweight delayed navigation indicator; no blocking backdrop for return visits. */
.t-page-navigation-progress { position:fixed; z-index:2147482999; top:0; left:0; right:0; height:3px; pointer-events:none; background:linear-gradient(90deg,#be871a,#f5d06c,#be871a); background-size:200% 100%; animation:t-navigation-progress 1.2s linear infinite; }
@keyframes t-navigation-progress { from {background-position:100% 0} to {background-position:-100% 0} }
@media(prefers-reduced-motion:reduce) { .t-page-navigation-progress { animation:none; } }
