html, body { width: 100%; height: 100%; margin: 0; padding: 0; background: transparent; }
#overlay { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; }
.hidden { display: none; }
#stack { display: flex; flex-direction: column; align-items: center; gap: 16px; }
#text { font-size: 64px; font-family: LuckiestGuy, system-ui, sans-serif; color: #ffffff; }
#image { display: none; object-fit: contain; animation-name: pulse; animation-iteration-count: infinite; animation-timing-function: ease-in-out; }
#timer { font-size: 80px; font-weight: 700; font-family: LuckiestGuy, system-ui, sans-serif; color: #ffffff; }
@keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(var(--pulse-scale, 1.1)); } 100% { transform: scale(1); } }
@keyframes beat { 0% { transform: scale(0.8); } 50% { transform: scale(1.2); } 100% { transform: scale(1); } }
.beat { animation: beat 500ms ease-in-out; }