@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--color-bg:#14100d;--color-bg-tray:#1f1811;--color-accent:#c4471f;--color-accent-light:#e8814a;--color-paper:#ede3d3;--color-grain:#8a7f6e;--font-display:"Fraunces", serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--safe-top:calc(env(safe-area-inset-top,0px) + var(--tg-viewport-safe-area-inset-top,0px) + var(--tg-viewport-content-safe-area-inset-top,0px));--safe-bottom:calc(env(safe-area-inset-bottom,0px) + var(--tg-viewport-safe-area-inset-bottom,0px) + var(--tg-viewport-content-safe-area-inset-bottom,0px));--safe-left:calc(env(safe-area-inset-left,0px) + var(--tg-viewport-safe-area-inset-left,0px) + var(--tg-viewport-content-safe-area-inset-left,0px));--safe-right:calc(env(safe-area-inset-right,0px) + var(--tg-viewport-safe-area-inset-right,0px) + var(--tg-viewport-content-safe-area-inset-right,0px))}.screen{min-height:100dvh;padding:calc(24px + var(--safe-top)) calc(20px + var(--safe-right)) calc(24px + var(--safe-bottom)) calc(20px + var(--safe-left));background:var(--color-bg);color:var(--color-paper);font-family:var(--font-body);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex}.stamp{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;font-size:12px}.stamp--header{color:var(--color-grain)}.stamp--overlay{border:1.5px solid var(--color-accent-light);color:var(--color-accent-light);background:#14100d8c;border-radius:2px;padding:6px 14px;display:inline-block;transform:rotate(-6deg)}.tray{aspect-ratio:3/4;background:var(--color-bg-tray);border-radius:14px 18px 12px 20px/18px 12px 22px 14px;justify-content:center;align-items:center;width:min(84vw,320px);display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #e8814a14,0 30px 60px -20px #c4471f59,0 0 80px -10px #c4471f40}.tray__liquid{pointer-events:none;background:linear-gradient(120deg,#c4471f1f,#e8814a0d 40%,#c4471f1a 80%) 0 0/200% 200%;animation:14s ease-in-out infinite liquid-shift;position:absolute;inset:0}@keyframes liquid-shift{0%,to{background-position:0%}50%{background-position:100%}}.tray__loading{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-grain);font-size:12px}.tray__image{object-fit:cover;filter:blur(18px)sepia(.7)saturate(.35)brightness(.75)contrast(.9);width:100%;height:100%;transition:filter 1.8s,transform 1.8s;position:absolute;inset:0;transform:scale(1.06)}.tray__image--revealed{filter:blur()sepia(0)saturate()brightness()contrast();transform:scale(1)}.tray__grain{opacity:.5;mix-blend-mode:overlay;pointer-events:none;background-image:radial-gradient(#ffffff80 .5px,#0000 .5px);background-size:3px 3px;transition:opacity 1.8s;position:absolute;inset:0}.tray__grain--faded{opacity:.08}.tray__timer{font-family:var(--font-display);color:var(--color-paper);text-shadow:0 2px 12px #14100dcc;font-size:22px;position:absolute;top:16px;left:16px}.tray__stamp-wrap{animation:.4s ease-out 1.4s both stamp-in;position:absolute;bottom:16px;right:16px}@keyframes stamp-in{0%{opacity:0;transform:rotate(-6deg)scale(1.4)}to{opacity:1;transform:rotate(-6deg)scale(1)}}.status-message{max-width:320px;color:var(--color-paper);opacity:.85;font-size:15px;line-height:1.5}.status-message--error{color:var(--color-accent-light)}.reveal-button{font-family:var(--font-body);letter-spacing:.02em;color:var(--color-paper);background:var(--color-accent);cursor:pointer;border:none;border-radius:999px;padding:16px 32px;font-size:15px;font-weight:600;transition:background-color .2s,transform .15s}.reveal-button:hover:not(:disabled){background:var(--color-accent-light)}.reveal-button:active:not(:disabled){transform:scale(.97)}.reveal-button:disabled{cursor:default}.reveal-button--watching{background:var(--color-bg-tray);color:var(--color-accent-light);border:1.5px solid var(--color-accent);animation:1.6s ease-in-out infinite timer-pulse}@keyframes timer-pulse{0%,to{box-shadow:0 0 #c4471f66}50%{box-shadow:0 0 0 10px #c4471f00}}.reveal-button--revealed{background:var(--color-paper);color:var(--color-bg)}
