/* First paint: this stylesheet is served before the game JavaScript loads. */
body.is-loading{margin:0;overflow:hidden;background:#101a15}
#loading{
  --loading-progress:0;
  --loading-ink:#eff1e8;
  --loading-muted:#98aa96;
  --loading-accent:#c4dfa3;
  position:fixed;inset:0;z-index:2147483000;
  display:grid;place-items:center;isolation:isolate;
  box-sizing:border-box;min-height:100%;padding:52px 28px 78px;
  color:var(--loading-ink);background:#101a15;
  font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-synthesis:none;-webkit-font-smoothing:antialiased;
  opacity:1;visibility:visible;pointer-events:auto;outline:none;
  transition:opacity 600ms cubic-bezier(.22,.61,.36,1),visibility 0s;
}
#loading::before,#loading::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1}
#loading::before{
  background-image:linear-gradient(#a6bf9410 1px,transparent 1px),linear-gradient(90deg,#a6bf9410 1px,transparent 1px);
  background-size:48px 48px;background-position:center;
  opacity:.35;mask-image:radial-gradient(ellipse at 50% 43%,#000 0%,transparent 66%);
}
#loading::after{background:radial-gradient(ellipse at 50% 39%,#324c3029,transparent 58%),linear-gradient(180deg,#09120c1f,transparent 40%,#09120c52)}
#loading *,#loading *::before,#loading *::after{box-sizing:border-box}
#loading .loading-shell{width:min(100%,370px);display:flex;flex-direction:column;align-items:center;text-align:center;transform:translateY(-7px)}
#loading .loading-brand{display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:28px;color:#d8e3cf;user-select:none}
#loading .loading-brand svg{width:25px;height:25px;flex:none;stroke:#b9d49a;stroke-width:1.7;stroke-linecap:square;stroke-linejoin:miter}
#loading .loading-brand>span{font-size:12px;font-weight:500;line-height:1.4;letter-spacing:3.3px}
#loading .loading-scene{position:relative;width:244px;max-width:70vw;aspect-ratio:1;margin:0 0 23px;isolation:isolate}
#loading .loading-scene::before{content:'';position:absolute;inset:10%;z-index:-1;border-radius:50%;background:#8ca56a;filter:blur(72px);opacity:.07;animation:maze-loading-breathe 5.4s ease-in-out infinite}
#loading .loading-maze{display:block;width:100%;height:100%;overflow:visible}
#loading .loading-maze-walls{stroke:#74876c;stroke-width:1.75;stroke-linecap:square;stroke-linejoin:round;opacity:.56}
#loading .loading-maze-route-bed{stroke:#43523b;stroke-width:1.6;opacity:.16;stroke-linecap:round;stroke-linejoin:round}
#loading [data-maze-route]{
  fill:none;stroke:var(--loading-accent);stroke-linecap:round;stroke-linejoin:round;
  stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--loading-progress,0)*100);
  transition:stroke 350ms ease;
}
#loading .loading-maze-route{stroke-width:2.4}
#loading .loading-maze-route-glow{stroke-width:7;filter:blur(4px);opacity:.22}
#loading .loading-maze-entry{fill:var(--loading-accent)}
#loading .loading-maze-exit{fill:#142017;stroke:#839972;stroke-width:1.1;opacity:.76;transition:fill 250ms ease,stroke 250ms ease}
#loading[data-state=ready] .loading-maze-exit{fill:var(--loading-accent);stroke:var(--loading-accent)}
#loading .loading-copy{width:100%}
#loading-title{margin:0;font-size:31px;font-weight:400;line-height:1.2;letter-spacing:-.8px;text-wrap:balance;color:var(--loading-ink)}
#loading-status{min-height:24px;max-width:100%;margin:13px 0 0;color:var(--loading-muted);font-size:14px;font-weight:400;line-height:1.65;letter-spacing:.1px;text-wrap:balance}
#loading .loading-meter{display:flex;align-items:center;gap:20px;width:100%;margin-top:24px}
#loading-progress{height:2px;flex:1;position:relative;overflow:hidden;background:#aec39725;border-radius:2px}
#loading .loading-progress-fill{display:block;height:100%;width:100%;border-radius:inherit;background:var(--loading-accent);transform:scaleX(var(--loading-progress,0));transform-origin:left;transition:background 350ms ease}
#loading-percent{min-width:38px;text-align:right;color:#c1cfb7;font-size:12px;font-weight:400;line-height:1.6;font-variant-numeric:tabular-nums;letter-spacing:.7px}
#loading-percent::after{content:'%';font-size:10px;margin-left:3px;color:#7d9176}
#loading-retry{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:43px;margin:23px auto 0;padding:11px 15px;border:1px solid #b2ce9270;border-radius:6px;background:#bedc9820;color:#e6eddc;font:500 13px/1.4 'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;cursor:pointer;transition:background 160ms ease,border-color 160ms ease}
#loading-retry:hover{background:#bedc9830;border-color:#c9e4a694}
#loading-retry:focus-visible{outline:2px solid #e2f0c4;outline-offset:5px}
#loading .loading-footer{position:absolute;bottom:max(25px,env(safe-area-inset-bottom));left:20px;right:20px;display:flex;align-items:center;justify-content:center;gap:15px;margin:0;color:#71846c;font-size:9px;font-weight:400;line-height:1.5;letter-spacing:2px;user-select:none}
#loading .loading-footer i{font-style:normal;opacity:.48}
#loading .loading-no-script{position:absolute;left:24px;right:24px;bottom:62px;margin:0;color:#e0c3a7;font-size:13px;line-height:1.5;text-align:center}
#loading[data-state=error]{--loading-accent:#d9b58d}
#loading[data-state=error] #loading-status{color:#ddbaa2}
#loading[data-state=error] .loading-scene::before{animation:none}
#loading.loaded{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 600ms cubic-bezier(.22,.61,.36,1),visibility 0s 600ms}
#loading[hidden],#loading [hidden]{display:none!important}
@keyframes maze-loading-breathe{0%,100%{opacity:.055;transform:scale(.96)}50%{opacity:.105;transform:scale(1.025)}}
@media(min-height:900px){#loading .loading-scene{width:272px;margin-bottom:28px}#loading .loading-brand{margin-bottom:36px}#loading .loading-shell{transform:translateY(-12px)}}
@media(max-width:520px){
  #loading{padding:35px 29px 72px}
  #loading .loading-shell{max-width:316px;transform:none}
  #loading .loading-brand{margin-bottom:25px;gap:10px}
  #loading .loading-brand svg{width:22px;height:22px}
  #loading .loading-brand>span{font-size:11px;letter-spacing:3px}
  #loading .loading-scene{width:230px;margin-bottom:25px}
  #loading-title{font-size:28px;letter-spacing:-.65px}
  #loading-status{font-size:13px;line-height:1.7;margin-top:12px;min-height:23px}
  #loading .loading-meter{margin-top:24px;gap:17px}
  #loading .loading-footer{font-size:8px;letter-spacing:1.6px;gap:12px;bottom:max(22px,env(safe-area-inset-bottom))}
}
@media(max-height:620px) and (min-width:521px){
  #loading{padding:23px 34px 53px}
  #loading .loading-shell{width:min(100%,620px);display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px 42px;transform:none;text-align:left}
  #loading .loading-brand{grid-column:1/-1;justify-content:flex-start;margin:0 0 7px 7px}
  #loading .loading-brand svg{width:22px;height:22px}
  #loading .loading-brand>span{font-size:11px;letter-spacing:2.8px}
  #loading .loading-scene{width:200px;max-width:none;margin:0;grid-column:1;grid-row:2}
  #loading .loading-copy{grid-column:2;grid-row:2}
  #loading-title{font-size:28px;letter-spacing:-.6px}
  #loading-status{font-size:13px;text-wrap:pretty;margin-top:12px;line-height:1.6}
  #loading .loading-meter{margin-top:23px;gap:16px}
  #loading-retry{margin:17px 0 0;min-height:39px;padding:9px 13px}
  #loading .loading-footer{bottom:max(18px,env(safe-area-inset-bottom));font-size:8px;letter-spacing:1.8px}
}
@media(max-height:420px) and (min-width:521px){
  #loading{padding:17px 30px 43px}
  #loading .loading-shell{grid-template-columns:158px minmax(0,1fr);gap:8px 35px;max-width:540px}
  #loading .loading-brand{margin:0 0 4px 4px}
  #loading .loading-brand>span{font-size:10px;letter-spacing:2.5px}
  #loading .loading-scene{width:158px}
  #loading-title{font-size:26px}
  #loading-status{font-size:12px;margin-top:10px;min-height:20px}
  #loading .loading-meter{margin-top:17px}
  #loading .loading-footer{font-size:7px;bottom:max(14px,env(safe-area-inset-bottom))}
}
@media(max-height:690px) and (max-width:520px){
  #loading{padding-top:24px;padding-bottom:58px}
  #loading .loading-brand{margin-bottom:16px}
  #loading .loading-scene{width:186px;margin-bottom:18px}
  #loading-title{font-size:26px}
  #loading .loading-meter{margin-top:19px}
  #loading .loading-footer{bottom:max(16px,env(safe-area-inset-bottom))}
}
@media(prefers-reduced-motion:reduce){
  #loading .loading-scene::before{animation:none;opacity:.07;transform:none}
  #loading [data-maze-route],#loading .loading-progress-fill{transition:none}
  #loading,#loading.loaded{transition:opacity 120ms ease,visibility 0s 120ms}
}
@media(forced-colors:active){
  #loading{background:Canvas;color:CanvasText}
  #loading::before,#loading::after,#loading .loading-scene::before{display:none}
  #loading .loading-maze-walls{stroke:GrayText;opacity:1}
  #loading [data-maze-route],#loading .loading-brand svg{stroke:Highlight}
  #loading .loading-progress-fill{background:Highlight}
  #loading-progress{background:GrayText}
  #loading-title,#loading-status,#loading-percent,#loading .loading-brand,#loading .loading-footer{color:CanvasText}
  #loading-retry{color:ButtonText;background:ButtonFace;border-color:ButtonText}
}
