@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800&family=Outfit:wght@300;400;500;600&display=swap";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{margin:0;padding:0;box-sizing:border-box}:root{--blue-h: 200;--blue-s: 87%;--blue-l: 20%;--blue-light-h: 200;--blue-light-s: 87%;--blue-light-l: 30%;--blue: hsl(var(--blue-h), var(--blue-s), var(--blue-l));--blue-light: hsl(var(--blue-light-h), var(--blue-light-s), var(--blue-light-l));--blue-glow: hsla(var(--blue-h), var(--blue-s), var(--blue-l), .6);--bg-dark: #040d12;--card-bg: rgba(8, 21, 32, .4);--card-border: rgba(255, 255, 255, .08);--card-glow: rgba(7, 71, 100, .2);--text: #ffffff;--muted: rgba(255, 255, 255, .6);--muted-dark: rgba(255, 255, 255, .3)}html,body{height:100%}body{background-color:var(--bg-dark);color:var(--text);font-family:Outfit,sans-serif;overflow-x:hidden}#root{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;margin:0;padding:1rem;width:100%;box-sizing:border-box}.bg-glow{position:fixed;inset:-50%;pointer-events:none;z-index:0;background:radial-gradient(circle at 50% 50%,hsla(var(--blue-h),var(--blue-s),var(--blue-l),.15) 0%,transparent 40%),radial-gradient(circle at 80% 20%,hsla(var(--blue-light-h),var(--blue-light-s),var(--blue-light-l),.1) 0%,transparent 30%),radial-gradient(circle at 20% 80%,hsla(var(--blue-h),50%,40%,.1) 0%,transparent 40%);animation:bg-drift 20s infinite alternate ease-in-out}@keyframes bg-drift{0%{transform:scale(1) translate(0) rotate(0)}50%{transform:scale(1.1) translate(5%,5%) rotate(5deg)}to{transform:scale(1) translate(-5%,-5%) rotate(-5deg)}}.card{position:relative;z-index:1;background:var(--card-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--card-border);border-radius:20px;padding:3rem 1.6rem;width:100%;min-height:65vh;display:flex;flex-direction:column;justify-content:center;margin:0 auto;max-width:440px;box-shadow:0 4px 24px -1px #0003,0 0 40px -10px var(--card-glow),inset 0 1px #ffffff1a;animation:fadeUpCard .8s cubic-bezier(.16,1,.3,1) both}@keyframes fadeUpCard{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.gym-logo{display:block;width:160px;margin:0 auto 2rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4));transition:transform .3s ease}.gym-logo:hover{transform:scale(1.02)}.divider{height:1px;background:linear-gradient(90deg,transparent,var(--card-border),transparent);margin-bottom:2rem}.card-title{font-family:Barlow Condensed,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);text-align:center;margin-bottom:2rem}.field{margin-bottom:1.6rem;position:relative}label{display:flex;align-items:center;font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.8rem;margin-left:.2rem;transition:color .2s ease}.field:focus-within label{color:var(--text)}.optional{font-size:.65rem;color:var(--muted-dark);font-weight:400;letter-spacing:.05em;text-transform:none;margin-left:.4rem;padding:.1rem .4rem;background:#ffffff0d;border-radius:4px}input{display:block;width:100%;max-width:100%;box-sizing:border-box;-webkit-appearance:none;appearance:none;background:#0003;border:1px solid var(--card-border);border-radius:12px;padding:1.25rem 1.1rem;color:var(--text);font-family:Outfit,sans-serif;font-size:1.1rem;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1)}@supports (-webkit-touch-callout: none){input{font-size:16px}}input::placeholder{color:var(--muted-dark)}input:hover{background:#0000004d;border-color:#ffffff26}input:focus{background:#0006;border-color:var(--blue-light);box-shadow:0 0 0 4px hsla(var(--blue-light-h),var(--blue-light-s),var(--blue-light-l),.2);transform:translateY(-1px)}input[aria-invalid=true]{border-color:#ff4b4b}input[aria-invalid=true]:focus{box-shadow:0 0 0 4px #ff4b4b33}.submit-btn{position:relative;width:100%;margin-top:2rem;padding:1.15rem;background:linear-gradient(135deg,var(--blue),var(--blue-light));border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-family:Barlow Condensed,sans-serif;font-size:1.15rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #0000004d;display:flex;align-items:center;justify-content:center;gap:.8rem}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transform:skew(-20deg);transition:none}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px var(--blue-glow);border-color:#ffffff4d}.submit-btn:hover:not(:disabled):before{left:200%;transition:left .7s ease}.submit-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 10px #0000004d}.submit-btn:disabled{background:#ffffff0d;color:var(--muted);border-color:transparent;cursor:not-allowed;box-shadow:none}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .4s cubic-bezier(.16,1,.3,1) both}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success{text-align:center;padding:1rem 0 .5rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.success-icon{margin-bottom:1.5rem;display:flex;justify-content:center;position:relative}.success-icon:after{content:"";position:absolute;inset:-15px;background:radial-gradient(circle,rgba(34,197,94,.15) 0%,transparent 60%);border-radius:50%;z-index:-1;animation:pulseGlow 3s infinite alternate}@keyframes pulseGlow{0%{opacity:.5;transform:scale(.9)}to{opacity:1;transform:scale(1.1)}}.checkmark{width:64px;height:64px;filter:drop-shadow(0 4px 10px rgba(34,197,94,.3))}.checkmark-circle{stroke-dasharray:157;stroke-dashoffset:157;animation:draw-circle .6s cubic-bezier(.16,1,.3,1) forwards}.checkmark-check{stroke-dasharray:36;stroke-dashoffset:36;animation:draw-check .4s cubic-bezier(.16,1,.3,1) forwards .5s}@keyframes draw-circle{to{stroke-dashoffset:0}}@keyframes draw-check{to{stroke-dashoffset:0}}.success h2{font-family:Barlow Condensed,sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:.12em;margin-bottom:.6rem;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}.success p{color:var(--muted);font-size:.9rem;line-height:1.5;margin-bottom:1.5rem}.reset-btn{width:100%;margin-top:1rem;padding:.9rem;background:#ffffff08;border:1px solid var(--card-border);border-radius:12px;color:var(--muted);font-family:Barlow Condensed,sans-serif;font-size:1.05rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.reset-btn:hover{background:#ffffff14;border-color:#ffffff4d;color:#fff;transform:translateY(-1px)}.reset-btn:active{transform:translateY(1px)}.error-msg{color:#ff6b6b;font-size:.85rem;margin-top:1rem;text-align:center;font-weight:500;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@media(min-width:480px){#root{padding:2rem}.card{padding:3rem 2.5rem;border-radius:24px}.gym-logo{width:200px;margin-bottom:2rem}.divider{margin-bottom:2rem}.card-title{font-size:1.2rem;margin-bottom:2rem}.field{margin-bottom:1.4rem}input{padding:.85rem 1.1rem}.submit-btn{margin-top:2rem}.success{padding:1.5rem 0 .5rem}.success-icon{margin-bottom:2rem}.checkmark{width:76px;height:76px}.success h2{font-size:1.8rem;margin-bottom:.8rem}.success p{font-size:.95rem;margin-bottom:2rem}}
