:root{--ink: #fff;--ink-shadow: rgba(40, 24, 60, .55);--ink-glow: rgba(255, 200, 220, .35)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;width:100%;background:#1d1029;overflow:hidden;font-family:VT323,Courier New,monospace;color:var(--ink);-webkit-font-smoothing:none;-moz-osx-font-smoothing:none;font-smooth:never;user-select:none;-webkit-user-select:none}#app{position:fixed;inset:0;width:100%;height:100%}#scene{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:none;image-rendering:pixelated;image-rendering:crisp-edges}.ui{position:absolute;inset:0;pointer-events:none;display:flex;justify-content:center;align-items:flex-start;padding-top:clamp(8px,2vh,28px);z-index:10;opacity:0;transition:opacity .8s ease}.ui.is-ready{opacity:1}.countdown{text-align:center;text-shadow:2px 2px 0 var(--ink-shadow),0 0 12px var(--ink-glow);letter-spacing:.5px;background:linear-gradient(180deg,#0000008c,#00000059 70%,#0000);padding:clamp(20px,4vw,48px);border-radius:6px;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.countdown__label{font-family:"Press Start 2P",system-ui,monospace;font-size:clamp(10px,1.6vw,16px);margin-bottom:10px;opacity:.95}.countdown__time{font-family:VT323,monospace;font-size:clamp(22px,4vw,44px);line-height:1.05;font-weight:400;margin-bottom:6px;letter-spacing:1px}.countdown__sign{font-family:"Press Start 2P",system-ui,monospace;font-size:clamp(9px,1.4vw,14px);opacity:.95}.loading{position:absolute;inset:0;background:linear-gradient(180deg,#ffd4a3,#ffb6a3 60%,#5b9bd5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;z-index:100;transition:opacity .8s ease}.loading.is-hidden{opacity:0;pointer-events:none}.loading__heart{--u: 6px;width:var(--u);height:var(--u);background:transparent;position:relative;margin-top:-20px;animation:heart-pulse 1.05s ease-in-out infinite;box-shadow:calc(var(--u) * 1) calc(var(--u) * 0) 0 0 #d97a82,calc(var(--u) * 2) calc(var(--u) * 0) 0 0 #d97a82,calc(var(--u) * 5) calc(var(--u) * 0) 0 0 #d97a82,calc(var(--u) * 6) calc(var(--u) * 0) 0 0 #d97a82,calc(var(--u) * 0) calc(var(--u) * 1) 0 0 #d97a82,calc(var(--u) * 1) calc(var(--u) * 1) 0 0 #ffb0bd,calc(var(--u) * 2) calc(var(--u) * 1) 0 0 #ffb0bd,calc(var(--u) * 3) calc(var(--u) * 1) 0 0 #d97a82,calc(var(--u) * 4) calc(var(--u) * 1) 0 0 #d97a82,calc(var(--u) * 5) calc(var(--u) * 1) 0 0 #ffb0bd,calc(var(--u) * 6) calc(var(--u) * 1) 0 0 #ffb0bd,calc(var(--u) * 7) calc(var(--u) * 1) 0 0 #d97a82,calc(var(--u) * 0) calc(var(--u) * 2) 0 0 #d97a82,calc(var(--u) * 1) calc(var(--u) * 2) 0 0 #ffb0bd,calc(var(--u) * 2) calc(var(--u) * 2) 0 0 #ffd6df,calc(var(--u) * 3) calc(var(--u) * 2) 0 0 #ffb0bd,calc(var(--u) * 4) calc(var(--u) * 2) 0 0 #ffb0bd,calc(var(--u) * 5) calc(var(--u) * 2) 0 0 #ffb0bd,calc(var(--u) * 6) calc(var(--u) * 2) 0 0 #ffb0bd,calc(var(--u) * 7) calc(var(--u) * 2) 0 0 #d97a82,calc(var(--u) * 0) calc(var(--u) * 3) 0 0 #d97a82,calc(var(--u) * 1) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 2) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 3) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 4) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 5) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 6) calc(var(--u) * 3) 0 0 #ffb0bd,calc(var(--u) * 7) calc(var(--u) * 3) 0 0 #d97a82,calc(var(--u) * 1) calc(var(--u) * 4) 0 0 #d97a82,calc(var(--u) * 2) calc(var(--u) * 4) 0 0 #ffb0bd,calc(var(--u) * 3) calc(var(--u) * 4) 0 0 #ffb0bd,calc(var(--u) * 4) calc(var(--u) * 4) 0 0 #ffb0bd,calc(var(--u) * 5) calc(var(--u) * 4) 0 0 #ffb0bd,calc(var(--u) * 6) calc(var(--u) * 4) 0 0 #d97a82,calc(var(--u) * 2) calc(var(--u) * 5) 0 0 #d97a82,calc(var(--u) * 3) calc(var(--u) * 5) 0 0 #ffb0bd,calc(var(--u) * 4) calc(var(--u) * 5) 0 0 #ffb0bd,calc(var(--u) * 5) calc(var(--u) * 5) 0 0 #d97a82,calc(var(--u) * 3) calc(var(--u) * 6) 0 0 #d97a82,calc(var(--u) * 4) calc(var(--u) * 6) 0 0 #d97a82}@keyframes heart-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 6px rgba(255,150,170,.55))}50%{transform:scale(1.18);filter:drop-shadow(0 0 14px rgba(255,150,170,.85))}}.loading__text{font-family:"Press Start 2P",system-ui,monospace;font-size:14px;color:#fff;text-shadow:2px 2px 0 rgba(40,24,60,.5);margin-top:30px;letter-spacing:1px}
