@tailwind base;@tailwind components;@tailwind utilities;html,body,#root{height:100%;width:100%;margin:0;padding:0;overflow:hidden;background-color:#0f0f13;color:#fff;font-family:Inter,sans-serif;overscroll-behavior:none}canvas{background-color:#ffffff0d;display:block}@layer utilities{.animate-shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}.animate-fade-in{animation:fade-in .5s ease-out forwards}}@keyframes shake{10%,90%{transform:translate3d(-2px,0,0)}20%,80%{transform:translate3d(4px,0,0)}30%,50%,70%{transform:translate3d(-10px,0,0)}40%,60%{transform:translate3d(10px,0,0)}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes level-zoom{0%{opacity:0;transform:scale(.5)}15%{opacity:1;transform:scale(1)}65%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(10)}}@layer utilities{.animate-level-zoom{animation:level-zoom 2.5s ease-in-out forwards}.animate-sequence{animation:sequence 1.25s ease-in-out both}}@keyframes sequence{0%{opacity:0;transform:scale(.5)}15%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.geometry-splash{align-items:center;background:radial-gradient(circle at 50% 42%,rgba(34,211,238,.11),transparent 32%),radial-gradient(circle at 50% 115%,rgba(168,85,247,.13),transparent 42%),#0f0f13;display:flex;height:100vh;height:100svh;justify-content:center;overflow:hidden;position:relative}.geometry-splash:after{background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;content:"";inset:0;-webkit-mask-image:radial-gradient(circle,black,transparent 78%);mask-image:radial-gradient(circle,black,transparent 78%);pointer-events:none;position:absolute}.geometry-logo-button{align-items:center;animation:geometry-logo-drop 1.05s cubic-bezier(.2,.8,.28,1) both;background:transparent;border:0;color:#fff;cursor:pointer;display:flex;flex-direction:column;padding:28px;position:relative;width:min(88vw,620px);z-index:2}.geometry-logo-mark{animation:geometry-logo-idle 8s ease-in-out 1.1s infinite;filter:drop-shadow(0 0 24px rgba(34,211,238,.32));height:clamp(150px,26vmin,230px);margin-bottom:22px;position:relative;transition:transform .16s ease;width:clamp(150px,26vmin,230px)}.geometry-logo-symbol{fill:#0f0f13b8;stroke-linejoin:round;vector-effect:non-scaling-stroke}.geometry-logo-symbol--triangle{stroke:#22d3ee;stroke-width:4px}.geometry-logo-symbol--circle{stroke:#a855f7;stroke-width:3px}.geometry-logo-symbol--square{stroke:#facc15;stroke-width:3px}.geometry-logo-title{align-items:baseline;display:flex;font-size:clamp(2.15rem,8.2vw,5rem);font-weight:950;gap:.28em;letter-spacing:-.065em;line-height:.9;white-space:nowrap;text-shadow:0 0 28px rgba(34,211,238,.26)}.geometry-logo-wordplay{display:grid;gap:.24em;grid-template-columns:1.9em 1.9em}.geometry-logo-word{color:#67e8f9;display:inline-block;grid-row:1;letter-spacing:-.065em;text-align:center;will-change:filter,opacity,transform}.geometry-logo-word--try{animation:geometry-word-swap-try 5s steps(1,end) 2.2s infinite;grid-column:1}.geometry-logo-word--me{animation:geometry-word-swap-me 5s steps(1,end) 2.2s infinite;grid-column:2}.geometry-logo-prompt{animation:geometry-prompt-pulse 2.4s ease-in-out 1.5s infinite;color:#ffffff80;font-family:monospace;font-size:.72rem;letter-spacing:.32em;margin-left:.32em;margin-top:30px}.geometry-game-options{align-items:end;animation:geometry-options-arrive .7s ease-out 1.1s both;bottom:max(72px,calc(env(safe-area-inset-bottom) + 58px));display:flex;gap:14px;justify-content:center;position:absolute;width:min(90vw,520px);z-index:4}.geometry-game-option{color:#ffffff94;display:grid;flex:1;font-family:monospace;font-size:.65rem;gap:7px;letter-spacing:.14em;max-width:230px}.geometry-game-option select{appearance:none;background:#0f0f13c7 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2367e8f9' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 14px center;border:1px solid rgba(103,232,249,.24);border-radius:8px;color:#fff;cursor:pointer;font:700 .78rem monospace;letter-spacing:.12em;min-height:42px;outline:none;padding:0 38px 0 14px}.geometry-game-option select:hover,.geometry-game-option select:focus-visible{border-color:#67e8f9c7;box-shadow:0 0 18px #22d3ee24}@keyframes geometry-options-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-height:620px)and (min-width:700px){.geometry-game-options{bottom:18px}}.geometry-logo-button:hover .geometry-logo-mark{filter:drop-shadow(0 0 34px rgba(34,211,238,.55));transform:scale(1.035)}.geometry-logo-button:active .geometry-logo-mark{transform:scale(.96)}.geometry-logo-button:focus-visible{border-radius:24px;outline:3px solid rgba(103,232,249,.9);outline-offset:6px}.geometry-coffee-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid rgba(255,255,255,.1);border-radius:50%;bottom:max(18px,env(safe-area-inset-bottom));color:#ffffffc7;display:inline-flex;height:44px;justify-content:center;left:max(18px,env(safe-area-inset-left));position:absolute;transition:background .16s ease,color .16s ease,transform .16s ease;width:44px;z-index:3}.geometry-coffee-button:hover{background:#22d3ee2e;color:#fff;transform:translateY(-2px)}.geometry-coffee-button svg{height:20px;stroke-width:2.2;width:20px}.geometry-rain{inset:0;overflow:hidden;pointer-events:none;position:absolute}.geometry-rain-shape{animation:geometry-shape-fall 8s linear infinite;color:#67e8f92e;fill:currentColor;fill-opacity:.08;height:var(--rain-shape-size);overflow:visible;position:absolute;stroke:currentColor;stroke-linejoin:round;stroke-width:2.5;top:-130px;width:var(--rain-shape-size)}.geometry-rain-shape--size-1{--rain-shape-size: clamp(38px, 5vmin, 52px)}.geometry-rain-shape--size-2{--rain-shape-size: clamp(52px, 6.5vmin, 68px)}.geometry-rain-shape--size-3{--rain-shape-size: clamp(66px, 8vmin, 84px)}.geometry-rain-shape--size-4{--rain-shape-size: clamp(80px, 9.5vmin, 100px)}.geometry-rain-shape:nth-child(1){left:5%;animation-delay:-1s;animation-duration:9s}.geometry-rain-shape:nth-child(2){left:18%;animation-delay:-6s;animation-duration:11s}.geometry-rain-shape:nth-child(3){left:32%;animation-delay:-3s;animation-duration:8s}.geometry-rain-shape:nth-child(4){left:46%;animation-delay:-8s;animation-duration:12s}.geometry-rain-shape:nth-child(5){left:58%;animation-delay:-4s;animation-duration:10s}.geometry-rain-shape:nth-child(6){left:69%;animation-delay:-9s;animation-duration:13s}.geometry-rain-shape:nth-child(7){left:79%;animation-delay:-2s;animation-duration:9s}.geometry-rain-shape:nth-child(8){left:87%;animation-delay:-7s;animation-duration:11s}.geometry-rain-shape:nth-child(9){left:94%;animation-delay:-5s;animation-duration:12s}.geometry-rain-shape:nth-child(10){left:98%;animation-delay:-10s;animation-duration:14s}@keyframes geometry-logo-drop{0%{opacity:0;transform:translateY(-110svh) rotate(-7deg) scale(.9)}62%{opacity:1;transform:translateY(12px) rotate(2deg) scale(1.05)}80%{transform:translateY(-8px) rotate(-1deg) scale(.99)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes geometry-logo-idle{0%,to{transform:translateY(0) rotate(-.8deg)}50%{transform:translateY(-10px) rotate(.8deg)}}@keyframes geometry-prompt-pulse{0%,to{opacity:.35}50%{opacity:.9}}@keyframes geometry-word-swap-try{0%,87%,to{clip-path:none;filter:none;opacity:1;transform:translate(0)}88%{clip-path:inset(12% 0 62%);filter:drop-shadow(-.1em 0 #a855f7);transform:translate(-.09em,-.04em) skew(-14deg)}89%{clip-path:inset(58% 0 8%);filter:drop-shadow(.12em 0 #facc15);opacity:.35;transform:translate(.07em,.05em) skew(12deg)}90%{clip-path:none;filter:drop-shadow(.08em 0 #a855f7);opacity:1;transform:translate(2.14em)}91%{filter:drop-shadow(-.07em 0 #facc15);transform:translate(2.08em,-.04em) skew(-8deg)}92%,96%{clip-path:none;filter:none;opacity:1;transform:translate(2.14em)}97%{clip-path:inset(18% 0 48%);filter:drop-shadow(.1em 0 #a855f7);transform:translate(2.21em,.04em) skew(13deg)}98%{clip-path:inset(52% 0 10%);filter:drop-shadow(-.11em 0 #facc15);opacity:.4;transform:translate(-.06em,-.03em)}99%{clip-path:none;filter:drop-shadow(.05em 0 #a855f7);opacity:1;transform:translate(.04em,.02em)}}@keyframes geometry-word-swap-me{0%,87%,to{clip-path:none;filter:none;opacity:1;transform:translate(0)}88%{clip-path:inset(58% 0 8%);filter:drop-shadow(.1em 0 #a855f7);transform:translate(.09em,.04em) skew(14deg)}89%{clip-path:inset(12% 0 62%);filter:drop-shadow(-.12em 0 #facc15);opacity:.35;transform:translate(-.07em,-.05em) skew(-12deg)}90%{clip-path:none;filter:drop-shadow(-.08em 0 #a855f7);opacity:1;transform:translate(-2.14em)}91%{filter:drop-shadow(.07em 0 #facc15);transform:translate(-2.08em,.04em) skew(8deg)}92%,96%{clip-path:none;filter:none;opacity:1;transform:translate(-2.14em)}97%{clip-path:inset(52% 0 10%);filter:drop-shadow(-.1em 0 #a855f7);transform:translate(-2.21em,-.04em) skew(-13deg)}98%{clip-path:inset(18% 0 48%);filter:drop-shadow(.11em 0 #facc15);opacity:.4;transform:translate(.06em,.03em)}99%{clip-path:none;filter:drop-shadow(-.05em 0 #a855f7);opacity:1;transform:translate(-.04em,-.02em)}}@keyframes geometry-shape-fall{0%{opacity:0;transform:translate3d(0,-20px,0) rotate(0)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate3d(40px,125svh,0) rotate(300deg)}}@media(prefers-reduced-motion:reduce){.geometry-logo-button,.geometry-logo-mark,.geometry-logo-word,.geometry-logo-prompt,.geometry-rain-shape{animation:none}}.heart-reward{align-items:center;animation:heart-reward-pop 1.8s cubic-bezier(.2,.8,.25,1) both;color:#fff;display:flex;flex-direction:column;font-size:clamp(.8rem,2vw,1.1rem);font-weight:900;gap:6px;letter-spacing:.18em;pointer-events:none;position:fixed;right:max(28px,env(safe-area-inset-right));text-shadow:0 0 16px rgba(239,68,68,.9);top:108px;z-index:240}.heart-reward-icon{animation:heart-reward-beat .72s ease-in-out 2;filter:drop-shadow(0 0 16px rgba(239,68,68,.95));height:clamp(68px,12vmin,104px);width:clamp(68px,12vmin,104px)}@keyframes heart-reward-pop{0%{opacity:0;transform:translateY(36px) scale(.35)}20%{opacity:1;transform:translateY(0) scale(1.16)}38%{transform:translateY(0) scale(1)}76%{opacity:1;transform:translateY(-8px) scale(1)}to{opacity:0;transform:translateY(-38px) scale(.82)}}@keyframes heart-reward-beat{0%,to{transform:scale(1)}42%{transform:scale(1.22)}}@media(prefers-reduced-motion:reduce){.heart-reward,.heart-reward-icon{animation-duration:1ms}}.geometry-mute-button{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid rgba(255,255,255,.1);border-radius:50%;bottom:max(18px,env(safe-area-inset-bottom));color:#ffffffc7;cursor:pointer;display:inline-flex;height:44px;justify-content:center;padding:0;position:absolute;right:max(18px,env(safe-area-inset-right));transition:background .16s ease,color .16s ease,transform .16s ease;width:44px;z-index:3}.geometry-mute-button:hover{background:#a855f733;color:#fff;transform:translateY(-2px)}.geometry-mute-button:focus-visible{outline:3px solid rgba(103,232,249,.9);outline-offset:4px}.geometry-mute-button svg{height:20px;stroke-width:2.2;width:20px}
