@import url('./reset.css');
@import url('./modal.css');

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
}

input {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
}

input:focus {
  outline: none;
}

html,
body {
  height: -webkit-fill-available;
  height: -moz-available;
  height: fill-available;
  overflow: hidden !important;
}

body {
  position: relative;
  display: flex;
  justify-content: center;
  height: var(--app-height);
  background-color: #e3e3e3;
  font-size: calc(var(--app-height) / 100);
  font-family: 'PingFangSC-Regular', 'Microsoft YaHei', '微软雅黑', 'Arial',
    sans-serif;
  /*-moz-user-select: none;
  user-select: none;*/
  touch-action: none;
  /*-webkit-user-select: none;*/
  -webkit-text-size-adjust: 100% !important;
  -ms-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
  -moz-text-size-adjust: 100% !important;
}

input {
  font-family: 'PingFangSC-Regular', 'Microsoft YaHei', '微软雅黑', 'Arial',
    sans-serif;
}

a {
  text-decoration: none;
}

div::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.wrapper {
  display: flex;
  flex-direction: column;
  width: var(--app-width);
  height: 100%;
  margin: 0 auto;
  background-image: url('../img/wap/bg.jpg');
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

.header {
  display: flex;
  justify-content: center;
  height: 8%;
  padding: 0 4%;
}

.header::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 8%;
}

.header-content {
  position: relative;
  display: flex;
  justify-content: space-between;
  /* width: 51.724vh; */
  width: 100%;
}

.header-left {
  display: flex;
  align-items: center;
}

.header-left .header-brand {
  display: none;
}

.header-center .header-brand {
  display: inline-block;
}

.header-right {
  display: flex;
  align-items: center;
}

.header-center {
  display: flex;
  align-items: center;
  height: 100%;
  margin: auto;
}

.header-brand {
  display: inline-block;
  height: 60%;
}

.brand-img {
  display: inline-block;
  height: 100%;
}

.header-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 4vh;
  height: 40%;
  cursor: pointer;
}

.header-btn .btn-img {
  display: inline-block;
  height: 100%;
}

.header-nav {
  display: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0 2%;
  list-style: none;
}

.nav-item {
  display: flex;
  align-items: center;
  height: 100%;
  padding-right: 4%;
  cursor: pointer;
}

.nav-item .item-icon {
  display: flex;
  height: 30%;
}

.nav-item .item-icon img {
  display: block;
  height: 100%;
  margin: auto;
}

.nav-item .item-title {
  padding-left: 10%;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  color: #000000;
  white-space: nowrap;
}

.nav-item .item-title:hover {
  color: #45b7ff;
}

.nav {
  font-size: 18px;
  width: 100%;
  height: 30%;
  max-height: 23px;
  margin: auto;
  display: none;
  justify-content: center;
}

.nav a {
  line-height: 25px;
  color: #000000;
  margin: 0 2%;
}

.nav a:hover {
  color: #45b7ff;
}

a.b1 {
  background: url(../img/nav-icon1@3x.png) left center no-repeat;
  background-size: contain;
  padding-left: 35px;
  margin-right: 2%;
}

a.b2 {
  background: url(../img/nav-icon2@3x.png) left center no-repeat;
  background-size: contain;
  padding-left: 38px;
  margin-right: 1%;
}

a.b3 {
  background: url(../img/nav-icon3@3x.png) left center no-repeat;
  background-size: contain;
  padding-left: 34px;
  margin-right: 1.3%;
}

a.b4 {
  background: url(../img/nav-icon4@3x.png) left center no-repeat;
  background-size: contain;
  padding-left: 33px;
  margin-right: 1.2%;
}

a.b5 {
  background: url(../img/nav5.png) left center no-repeat;
  background-size: contain;
  padding-left: 34px;
}

.rightblock {
  width: 16%;
  height: 100%;
  display: flex;
  justify-content: flex-end;
}

.rightblock a {
  width: 55%;
  max-width: 61px;
  height: 100%;
  margin: 0 2%;
}

a.r1 {
  display: none;
  background: url(../img/icon_query.png) center center no-repeat;
  background-size: contain;
}

a.r2 {
  display: none;
  background: url(../img/icon_support.png) center center no-repeat;
  background-size: contain;
}

a.r3 {
  display: none;
  background: url(../img/icon_iphone.png) center center no-repeat;
  background-size: contain;
}

a.r1:hover {
  background: url(../img/icon_query_h.png) center center no-repeat;
  background-size: contain;
}

a.r2:hover {
  background: url(../img/icon_support_h.png) center center no-repeat;
  background-size: contain;
}

a.r3:hover {
  background: url(../img/icon_iphone_h.png) center center no-repeat;
  background-size: contain;
}

.layout-main {
  overflow: hidden;
  flex: 1;
  display: grid;
  grid-template-rows:
    minmax(0, calc(var(--app-height) / 100 * 30)) minmax(0,
      calc(var(--app-height) / 100 * 35)) minmax(0, calc(var(--app-height) / 100 * 35));
  grid-template-areas:
    'slogon'
    'main-content'
    'bottom-bg';
  width: min(calc(var(--app-height) / 100 * 60), 96vw);
  margin: auto;
  position: relative;
  justify-content: center;
}

.main-content {
  grid-area: main-content;
  position: relative;
  display: flex;
  justify-content: center;
  width: min(calc(var(--app-height) / 100 * 48), 90vw);
  height: min(calc(var(--app-height) / 100 * 30), calc(95vw / 1.425));
  margin: 0 auto;
  padding: 0.6vh;
  background-image: linear-gradient(to top, #7ea7ff, #b4e1ff);
  /* border: 1px solid #f5ce95; */
  border-radius: 1vh;
}

.bottom-bg {
  display: flex;
  justify-content: center;
  grid-area: bottom-bg;
  width: var(--app-width);
  height: 100%;
  margin: 0 auto;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}

.bottom-bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center bottom;
  object-position: center bottom;
}

.slogon {
  grid-area: slogon;
  position: absolute;
  bottom: 89%;
  left: 50%;
  transform: translateX(-50%);
  width: 90%;
  /* height: 100%; */
  aspect-ratio: 10 / 6.3;
  background-image: url('../img/wap/slogon_2.png');
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
}

.form-content {
  display: grid;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.5vh;
  padding: 2.5vh 2.5vh 1.2vh;
  border-radius: 1vh;
  border: 3px solid #fff;
  background-image: linear-gradient(to top, #ade3ff 0, #e5f6ff 100%);
  margin: 0 auto;
}

.form {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
}

.form-item {
  display: flex;
  align-items: center;
  width: 100%;
  height: 50%;
  max-height: 50%;
}

.form-title {
  display: flex;
  align-items: center;
  height: 90%;
  width: 34%;
}

.form-title img {
  display: none;
  height: auto;
  width: 100%;
}

.form-title img.wap {
  display: block;
  height: auto;
  width: 100%;
}

.form-input {
  display: flex;
  justify-content: center;
  flex: 1;
  max-height: 100%;
  height: 80%;
  border-radius: 1vh;
  border: 1px solid #45b7ff;
  color: #7f6f6f;
  background-color: #ffffff;
}

.form-input input {
  width: 90%;
  padding-block: 0px;
  padding-inline: 0px;
  background-color: transparent;
  border: none;
  font-size: 2vh;
  vertical-align: middle;
}

.form-btn {
  display: grid;
  grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
  grid-template-columns: 1fr 1fr;
  gap: 1vh;
}

.form-btn .btn {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  border-radius: 1vh;
  border: 1px solid #cc952c;
  background-image: linear-gradient(to bottom, #fff98d, #ffca5b);
  cursor: pointer;
  /* transition: all 0.5s ease; */
}

.form-btn .btn:hover {
  background-image: linear-gradient(to top, #ffca9a, #fff4e9);
}

.form-btn .btn:focus {
  background-image: linear-gradient(to top, #ffca9a, #fff4e9);
}

.form-btn .btn:active {
  background-image: linear-gradient(to top, #ffca9a, #fff4e9);
}

.form-btn .btn span {
  font-size: 2vh;
  font-weight: 600;
  color: #da0b1e;
}

.form-btn .btn.-img {
  width: 100%;
  min-height: 0;
  min-width: 0;
  border: none;
  border-radius: 0;
  padding: 0;
  /* 只有按鈕背景是圖片,文字是img tag */
  /* background-image: url('../img/btn-bg.png');  */
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
}

.form-btn .btn.-img:nth-child(1n) {
  background-image: url('../img/wap/btn-1.png');
}

.form-btn .btn.-img:nth-child(2n) {
  background-image: url('../img/wap/btn-2.png');
}

.form-btn .btn.-img:nth-child(3n) {
  background-image: url('../img/wap/btn-3.png');
}

.form-btn .btn.-img:nth-child(4n) {
  background-image: url('../img/wap/btn-4.png');
}

.form-btn .btn.-img:nth-child(1n):hover {
  background-image: url('../img/wap/btn-1-hover.png');
}

.form-btn .btn.-img:nth-child(1n):focus {
  background-image: url('../img/wap/btn-1-hover.png');
}

.form-btn .btn.-img:nth-child(1n):active {
  background-image: url('../img/wap/btn-1-hover.png');
}

.form-btn .btn.-img:nth-child(2n):hover {
  background-image: url('../img/wap/btn-2-hover.png');
}

.form-btn .btn.-img:nth-child(2n):focus {
  background-image: url('../img/wap/btn-2-hover.png');
}

.form-btn .btn.-img:nth-child(2n):active {
  background-image: url('../img/wap/btn-2-hover.png');
}

.form-btn .btn.-img:nth-child(3n):hover {
  background-image: url('../img/wap/btn-3-hover.png');
}

.form-btn .btn.-img:nth-child(3n):focus {
  background-image: url('../img/wap/btn-3-hover.png');
}

.form-btn .btn.-img:nth-child(3n):active {
  background-image: url('../img/wap/btn-3-hover.png');
}

.form-btn .btn.-img:nth-child(4n):hover {
  background-image: url('../img/wap/btn-4-hover.png');
}

.form-btn .btn.-img:nth-child(4n):focus {
  background-image: url('../img/wap/btn-4-hover.png');
}

.form-btn .btn.-img:nth-child(4n):active {
  background-image: url('../img/wap/btn-4-hover.png');
}

/* 只有按鈕背景是圖片,文字是img tag */
.form-btn .btn .btn-img-text {
  display: block;
  width: auto;
  height: 100%;
}

/* .form-btn .btn.-img:hover{
  background-image: url('../img/btn-bg-hover.png');
}
.form-btn .btn.-img:focus{
  background-image: url('../img/btn-bg-hover.png');
}
.form-btn .btn.-img:active{
  background-image: url('../img/btn-bg-hover.png');
} */

.footer {
  display: none;
  height: 5vh;
}

.copy-right {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-color: #45b7ff;
}

.cr-text {
  padding: 0;
  margin: 0;
  font-size: 1.5vh;
  color: #ffffff;
}

@media (min-width: 640px) {
  body {
    background-image: none;
  }

  .wrapper {
    width: 100%;
    height: 100vh;
    background-color: #000;
    background-image: url('../img/bg-layout.jpg');
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  .header {
    height: 9vh;
    /* background-color: #fff; */
  }

  .header-nav {
    display: flex;
  }

  .header .nav {
    display: flex;
  }

  a.r1 {
    display: block;
  }

  a.r2 {
    display: block;
  }

  a.r3 {
    display: block;
  }

  #btn3 {
    display: none;
  }

  #btn2-wap {
    display: none;
  }

  .nav-item .item-title {
    font-size: 0.8rem;
  }

  /* .nav-item .item-icon {
    width: 3vh;
    height: 3vh;
  } */
  .header-left .header-brand {
    display: block;
  }

  .header-brand {
    height: 60%;
  }

  .header-center {
    width: 65%;
  }

  .header-center .header-brand {
    display: none;
  }

  .header-right {
    width: 16%;
  }

  .header-right a {
    flex: 1;
    max-width: 61px;
    height: 80%;
    margin-right: 2%;
  }

  .header-right a:last-child {
    margin-right: 0;
  }

  .header-btn {
    display: none;
    height: 50%;
  }

  .header::before {
    background-color: transparent;
  }

  .header-content {
    position: relative;
    display: flex;
    width: 100%;
    max-width: 1200px;
    height: 100%;
  }

  .slogon {
    height: 20vh;
    background-image: url('../img/slogon@3x.png');
    bottom: 91%;
  }

  .layout-main {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 86vh;
    padding-top: 5%;
    margin: auto;
    /* background-image: url('../img/bg-layout.jpg'); */
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
  }

  .main-content {
    width: min(calc(var(--app-height) / 100 * 69.7), 96vw);
    height: min(calc(var(--app-height) / 100 * 33.25), calc(96vw / 1.425));
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    /* padding: 0; */
    background-color: transparent;
    border: none;
    border-radius: 2vh;
    background-image: linear-gradient(to top, #7ea7ff, #b4e1ff);
  }

  .form-content {
    grid-template-rows: minmax(0, 1.5fr) minmax(0, 0.8fr);
    width: 100%;
    height: 100%;
    padding: 7.5% 9.2% 6%;
    border-radius: 1.5vh;
    border: 3px solid #fff;
    background-image: linear-gradient(to top, #ade3ff 0, #e5f6ff 100%);
  }

  .form-input {
    width: 67%;
    height: 92%;
    padding: 0% 2%;
    border: 1px solid #45b7ff;
    border-radius: 1vh;
  }

  .form-input input {
    width: 100%;
    font-size: 1.8vh;
  }

  .form-item {
    height: 100%;
    padding-top: 2%;
  }

  .form-title {
    width: 33%;
    height: auto;
  }

  .form-title img {
    display: block;
    width: 100%;
    height: auto;
  }

  .form-title img.wap {
    display: none;
  }

  .form-btn {
    grid-template-rows: none;
    margin-top: 3%;
  }

  .form-btn .btn {
    height: 100%;
    padding: 6% 8%;
    border-radius: 1.5vh;
  }

  .form-btn .btn span {
    font-size: 3vh;
  }

  .form-btn .btn.-img:nth-child(1n) {
    background-image: url('../img/btn-1.png');
  }

  .form-btn .btn.-img:nth-child(2n) {
    background-image: url('../img/btn-2.png');
  }

  .form-btn .btn.-img:nth-child(3n) {
    background-image: url('../img/btn-3.png');
  }

  .form-btn .btn.-img:nth-child(4n) {
    background-image: url('../img/btn-4.png');
  }

  .form-btn .btn.-img:nth-child(1n):hover {
    background-image: url('../img/btn-1-hover.png');
  }

  .form-btn .btn.-img:nth-child(1n):focus {
    background-image: url('../img/btn-1-hover.png');
  }

  .form-btn .btn.-img:nth-child(1n):active {
    background-image: url('../img/btn-1-hover.png');
  }

  .form-btn .btn.-img:nth-child(2n):hover {
    background-image: url('../img/btn-2-hover.png');
  }

  .form-btn .btn.-img:nth-child(2n):focus {
    background-image: url('../img/btn-2-hover.png');
  }

  .form-btn .btn.-img:nth-child(2n):active {
    background-image: url('../img/btn-2-hover.png');
  }

  .form-btn .btn.-img:nth-child(3n):hover {
    background-image: url('../img/btn-3-hover.png');
  }

  .form-btn .btn.-img:nth-child(3n):focus {
    background-image: url('../img/btn-3-hover.png');
  }

  .form-btn .btn.-img:nth-child(3n):active {
    background-image: url('../img/btn-3-hover.png');
  }

  .form-btn .btn.-img:nth-child(4n):hover {
    background-image: url('../img/btn-4-hover.png');
  }

  .form-btn .btn.-img:nth-child(4n):focus {
    background-image: url('../img/btn-4-hover.png');
  }

  .form-btn .btn.-img:nth-child(4n):active {
    background-image: url('../img/btn-4-hover.png');
  }

  .bottom-bg {
    display: none;
  }

  .footer {
    display: block;
  }
}

@media (min-width: 1200px) {
  .header-left .header-brand {
    height: 70%;
  }

  .nav-item {
    padding-right: 6%;
  }

  .nav-item .item-title {
    font-size: 1rem;
  }
}