/* Scoped to the login page; shared admin styles remain unchanged. */
body.gym-login{background:#07111B;color:#F4F7FA;padding:48px 24px;min-height:100vh;min-height:100dvh;display:grid;place-items:center}
.gym-login .login-card{width:100%;max-width:1080px;min-height:620px;display:grid;grid-template-columns:1fr 1fr;background:#101B27;border:1px solid #243445;border-radius:12px;overflow:hidden}
.gym-login .login-form-panel{padding:40px clamp(28px,4vw,56px) 28px;display:flex;flex-direction:column;min-width:0}
.gym-login .login-eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:750;letter-spacing:.16em}
.gym-login .login-eyebrow>span{width:7px;height:7px;background:#FF6B2C}
.gym-login .login-form-content{margin:auto 0;padding:48px 0}
.gym-login h1{font-size:clamp(27px,3vw,36px);font-weight:850;letter-spacing:-.055em;line-height:1.12;margin:0 0 14px}
.gym-login .login-subtitle{font-size:14px;line-height:1.6;color:#94A3B8;margin:0 0 32px;max-width:340px}
.gym-login .login-field{margin-bottom:22px}
.gym-login label{display:block;font-size:13px;font-weight:650;margin-bottom:9px}
.gym-login .form-control{width:100%;height:52px;padding:13px 15px;border:1px solid #243445;background:#142130;border-radius:6px;font-size:14px;color:#F4F7FA;box-shadow:none}
.gym-login .form-control::placeholder{color:#94A3B8;opacity:1}
.gym-login .form-control:focus{border-color:#FF6B2C;outline:2px solid #FF6B2C;outline-offset:2px;box-shadow:none}
.gym-login .login-password{position:relative}
.gym-login .login-password:has(.password-toggle:not([hidden])) input{padding-right:88px}
.gym-login .password-toggle{position:absolute;right:5px;top:4px;min-height:44px;padding:0 10px;border:0;background:transparent;color:#94A3B8;font-size:12px;font-weight:650;border-radius:3px}
.gym-login .password-toggle:hover{color:#FF6B2C;background:#0B1520}
.gym-login .login-submit{width:100%;display:flex;align-items:center;justify-content:space-between;margin:6px 0 0;padding:14px 18px;min-height:52px;border:1px solid #FF6B2C;border-radius:5px;background:#FF6B2C;color:#07111B;font-size:14px;font-weight:700;box-shadow:none}
.gym-login .login-submit:hover,.gym-login .login-submit:active{background:#E85C22;border-color:#E85C22;color:#07111B}
.gym-login button:focus-visible{outline:2px solid #FF6B2C;outline-offset:3px}
.gym-login .login-submit>span:last-child{font-size:22px;line-height:1}
.gym-login .login-footer{display:flex;gap:10px;margin:0;color:#94A3B8;font-size:9px;font-weight:600;letter-spacing:.08em}
.gym-login .login-footer>span{color:#243445}
.gym-login .login-alert{padding:12px 14px;margin:0 0 24px;background:#142130;color:#F4F7FA;border:1px solid #243445;border-left:3px solid #FF6B2C;border-radius:4px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.gym-login .login-brand{background:#0B1520;color:#F4F7FA;padding:36px clamp(28px,4vw,48px) 28px;display:flex;flex-direction:column;justify-content:space-between;min-width:0}
.gym-login .brand-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
.gym-login .brand-top>span:last-child{font-size:9px;line-height:1.5;letter-spacing:.14em;color:#94A3B8}
.gym-login .login-brand-logo{display:block;width:200px;max-width:55%;height:100px;object-fit:cover;flex-shrink:0;mix-blend-mode:screen}
.gym-login .brand-wordmark{padding:44px 0;display:flex;flex-direction:column;font-size:clamp(62px,8.5vw,112px);font-weight:900;letter-spacing:-.065em;line-height:.91}
.gym-login .brand-gym{color:#FF6B2C}
.gym-login .brand-bottom{border-top:1px solid #243445;padding-top:20px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;line-height:1.8;color:#94A3B8;letter-spacing:.14em;font-weight:600}
.gym-login .brand-bars{display:flex;gap:4px;padding-right:3px}
.gym-login .brand-bars i{display:block;width:32px;height:3px;background:#FF6B2C}
@media(max-width:767.98px){body.gym-login{padding:24px 16px}.gym-login .login-card{max-width:480px;grid-template-columns:1fr;min-height:0;border-radius:12px}.gym-login .login-brand{grid-row:1;padding:24px 28px;gap:20px}.gym-login .brand-top{display:flex}.gym-login .brand-top>span:last-child,.gym-login .brand-bottom{display:none}.gym-login .login-brand-logo{width:140px;max-width:100%;height:70px}.gym-login .brand-wordmark{padding:0;display:block;font-size:36px;letter-spacing:-.055em;line-height:1}.gym-login .brand-wordmark>span{margin-right:7px}.gym-login .brand-wordmark:after{content:'WELLNESS & SPORT';display:block;margin-top:12px;color:#94A3B8;font-size:9px;font-weight:600;letter-spacing:.2em}.gym-login .login-form-panel{padding:28px}.gym-login .login-form-content{padding:32px 0}.gym-login h1{font-size:29px}.gym-login .login-footer{font-size:8px}.gym-login .login-subtitle{margin-bottom:26px}}
@media(max-width:359.98px){.gym-login .login-form-panel,.gym-login .login-brand{padding:24px 20px}.gym-login .brand-wordmark{font-size:31px}.gym-login h1{font-size:26px}}
