/* HemenOkey V28 mobile accessibility / safe tap zones.
   Overlay only: V27 combined stylesheet and data/router files untouched. */
.hky-v28-site :is(button,a,input,textarea,select):focus-visible{
 outline:2px solid #087a63;outline-offset:2px;
}
.hky-v28-site .v26-editorial-item:focus-visible,.hky-v28-site .v25-service-card:focus-visible{outline:3px solid #0a775c;outline-offset:2px}
.hky-v28-site .v21-game:focus-visible,.hky-v28-site .v22-room-tile:focus-visible{outline:3px solid #0a775c;outline-offset:2px}
.hky-v28-site .v24-social-option:disabled{cursor:not-allowed}
.hky-v28-site .hky-auth-tabs a:focus-visible{border-radius:7px;outline-offset:-2px}
@media(max-width:760px){
 .hky-v28-site .nav-links{
   width:100%!important;
   display:grid!important;
   grid-template-columns:repeat(5,minmax(0,1fr));
   align-items:stretch!important;justify-content:stretch!important;
   gap:0!important;column-gap:0!important;
   border-top:1px solid #e7e9e0;
 }
 .hky-v28-site .nav-links>a,.hky-v28-site .nav-links>.v25-nav-group{
   display:flex!important;align-items:stretch!important;justify-content:stretch!important;
   width:100%!important;min-width:0!important;min-height:44px!important;
   height:44px!important;margin:0!important;
 }
 .hky-v28-site .nav-links>a,.hky-v28-site .nav-links>.v25-nav-group>a{
   align-items:center!important;justify-content:center!important;
   min-height:44px!important;height:44px!important;
   padding:5px 1px!important;line-height:1.15!important;
   font-size:10.5px!important;white-space:nowrap!important;
   width:100%!important;
 }
 .hky-v28-site .nav-login,.hky-v28-site .nav-cta{
   min-height:41px!important;display:inline-flex!important;
   align-items:center;justify-content:center;
 }
 .hky-v28-site .signin-form .button-primary{
   min-height:40px!important;height:40px!important;
   margin-top:6px!important;
 }
 .hky-v28-site .signin-form .v22-password-field>.v22-reveal{
   height:36px!important;min-height:36px!important;
   width:40px!important;right:0!important;
 }
 .hky-v28-site .signin-form input,.hky-v28-site .signin-form .v22-password-field input{
   min-height:35px!important;height:35px!important;font-size:12px!important;
 }
 .hky-v28-site .hky-auth-tabs a{min-height:35px!important}
 .hky-v28-site .hky-register-form .v23-field input,.hky-v28-site .hky-password-row input{
   font-size:12px!important;
 }
 .hky-v28-site .hky-register-submit{height:36px!important;min-height:36px!important}
 .hky-v28-site .v25-footer nav a{min-height:32px;display:flex;align-items:center}
 .hky-v28-site .v21-card-head>a{min-height:34px}
 .hky-v28-site .v25-nav-group .v25-nav-flyout{right:0;left:auto;max-width:min(170px,calc(100vw - 30px))}
 .hky-v28-site .v25-nav-flyout>a{min-height:38px!important}
}
@media(max-width:355px){
 .hky-v28-site .nav-links>a,.hky-v28-site .nav-links>.v25-nav-group>a{font-size:10px!important}
 .hky-v28-site .v25-footer-grid{gap:15px}
}
@media(prefers-reduced-motion:reduce){
 .hky-v28-site *, .hky-v28-site *::before,.hky-v28-site *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* QA correction: preserve compact 334px auth card and full visible provider row.
   Enlarged navigation remains 44px; inner form controls retain proven V27 height. */
@media(max-width:760px){
 .hky-v28-site .signin-form .button-primary{min-height:34px!important;height:34px!important;margin-top:7px!important}
 .hky-v28-site .signin-form input,.hky-v28-site .signin-form .v22-password-field input{min-height:32px!important;height:32px!important}
 .hky-v28-site .hky-auth-tabs a{min-height:30px!important}
 .hky-v28-site .hky-register-submit{height:30px!important;min-height:30px!important}
}
