/* Optional account, pricing and coach controls; free game styles stay separate. */
:is(#account, #wallet, #coach-account) button,
:is(#generate, #check-request, #clear-form) {
  appearance: none;
  font: inherit;
  font-weight: 600;
  color: #f4f5f8;
  background: #202230;
  border: 1px solid #a5e7d8;
  border-radius: .5rem;
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  padding: .65rem 1rem;
  margin: .3rem 0;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.4;
  cursor: pointer;
}
:is(#account, #wallet, #coach-account) button:is(.primary, .button),
:is(#sign-in, #generate) {
  color: #171927;
  background: #a5e7d8;
}
:is(#account, #wallet, #coach-account) button:hover:not(:disabled),
:is(#generate, #check-request, #clear-form):hover:not(:disabled) {
  color: #171927;
  background: #b7eee2;
}
:is(#account, #wallet, #coach-account) button:disabled,
:is(#generate, #check-request, #clear-form):disabled {
  color: #c2c5d4;
  background: #303344;
  border-color: #73798c;
  /* Wallet sets inline opacity; keep disabled labels readable without changing JS. */
  opacity: 1 !important;
  cursor: not-allowed;
}
:is(#account, #wallet, #coach-account) button:focus-visible,
:is(#generate, #check-request, #clear-form):focus-visible {
  outline: 3px solid #f4f5f8;
  outline-offset: 4px;
}
