JSFiddle - React, Tailwind, and code Playground
HTML
<form onSubmit={this.submit.bind(this)} className="payment">
<div className="vertical-centering">
<div className="payment-inner container">
<h2 className="brand">Thanks for signing up, {this.props.user.name}!</h2>
<p>
We‘ve created a calendar for you and can‘t wait to let you use it! The last thing left to do – payment!
</p>
<p>
You‘ve selected the {this.props.user.payment_frequency} payment plan, so:
</p>
<p>
<strong>You will be charged ${this.paymentAmount}</strong>. {this.paymentFrequency}.
</p>
<p ref="error" style={{display: 'none'}}><span ref="errorMsg"/><span className="label error">oops</span></p>
<div className="cardPaymentView">
<div className="cardNumberInput input top">
<input
onChange={this.onChange.bind(this)}
onFocus={this.props.onFocus}
onBlur={this.onBlur.bind(this)}
className="control"
id="card_number"
type="tel"
ref={this._setAutocompleteType}
name="card_number"
value={this.state.cc}
autoCorrect="off"
spellCheck="off"
autoCapitalize="off"
placeholder="Card number"
autoFocus
/>
<div className="svg icon" style={{ width: "30px", height: "30px" }}>
<img src="/images/icon-credit-card.svg" alt=""/>
</div>
</div>
<div className="cardExpiresInput input left bottom">
<input valueLink={this.linkState('exp')} onFocus={this.focusParentDiv} onBlur={this.blurParentDiv} className="control" id="cc-exp" type="month" x-autocompletetype="off" autocompletetype="off" autoCorrect="off" spellCheck="off" autoCapitalize="off" placeholder="YYYY-MM"/>
<div className="svg icon" style={{ width: "30px", height: "30px" }}>
...