/* Highgarden loading screen (deployment-only). Night mark + one snark line. */
#loading.hg-loading{
  --ink:#071214;
  --parchment:#f0eee2;
  --wheat:#d6b479;
  --gold:#efcf91;
  --mint:#b4e7bd;
  --muted:#8aa198;
  --grow:0;
  position:fixed;inset:0;z-index:10;display:grid;place-items:center;overflow:auto;
  padding:28px 24px 40px;font:16px/1.45 "Iowan Old Style",Georgia,"Times New Roman",serif;color:var(--parchment);
  background:#071214;
}
#loading.hg-loading .hg-sky{
  position:fixed;inset:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 42%,#1a3a38 0%,transparent 42%),
    radial-gradient(circle at 72% 18%,#efcf9118 0,transparent 28vmin),
    linear-gradient(#0b1c1f,#071214 55%,#04090a);
}
#loading.hg-loading .hg-card{
  position:relative;width:min(640px,100%);text-align:center;
}
#loading.hg-loading .hg-mark-wrap{
  position:relative;width:min(720px,94vw,52vh);margin:0 auto -18px;
  --grow:inherit;
}
#loading.hg-loading .hg-mark{
  display:block;width:100%;height:auto;
  mask-image:radial-gradient(ellipse at 50% 48%,#000 38%,transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 48%,#000 38%,transparent 72%);
  filter:brightness(calc(.7 + .45*var(--grow))) saturate(calc(.9 + .2*var(--grow)));
  transform:scale(calc(.96 + .04*var(--grow)));
  transition:filter .6s ease,transform .8s ease;
}
#loading.hg-loading .hg-bloom{
  position:absolute;inset:18% 20% 28%;pointer-events:none;border-radius:50%;
  background:radial-gradient(circle,#b4e7bd55 0%,#efcf9120 38%,transparent 70%);
  opacity:calc(.15 + .7*var(--grow));
  mix-blend-mode:screen;
  transition:opacity .6s ease;
}
#loading.hg-loading .hg-word{
  margin:0 0 10px;
  font:400 clamp(28px,4.6vw,44px)/1 "Iowan Old Style",Georgia,serif;
  letter-spacing:.02em;
  text-shadow:0 8px 40px #000c;
}
#loading.hg-loading .hg-snark{
  margin:0 auto;min-height:2.6em;max-width:26em;
  font:italic clamp(17px,2.4vw,22px)/1.35 Georgia,serif;
  color:#e7ddd0;
  text-wrap:balance;
  opacity:1;
  transition:opacity .45s ease;
}
#loading.hg-loading .hg-chase{
  position:relative;width:44px;height:44px;margin:18px auto 0;
}
#loading.hg-loading .hg-chase i{
  position:absolute;left:50%;top:0;width:7px;height:7px;margin-left:-3.5px;
  border-radius:50%;background:var(--gold);
  box-shadow:0 0 10px #efcf9188;
  transform-origin:50% 22px;
  animation:hg-chase 1.1s linear infinite;
  opacity:.08;
}
#loading.hg-loading .hg-chase i:nth-child(1){transform:rotate(0deg);animation-delay:0s}
#loading.hg-loading .hg-chase i:nth-child(2){transform:rotate(30deg);animation-delay:.092s}
#loading.hg-loading .hg-chase i:nth-child(3){transform:rotate(60deg);animation-delay:.183s}
#loading.hg-loading .hg-chase i:nth-child(4){transform:rotate(90deg);animation-delay:.275s}
#loading.hg-loading .hg-chase i:nth-child(5){transform:rotate(120deg);animation-delay:.367s}
#loading.hg-loading .hg-chase i:nth-child(6){transform:rotate(150deg);animation-delay:.458s}
#loading.hg-loading .hg-chase i:nth-child(7){transform:rotate(180deg);animation-delay:.55s}
#loading.hg-loading .hg-chase i:nth-child(8){transform:rotate(210deg);animation-delay:.642s}
#loading.hg-loading .hg-chase i:nth-child(9){transform:rotate(240deg);animation-delay:.733s}
#loading.hg-loading .hg-chase i:nth-child(10){transform:rotate(270deg);animation-delay:.825s}
#loading.hg-loading .hg-chase i:nth-child(11){transform:rotate(300deg);animation-delay:.917s}
#loading.hg-loading .hg-chase i:nth-child(12){transform:rotate(330deg);animation-delay:1.008s}
@keyframes hg-chase{
  0%{opacity:1;background:var(--mint);box-shadow:0 0 12px #b4e7bd}
  22%{opacity:.9;background:var(--gold);box-shadow:0 0 10px #efcf9188}
  100%{opacity:.08;background:var(--gold);box-shadow:none}
}
#loading.hg-loading .hg-progress{
  height:2px;margin:16px auto 0;max-width:220px;background:#ffffff14;overflow:hidden;
}
#loading.hg-loading .hg-bar{
  height:100%;width:100%;background:linear-gradient(90deg,var(--mint),var(--gold));
  transform-origin:left;transform:scaleX(0);transition:transform .35s ease-out;
}
#loading.hg-loading .hg-bytes{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
#loading.hg-loading .hg-foot{
  margin-top:16px;font:italic 13px/1.4 Georgia,serif;letter-spacing:0;color:#7d9188;
}
#loading.hg-loading .hg-status{
  position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
}
#loading.hg-loading.hg-plain{font:30px Georgia,serif;text-align:center;padding:40px}
#loading.hg-loading.hg-plain .hg-sky{display:none}
#loading.hg-loading.hg-reduced .hg-mark,
#loading.hg-loading.hg-reduced .hg-bloom,
#loading.hg-loading.hg-reduced .hg-snark{transition:none!important}
#loading.hg-loading.hg-reduced .hg-chase i{animation:none;opacity:.45}
#loading.hg-loading.hg-reduced .hg-chase i:nth-child(1),
#loading.hg-loading.hg-reduced .hg-chase i:nth-child(4),
#loading.hg-loading.hg-reduced .hg-chase i:nth-child(7),
#loading.hg-loading.hg-reduced .hg-chase i:nth-child(10){opacity:.9}
@media(max-width:700px){
  #loading.hg-loading{padding:12px 16px 28px;align-items:center}
  #loading.hg-loading .hg-mark-wrap{width:min(420px,100%)}
  #loading.hg-loading .hg-word{font-size:28px}
  #loading.hg-loading .hg-snark{font-size:16px;max-width:20em}
}
