h1 {
  padding: .32rem .32rem 0;
  height: 1.5em;
  color: #1D1D1F;
  font-size: .32rem;
  font-weight: 500;
  line-height: 1.5;
  background-color: #FFF;
}
h2 {
  position: relative;
  color: #1D1D1F;
  font-size: .28rem;
  line-height: .48rem;
  padding: .24rem 0;
  margin: 0 .32rem;
}
h2::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  background: #E6E6E6;
  width: 100%;
  height: 1px;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  margin-top: 0;
}
h2.title-access::before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -.24rem;
  height: .48rem;
  width: .48rem;
  background-image: url(../../images/icon-arrow-right-access.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
textarea {
  padding: .24rem .32rem;
  border: none;
  height: 2.4rem;
  width: -webkit-calc(100% - .64rem);
  width: calc(100% - .64rem);
  color: #A5A5A8;
  font-size: .28rem;
  line-height: .48rem;
  background-color: #F5F5F5;
  border-radius: 6px;
}
textarea:focus {
  outline: none;
}
.wrap {
  padding: .32rem;
  font-size: 0;
}
.wrap.white {
  background-color: #FFF;
}
.margin-block {
  margin-top: .16rem;
}
.icon-access {
  position: relative;
}
.icon-access::before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -.24rem;
  height: .48rem;
  width: .48rem;
  background-image: url('../images/icon-arrow-right-access.svg');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
/* .bottom-modal {} */
.bottom-modal .content {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  max-height: 100%;
  overflow-x: hidden;
}
/* .modal {} */
.modal__body {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 76%;
  width: 76vw;
  border-radius: 6px;
  color: #4F4F53;
  font-size: .28rem;
  line-height: .4rem;
}
.modal__body--white {
  background-color: #FFF;
}
.modal__content {
  padding: .4rem .48rem;
}
.modal__footer::before {
  content: '';
  display: block;
  background: #E6E6E6;
  width: 100%;
  height: 1px;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  margin-top: 0;
}
.modal__btn {
  font-size: .32rem;
  line-height: .48rem;
  text-align: center;
}
.modal__btn--single {
  color: #FF804D;
  line-height: .96rem;
}
.mask {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.mask.black {
  background-color: rgba(0,0,0,0.7);
}
.tag {
  padding: .08rem .16rem;
  color: #FF804D;
  font-size: .24rem;
  line-height: .32rem;
  background-color: rgba(255, 127, 77, 0.1);
  border-radius: 6px;
}
.tag.gray {
  color: #4F4F53;
  background-color: #F5F5F5;
}
.tag.orange {
  color: #FFF;
  background-color: #FF804D;
}
.long-btn {
  padding: .5em 0;
  width: 100%;
  height: 1.5em;
  color: #FFF;
  font-size: .32rem;
  line-height: 1.5;
  text-align: center;
  background-color: #D1D2D8;
  border-radius: 6px;
  overflow: hidden;
  text-overflow:ellipsis;
  white-space: nowrap;
}
.long-btn.available {
  background-color: #FF804D;
}
.radio-list {
  font-size: 0;
}
.radio {
  display: inline-block;
  margin-right: .24rem;
}
.radio label {
  padding: .12rem .2rem;
  color: #4F4F53;
  font-size: .28rem;
  line-height: .4rem;
  background-color: #F5F5F5;
  border-radius: 6px;
}
.radio input[type=radio] {
  display: none;
}
.radio input[type=radio]:checked + label {
  color: #FFF;
  background-color: #FF804D;
}
.preferential-list li {
  border-top: solid .1px #E6E6E6;
  margin: 0 .32rem;
  padding: .32rem 0;
  height: auto;
  background-color: #fff;
  overflow: hidden;
}
.preferential-list .img-cover {
  position: relative;
  float: left;
  height: 2.16rem;
  width: 2.16rem;
  margin-right: .24rem;
  overflow: hidden;
}
.preferential-list .img-cover::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  background: #E6E6E6;
  width: 100%;
  height: 1px;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  margin-top: 0;
}
.preferential-content {
  float: right;
  height: 100%;
  width: 100%;
  font-size: 0;
}
.preferential-list .img-cover + .preferential-content {
  width: -webkit-calc(100% - 2.4rem);
  width: calc(100% - 2.4rem);
}
.preferential-content h1 {
  margin: .44rem auto .12rem;
  font-size: .28rem;
  font-weight: 500;
  line-height: 1.43;
  color: #1D1D1F;
  height: 2.86em;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.preferential-content .flag-icon {
  float: left;
  max-height: .24rem;
  width: .24rem;
  margin-right: .08rem;
}
.preferential-content .store-name {
  float: left;
  color: #4F4F53;
  font-size: .24rem;
  line-height: .32rem;
}
.preferential-content .price {
  width: 100%;
  height: .4rem;
  padding-bottom: .12rem;
  font-size: 0;
}
.preferential-content .real-price {
  display: inline-block;
  color: #FF804D;
  font-size: .28rem;
  font-weight: 500;
  line-height: .4rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
}
.empty-tag,
.preferential-content .preferential {
  float: right;
  padding: 0 .08rem;
  border-radius: 4px;
  border: 1px solid #FF804D;
  line-height: .32rem;
  font-size: .24rem;
  color: #FF804D;
  background-color: #FFF;
}
.preferential-content .date {
  color: #78787D;
  font-size: .2rem;
  line-height: .32rem;
  height: .32rem;
  float: right;
}
.preferential-content .icon-area {
  height: .32rem;
  line-height: .32rem;
  margin-right: .4rem;
  font-size: .2rem;
  color: #78787D;
}
ul.input-wrap {
  background-color: #FFF;
}
ul.input-wrap li {
  position: relative;
  margin: 0 .32rem;
  padding: .32rem 0;
  font-size: 0;
  overflow: hidden;
}
ul.input-wrap li::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  background: #E6E6E6;
  width: 100%;
  height: 1px;
  -webkit-transform: scaleY(0.5);
  transform: scaleY(0.5);
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  margin-top: 0;
}
ul.input-wrap li:last-child::after {
  display: none;
}
.input-wrap .title,
.input-wrap label {
  float: left;
  color: #1D1D1F;
  font-size: .32rem;
  font-weight: 500;
  line-height: 1.5;
}
.input-wrap .note {
  float: right;
  color: #4F4F53;
  font-size: .28rem;
  line-height: .48rem;
}
.input-wrap label ~ .tag {
  float: right;
  margin-left: .16rem;
}
.input-wrap .left-side-tag .tag {
  float: left;
  margin-right: .24rem;
  font-size: .28rem;
  line-height: .4rem;
}
.input-wrap .left-side-tag .tag:active {
  color: #FFF;
  background-color: #FF804D;
}
.input-wrap .icon-access input[type=text] {
  float: right;
  padding-right: .4rem;
  border: none;
  color: #4F4F53;
  font-size: .28rem;
  line-height: .48rem;
  text-align: right;
}
.input-wrap input[type=checkbox] {
  display: none;
}
.input-wrap input[type=checkbox] ~ .note {
  float: none;
  padding-left: .32rem;
}
.input-wrap input[type=checkbox] + label {
  position: relative;
  float: right;
  display: block;
  margin: .1rem .07rem;
  width: .68rem;
  height: .28rem;
  border-radius: .14rem;
  background-color: #EEEEEF;
}
.input-wrap input[type=checkbox]:checked + label {
  background-color: rgba(98, 140, 249, .3);
}
.input-wrap input[type=checkbox] + label::before {
  content: '';
  position: absolute;
  left: -.06rem;
  top: 50%;
  margin-top: -.2rem;
  display: block;
  width: .4rem;
  height: .4rem;
  background-color: #FFF;
  border-radius: 999px;
  border-radius: 100%;
  box-shadow:
    0 0 1px 0 rgba(0,0,0,0.15),
    0 1px 1px 0 rgba(0,0,0,0.10);
}
.input-wrap input[type=checkbox]:checked + label::before {
  left: auto;
  right: -.06rem;
  background-color: #628CF9;
}