.hero{position:relative;min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;padding:clamp(3rem,6vw,6rem) clamp(1.25rem,4vw,3rem);background:radial-gradient(circle at 25% 20%,#083918,#031407 45%,#010704);overflow:hidden;color:var(--hero-green)}.hero__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 60% 50%,rgba(99,255,139,.15) 0%,transparent 55%),radial-gradient(circle at 30% 30%,rgba(187,255,166,.2) 0%,transparent 45%);filter:blur(60px);opacity:.9;animation:heroDrift 18s ease-in-out infinite alternate}.hero__content{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(.75rem,2vw,1.5rem);text-align:center;z-index:2;width:min(1200px,100%);min-height:min(90vh,760px);padding-bottom:clamp(2rem,6vw,5rem)}.hero__title{--hero-title-size: clamp(3.5rem, 13vw, 14rem);display:flex;align-items:flex-end;justify-content:center;gap:clamp(.15em,1.5vw,.6em);flex-wrap:wrap;line-height:1}.hero__tagline{position:absolute;bottom:clamp(1.5rem,4vw,3.5rem);left:50%;transform:translate(-50%,40px);text-transform:uppercase;letter-spacing:.5em;font-size:clamp(.75rem,1.4vw,1rem);color:#ffffffa6;margin:0;font-family:Space Grotesk,Inter,sans-serif;opacity:0;transition:opacity .45s ease-out,transform .45s ease-out}.hero__tagline.is-visible{opacity:.8;transform:translate(-50%);width:100%}.hero__word{display:flex;align-items:center;justify-content:center;gap:clamp(.2em,1vw,.5em);line-height:1;font-size:var(--hero-title-size)}.hero__word--hyper{font-family:Sora,Space Grotesk,Inter,sans-serif;font-weight:600;letter-spacing:clamp(.05em,.7vw,.2em)}.hero__letter{display:inline-block;opacity:0;transform:translateY(60px) scale(.8);filter:blur(18px)}.hero__letter.is-visible{animation:letterEnter .75s cubic-bezier(.23,1,.32,1) forwards}.hero__word--tap{position:relative;font-family:Playfair Display,Cormorant Garamond,serif;font-style:italic;font-weight:600;color:var(--hero-green-bright);opacity:0;transform:translateY(50px) scale(.8);filter:blur(10px)}.hero__word--tap.is-visible{animation:tapReveal .7s ease-out forwards;animation-delay:.1s}.hero__tapMain,.hero__tapRipple{display:inline-block}.hero__tapMain{text-shadow:0 0 70px rgba(173,255,149,.5),0 10px 35px rgba(0,0,0,.35)}.hero__tapRipple{position:absolute;inset:0;color:transparent;-webkit-text-stroke:clamp(3px,.5vw,6px) rgba(193,255,178,.5);text-shadow:0 0 40px rgba(148,255,140,.55);opacity:0;pointer-events:none}.hero__word--tap.is-pulsing .hero__tapMain{animation:tapPress 2.7s cubic-bezier(.25,.9,.35,1) infinite;animation-delay:1s}.hero__word--tap.is-pulsing .hero__tapRipple{animation:tapRipple 2.7s cubic-bezier(.19,1,.22,1) infinite;animation-delay:1s}@keyframes letterEnter{0%{opacity:0;transform:translateY(80px) scale(.65);filter:blur(20px)}60%{opacity:1;transform:translateY(-10px) scale(1.05);filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes tapReveal{0%{opacity:0;transform:scale(.85);filter:blur(18px)}60%{opacity:1;transform:scale(1.06);filter:blur(0)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes tapPress{0%,35%,to{transform:scale(1)}8%{transform:scale(.9);text-shadow:0 0 90px rgba(0,0,0,.45)}18%{transform:scale(1.08)}}@keyframes tapRipple{0%{opacity:0;transform:scale(.8)}40%{opacity:.4}70%{opacity:0}to{opacity:0;transform:scale(1.9)}}@keyframes heroDrift{0%{transform:scale(1) translateZ(0)}to{transform:scale(1.1) translate3d(-5%,6%,0)}}:root{--hero-green: #afff6c;--hero-green-bright: #d5ff9f;--hero-green-dark: #355128;--hero-green-deep: #0b1f0b;--color-primary: var(--hero-green);--color-primary-dark: var(--hero-green-dark);--color-primary-rgb: 175, 255, 108}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background-color:#000}#root{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#2c3e50;width:100%;height:100%}.price-canvas{display:block;width:100vw;height:100vh;position:fixed;top:0;left:0;margin:0;padding:0}.wallet-controls{position:fixed;top:20px;right:20px;z-index:1000;background-color:#ffffffe6;padding:15px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.wallet-controls button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;color:#fff;cursor:pointer;transition:border-color .25s}.wallet-controls button:hover{border-color:#646cff}.wallet-controls p{margin-bottom:10px;font-size:.9em;color:#333}.app-container{width:100%;height:100%;position:relative}.auth-container{position:fixed;top:20px;right:20px;z-index:1000;background-color:#ffffffe6;padding:15px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.auth-loading{font-size:.9em;color:#666}.auth-authenticated{display:flex;flex-direction:column;gap:10px}.auth-info{display:flex;flex-direction:column;gap:5px}.auth-status{font-size:.9em;color:#333;font-weight:500}.auth-address{font-size:.8em;color:#666;font-family:monospace}.game-button{background-color:#000;height:40px;border-radius:40px;min-width:40px;border:1px solid var(--color-primary-dark);color:var(--color-primary);font-family:inherit;font-size:1em;font-weight:500;cursor:pointer;padding:0 20px;display:flex;align-items:center;justify-content:center;transition:background-color .25s,border-color .25s}.capsule{background-color:#000;height:40px;border-radius:20px;min-width:40px;border:1px solid var(--color-primary);color:var(--color-primary);display:flex;align-items:center;justify-content:center;padding:0 20px;font-family:monospace;font-size:.9em;white-space:nowrap}.auth-state-top-left{position:fixed;top:20px;left:20px;z-index:1000;display:flex;gap:10px;align-items:center}.sign-out-button{width:40px;height:40px;padding:0;border-color:var(--color-primary)}.sign-out-button .icon{width:16px;height:16px;color:inherit}.sign-out-button .icon path{fill:currentColor}.balance-bottom-left{position:fixed;bottom:20px;left:20px;z-index:1000}.bet-size-bottom-right{position:fixed;bottom:20px;right:20px;z-index:1000;display:flex;gap:10px;align-items:center}.bet-size-button{padding:0;width:40px;height:40px;border-color:var(--color-primary)}.bet-size-capsule{min-width:40px}.game-button .icon{width:16px;height:16px;color:inherit}.game-button .icon path{fill:currentColor}
