:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.toast-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:8px;min-width:260px;max-width:380px;font-size:.9rem;font-weight:500;box-shadow:0 4px 12px #00000026;pointer-events:all;animation:toast-in .2s ease}@keyframes toast-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.toast-success{background:#e8f5e9;color:#2e7d32;border-left:4px solid #2e7d32}.toast-error{background:#ffebee;color:#c62828;border-left:4px solid #c62828}.toast-info{background:#e3f2fd;color:#1565c0;border-left:4px solid #1565c0}.toast-close{background:none;border:none;cursor:pointer;font-size:1.1rem;padding:0;line-height:1;opacity:.5;flex-shrink:0;color:inherit}.toast-close:hover{opacity:1;border-color:transparent}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;margin:0;text-align:center}.header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;width:100%;box-sizing:border-box}.app-container{min-height:100vh;width:100%;background-image:linear-gradient(#ffffffbf,#ffffffbf),url(/assets/background-gym-CHE2kInL.png);background-size:cover;background-position:center;background-attachment:fixed;display:flex;flex-direction:column;align-items:center}.content-wrapper{width:100%;max-width:1200px;display:flex;flex-direction:column;align-items:center}.site-footer{margin-top:auto;width:100%;padding:1.5rem 1rem;text-align:center;color:#242424;font-size:.8rem}.brand-logo{font-size:2rem;font-weight:900;color:#ff4f9a;text-decoration:none;letter-spacing:-1px;background:none;border:none;padding:0;font-family:inherit;cursor:pointer;outline:none}.nav-link{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;cursor:pointer;outline:none;transition:color .2s}.nav-link:focus,.brand-logo:focus{outline:none}.user-nav{display:flex;align-items:center;gap:1rem}.create-account-button{background-color:transparent;color:#ff1493;border:none;font-weight:600;cursor:pointer;padding:.6rem 1rem;transition:opacity .2s}.create-account-button:hover{opacity:.7}.login-dropdown-container{position:relative}.login-dropdown-menu{position:absolute;top:100%;right:0;width:320px;background-color:#fff;box-shadow:0 10px 25px #0000001a;border-radius:12px;padding:1.5rem;margin-top:.5rem;z-index:1000;text-align:left;border:1px solid #eee}.login-dropdown-menu h3{margin:0 0 1.5rem;color:#333;font-size:1.2rem}.form-group{margin-bottom:1rem}.form-group input{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:6px;box-sizing:border-box}.btn-primary{width:100%;background-color:#ff1493;color:#fff;border:none;padding:.8rem;border-radius:6px;font-weight:600;cursor:pointer}.btn-secondary{background-color:#f5f5f5;color:#333;border:none;padding:.8rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer}.divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0;color:#aaa;font-size:.8rem}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid #eee}.divider span{margin:0 10px}.btn-google{width:100%;background-color:#fff;color:#333;border:1px solid #ddd;padding:.8rem;border-radius:6px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px}.btn-google:hover{background-color:#f9f9f9}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000;animation:overlay-in .2s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.modal-content{background-color:#fff;padding:2.5rem;border-radius:16px;width:100%;max-width:400px;box-shadow:0 20px 40px #0003;animation:modal-in .25s ease}@keyframes modal-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{margin:0;color:#333;font-size:1.3rem}.modal-close{background:none;border:none;font-size:1.5rem;color:#aaa;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:#333;border-color:transparent}.form-group input.input-error{border-color:#d32f2f}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.error-message{color:#d32f2f;font-size:.85rem;margin-top:.5rem}.user-info{display:flex;align-items:center;gap:1rem}.user-name{font-weight:500;color:#333}.login-button{background-color:#ff4f9a;color:#fff;border:none;padding:.6rem 1.5rem;border-radius:25px;font-weight:600;cursor:pointer;transition:opacity .2s}.login-button.logout{background-color:transparent;color:#ff4f9a;border:2px solid #ff4f9a}.login-button:hover{opacity:.8;border-color:transparent}.login-button.logout:hover{background-color:#ff4f9a;color:#fff;opacity:1}.hero{padding:4rem 2rem;max-width:800px;margin:0 auto}.hero h1{font-size:3.5rem;margin-bottom:1.5rem}.hero p{font-size:1.3rem;color:#393939;line-height:1.6}.card{padding:2em;width:80%}.route-transition{animation:route-in .25s ease}@keyframes route-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.hero h1{font-size:2.5rem}}
