@charset "utf-8";
/*===================================================
使用於以下項目之樣式
  • 會員註冊
  • 會員中心
  • 訂單結帳
  ---------------------------------------------------
  last update 2025-01
===================================================*/ :root {
  --color-primary: #1991cf;
  --color-active: #ff9933;
  --color-support: #169e3d;
  --color-reg: #ff9933;
  --color-grey01: #f7f7f7;
  --color-grey02: #efefef;
  --bs-border-width: 1px;
  --bs-border-color: #999;
}
button, select, .form-control, .btn, label {
  font-size: 1.8rem;
}
.top > .container {
  background-color: #fff;
  border-radius: 15px;
  max-width: 1100px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px -8px 24px;
  font-size: 1.8rem;
  padding-bottom: 60px;
}
@media (min-width:1200px) {
  .resource .top > .container {
    position: relative;
    max-width: 1366px;
    margin-top: -200px;
  }
}
/* User-統一介面 */
.user-logout {
  color: #f96c6c;
  margin-left: 2rem;
  border: 2px solid #f96c6c;
  padding: 0 0.5rem;
  border-radius: 5px;
  font-size: 0.8em;
}
.user-logout:hover {
  color: #fff;
  margin-left: 2rem;
  border: 2px solid #f96c6c;
  padding: 0 0.5rem;
  border-radius: 5px;
  background-color: #f96c6c
}
.remind-text {
  color: #669900;
  font-size: 2.4rem;
  margin-bottom: 1em;
}
.mand-symb {
  color: #f00;
  font-weight: bold;
  font-style: normal
}
.user-cta {
  display: flex;
  gap: 1em;
  justify-content: center;
  margin-top: 3rem;
}
.btn {
  border-radius: 8px;
}
.btn-primary {
  background-color: #f96c6c;
  border-color: #b3b3b3;
}
.btn-secondary {
  background-color: #b3b3b3;
  border-color: #b3b3b3;
  color: #000
}
.btn-primary:hover {
  background-color: #ff2727;
  border-color: #b3b3b3;
}
.btn i[class^='fa'] {
  margin: auto 5px;
}
.userContent {
  margin: 30px auto;
  text-align: center;
  max-width: 900px;
}
.userContent h1 {
  border-bottom: 3px solid #673200;
  padding: 0.5em 0.2em;
  color: #673200;
  text-align: center;
  display: inline-block;
  margin: auto auto 0.5em;
  font-size: 3.6rem;
}
.userContent h2 {
  text-align: left
}
.userContent h2 strong {
  display: inline-block;
  margin-left: 0;
  color: #fff;
  padding: 5px 15px;
  border-radius: 15px;
  text-align: left;
  font-size: 1.8rem;
  background-color: var(--color-support);
}
.userContent .btn {
  min-width: 6em;
}
.userContent .form-control-plaintext {
  background-color: var(--color-grey01);
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.userContent .form-control, .userContent .col-form-label, .form-check-inline {}
.user-account {
  font-size: 2rem;
  padding: 1rem;
  margin: 1rem auto;
  text-align: left
}
.user-account i {
  color: var(--color-reg)
}
.user-account .user-name {
  margin: auto 1rem;
  font-weight: bold
}
.user-tabs {
  font-size: 2rem;
  gap: 1rem;
  flex-wrap: nowrap;
  max-width: 800px;
  margin: 2rem auto
}
.user-tabs .nav-link {
  border: 2px solid var(--color-active);
  border-radius: 0.8rem;
  color: #666;
  align-items: center;
  display: flex;
  justify-content: center
}
.user-tabs .nav-link:hover {
  color: var(--color-active);
}
.user-tabs .nav-link i {
  color: var(--color-active);
  padding: 0 0.2em;
  font-size: 1.2em
}
.user-tabs .nav-link.active, .user-tabs .nav-link.active i {
  background-color: var(--color-active);
  color: #fff;
}
.user-content {
  padding: 2rem;
  border-radius: 0 0 15px 15px;
  font-size: 1.8rem;
  text-align: left
}
.userContent table {
  width: 100%;
  text-align: center;
}
.userContent table th {
  border-bottom: 2px solid #cecece;
  padding: 0.25em;
}
.userContent table tbody tr td {
  padding: 0.25em;
}
.userContent table th:first-child {
  text-align: left;
  padding-left: 15px;
  width: 25%;
}
.userContent table tbody tr td:first-child {
  text-align: left;
  padding-left: 15px;
}
.userContent table tbody tr:not(:last-child) td {
  border-bottom: 1px dotted #999;
}
.userContent table tbody tr:hover {
  background-color: var(--color-grey01);
}
/* User-訂單資料 */
.order-list th {
  width: 25%;
}
.userContent table.order-items th:first-child {
  width: 60%;
}
.order-items {
  border: 1px solid #cecece;
}
/* User-我的教材 */
.book-list th:nth-child(2), .resource-list th:nth-child(2), .book-list td:nth-child(2), .resource-list td:nth-child(2) {
  width: 50%;
  text-align: left
}
.book-list {
  margin-bottom: 15px;
}
#my-book-list .accordion-item:not(:last-child) {
  border-bottom: 1px solid #cecece;
}
#my-book-list .accordion-collapse {
  padding-left: 15%;
}
.my-book-col {
  display: flex;
  justify-content: space-between;
  padding: 5px;
}
.my-book-col > div {
  flex: 0 0 15%;
}
.my-book-col > div:nth-child(2) {
  flex: 1 0 55%;
  text-align: left
}
.my-book-col .btn-light {
  color: var(--color-active);
  border: 1px solid var(--color-active);
  min-width: inherit;
  white-space: nowrap
}
.my-resource {
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 30px;
  font-size: 1.6rem;
}
.my-resource-col {
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding: 5px;
}
.my-resource-col > div {
  flex: 1 0 15%;
}
.my-resource-col > div:nth-child(1) {
  white-space: nowrap;
}
.my-resource-col > div:nth-child(2) {
  flex: 0 0 70%;
  text-align: left
}
.my-book-head {
  border-bottom: 2px solid #cecece;
  font-weight: bold;
}
.my-resource li {
  padding: 5px;
}
.my-resource li:nth-child(odd) {
  background-color: var(--color-grey01);
}
.my-resource li:nth-child(even) {
  background-color: var(--color-grey02);
}
.my-resource-head {
  color: #fff;
  background-color: var(--color-support)
}
/* User-幼師管理 */
.user-invite {
  padding: 30px 15px 15px;
  background-color: #EFEFEF;
  margin-bottom: 3rem;
  border-radius: 0.8rem;
  margin-top: 2rem
}
.user-invite h3 {
  margin-top: -40px;
  text-align: center;
  margin-bottom: 10px;
  font-size: 1.6rem;
}
.user-invite h3 strong {
  background-color: #999;
  color: #fff;
  padding: 3px 15px;
  border-radius: 15px;
}
.invite-status {
  display: inline-block;
}
.invite-tbc {
  color: #f00
}
/* Register */
.user-role-select {
  display: flex;
  align-items: center;
  height: 100%;
  color: var(--color-reg);
  border: 2px solid var(--color-reg);
  border-radius: 15px;
  padding: 1em;
  font-weight: bold;
  font-size: 2.2rem;
  justify-content: center;
}
.user-role-select:hover {
  background-color: var(--color-reg);
  color: #fff
}
.user-role-hilite {
  color: var(--color-reg);
}
.register-content {
  text-align: left;
  max-width: 800px;
  margin: auto;
}
/* Cart & Order */
.cart-content {
  text-align: left;
  border: 2px solid var(--color-primary);
  border-radius: 10px;
  box-shadow: 5px 5px #0000001a;
  margin: auto;
  padding: 30px;
}
.item-quantity {
  width: 2.5em;
  margin: auto;
  padding-right: 0;
}
.total-amonut {
  font-size: 2rem;
  text-align: right;
  border-top: 1px solid #333;
  padding: 15px;
}
.total-amonut strong {
  color: #f00
}
.order-infs {
  text-align: left
}
.order-msg {
  margin: 15px auto;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold
}
.pdadd td:first-child {
  display: flex
}
.pdadd td:first-child:after {
  content: '【加購】';
  order: -1;
  color: #f96c6c
}
/* 小袋鼠動態 */
.kangaroo {
  background-color: #FF9900;
  border-radius: 100px;
  display: inline-block;
  padding: 30px;
  margin: auto;
  width: 180px;
  height: 180px;
  text-align: center;
}
.kangaroo img {
  display: block;
  margin: 0 auto;
  transform-origin: center bottom;
  animation: breathe 2s infinite ease-in-out;
  max-width: 150px;
  width: 100%;
  height: auto;
}
@keyframes breathe {
  0%, 100% {
    transform: scaleY(1);
  }
  50% {
    transform: scaleY(1.05);
  }
}
@media (max-width:576px) {
  .userContent h2 {
    text-align: center
  }
  .user-tabs {
    font-size: 1.6rem;
  }
  .user-tabs .nav-link {
    flex-direction: column
  }
  .user-tabs .nav-link i {
    display: block;
  }
  .user-content {
    border: none;
    border-top: 2px solid var(--color-active);
    padding: 2rem 0;
    font-size: 1.6rem;
  }
  .table-rw thead {
    display: none
  }
  .table-rw tr {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 1rem;
  }
  .table-rw tr:not(:last-child) {
    border-bottom: 2px solid #999;
  }
  .table-rw tr td {
    width: 100% !important;
    border: none !important;
    text-align: left;
    padding: 0 !important;
  }
  .table-rw tr td:before {
    color: #666
  }
  /* User-訂單資料-RWD */
  .order-list tr td:nth-child(1):before {
    content: "訂購日期 : ";
  }
  .order-list tr td:nth-child(2):before {
    content: "訂單編號 : ";
  }
  .order-list tr td:nth-child(3):before {
    content: "應付金額 : ";
  }
  .order-list tr td:nth-child(4):before {
    content: "狀　　態 : ";
  }
  /* User-我的教材-RWD */
  .book-list tr td:nth-child(1):before {
    content: "訂購日期 : ";
  }
  .book-list tr td:nth-child(2):before {
    content: "明　　細 : ";
  }
  .book-list tr td:nth-child(3):before {
    content: "狀　　態 : ";
  }
  .resource-list tr td:nth-child(1):before {
    content: "訂購日期 : ";
  }
  .resource-list tr td:nth-child(2):before {
    content: "明　　細 : ";
  }
  .resource-list tr td:nth-child(3):before {
    content: "瀏覽期限 : ";
  }
  .userContent table.members-list tr {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .members-list tr td {
    flex: 1 0 20%;
  }
  .members-list tr td:last-child {
    flex: 0 0 5em;
  }
  .members-list tr td:first-child {
    flex: 0 0 100%;
  }
  .members-list tr td:nth-child(1):before {
    content: "Email : ";
  }
  .members-list tr td:nth-child(2):before {
    content: "姓名 : ";
  }
  .members-list tr td:nth-child(3):before {
    content: "狀態 : ";
  }
  .members-list tr td:nth-child(4):before {
    content: "移除 : ";
  }
  #my-book-list .accordion-collapse {
    padding-left: 0;
  }
  .my-book-col {
    flex-direction: column
  }
  .my-book-col > div:before, .my-resource-col > div:before {
    color: #666
  }
  .my-book-col > div:nth-child(1):before {
    content: "建立日期 : ";
  }
  .my-book-col > div:nth-child(2):before {
    content: "教材名稱 : ";
  }
  .my-book-col > div:nth-child(3) {
    text-align: right
  }
  .my-resource-col {
    flex-direction: column
  }
  .my-resource-col > div:nth-child(1):before {
    content: "建立日期 : ";
  }
  .my-resource-col > div:nth-child(2):before {
    content: "資源名稱 : ";
  }
  .my-resource-col > div:nth-child(3):before {
    content: "瀏覽期限 : ";
  }
  .my-resource {
    margin-left: 0;
    padding-left: 0;
    margin-bottom: 30px;
    font-size: 1.6rem;
  }
  .my-resource-col {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 5px;
  }
  .my-resource-col > div {
    flex: 1 0 15%;
  }
  .my-resource-col > div:nth-child(1) {
    white-space: nowrap;
  }
  .my-resource-col > div:nth-child(2) {
    flex: 0 0 70%;
    text-align: left
  }
  .my-book-head, .my-resource-head {
    display: none
  }
  .cart-content {
    text-align: left;
    border: none;
    box-shadow: none;
    padding: 0
  }
  .order-items tbody tr td:nth-child(1):before {
    content: "產品名稱 : ";
  }
  .order-items tbody tr td:nth-child(2):before {
    content: "單　　價 : ";
  }
  .order-items tbody tr td:nth-child(3):before {
    content: "數　　量 : ";
  }
  .order-items tbody tr td:nth-child(4):before {
    content: "小　　計 : ";
  }
  .order-items tbody tr td:nth-child(5):before {
    content: "移　　除 : ";
  }
  .item-quantity {
    display: inline-block;
    margin-left: 0;
  }
}