/*************************
TPASS2.0_公共運輸常客優惠乘客簡易計算器
**************************/
/* 全域設定 */
:root {
  /******************* Grey & Text *******************/
  --primary: #fd8a0f;
  --primary-deep: #f36f18;
  --red: #c52d2f;
  --red-deep: #bb2b2b;
  /* Grey */
  --white: #fff;
  --gray100: #f2f2f2;
  --gray200: #e7e7e7;
  --gray300: #d4d4d4;
  --gray400: #bbbbbb;
  --gray500: #959595;
  --gray600: #6a6a6a;
  --gray700: #434343;
  --gray800: #2b2b2b;
  --black: #222222;
  /* Text */
  --txt900: #101828;
  --txt800: #2b2b2b;
  --txt600: #434343;
  --txt400: #777777;
  --txt300: #a8a8a8;
  --txt200: #d3d3d3;
}
/*  */
.opint_tt {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  font-weight: 400;
  color: var(--primary);
  letter-spacing: 1px;
}
.opint_tt_icon {
  width: 14px;
  height: 14px;
  background-color: var(--primary);
  margin: 0 17px 0 0;
  display: inline-block;
}
/* 表單 */
.calc-table {
  width: 100%;
  font-size: 16px;
  background: #fff;
}
.calc-table th,
.calc-table td {
  border: var(--gray200) 2px solid;
  padding: 10px 8px;
  text-align: center;
  vertical-align: middle;
}
.calc-table thead th {
  background-color: #fef8f0;
  font-weight: bold;
}
.table-input {
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding: 6px;
  border: 1px solid var(--gray200);
  background: #ededed;
  border-radius: 3px;
}
.calc-table .checkbox-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}
.calc-table .checkbox-group label {
  margin-bottom: 4px;
}
.required {
  color: var(--red);
  font-size: 15px;
  font-weight: bold;
}
/* */
.contact-form {
  width: 100%;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: none;
  overflow: hide;
}
.from_action {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 30px 0 30px 0;
  margin: 0px 0 0 0;
}
.from_action button {
  display: block;
  float: left;
  padding: 10px 60px;
  text-align: center;
  color: #fff;
  font-size: 1.2em;
  line-height: 1.3em;
  text-decoration: none;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  border: 1px solid #999;
  -webkit-transition: background 100ms ease-in;
  -moz-transition: background 100ms ease-in;
  -ms-transition: background 100ms ease-in;
  -o-transition: background 100ms ease-in;
  transition: background 100ms ease-in;
  background: var(--primary);
  border-color: var(--primary-deep);
  -webkit-box-shadow:
    inset 0px 1px 0px 0px rgba(255, 255, 255, 0.5),
    0px 2px 0px 0px var(--red-deep);
  box-shadow:
    inset 0px 1px 0px 0px rgba(255, 255, 255, 0.5),
    0px 2px 0px 0px var(--red-deep);
}
.from_action button:hover {
  background: var(--red);
  outline: none;
  box-shadow: none;
}
.from_action button:focus,
.from_action button:active,
.from_action button.active {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary-deep);
}
/* */
.checkbox .cr,
.radio .cr {
  position: relative;
  display: initial;
  border: 2px solid #a9a9a9;
  border-radius: 0.25em;
  width: 1.3em;
  height: 1.3em;
  float: left;
  margin-right: 0.5em;
  margin-top: initial;
}
/* input 選到變底色 */
.calc-table tr.is-active {
  background-color: #fff5f5;
  transition: all 0.2s ease;
  outline: 2px solid var(--gray300);
}
.calc-table tr.is-active .table-input {
  background: #fff;
}
.table-input:focus-visible,
.table-input:focus {
  outline: 1px solid var(--gray600);
}
.table-input::placeholder {
  color: var(--gray600);
  opacity: 1;
}
/* */
.col-take {
  width: 12%;
}
.col-feedback {
  width: 14%;
}
.calc-table .col-name {
  color: var(--primary);
  font-weight: bold;
  height: 110px;
  width: 17%;
  font-size: 1.8rem;
}
.col-count {
  color: var(--gray500);
  font-weight: normal;
}
.col-count-points {
  color: var(--primary);
}
/* */
.result-left-th {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.result-title {
  width: 13%;
  writing-mode: vertical-rl;
  letter-spacing: 15px;
  font-size: 1.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  vertical-align: middle;
  margin: 0 auto;
}
.remark {
  text-align: left;
  padding: 20px 0 0 10px;
  color: var(--red);
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 1px;
}
.remark li {
  margin: 0 0 10px 0;
  list-style: none;
}
.remark-break {
  padding: 0 0 0 13px;
  display: block;
}
.important-bold {
  color: var(--red);
  font-weight: bold;
}
/* list-calculate */
.list-calculate-thead {
  font-size: 1.7rem;
}
.list-calculate-tbody .col-take,
.list-calculate-tbody .col-count {
  color: #000;
}
/* 隱藏-RD計算公式 */
.no_display {
  opacity: 0;
  color: #fff;
  height: 0px;
}
.no_display div {
  height: 0px;
}
/* RWD-手機 */
@media (min-width: 2000px) {
  .container {
    width: 80%;
  }
}
@media (max-width: 768px) {
  .contact-form {
    overflow-x: auto;
    overflow-y: hidden;
  }
  .calc-table {
    min-width: 768px;
    table-layout: fixed;
  }
}
