/* system ***************************************************/
body {
  background-color: var(--custom-theme-background-color);
}

main {
  position: relative;
  z-index: 1;
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 40px;
}

.container-xl,
.container-lg,
.container-md,
.container-sm,
.container {
  max-width: none;
}

.container-xxl {
  max-width: 1860px;
}

.container {
  max-width: 1440px;
}

/* 樣式 */
.list-inline-select ul {
  display: none;
}

/* search-section 樣式 */
.search-section>span.active {
  background-color: var(--custom-theme-button-color) !important;
}

/* Teaching Resources page */
:root {
  --textbook-radius: clamp(15px, 1.4vw, 20px);
}

.row,
.row:not(.paragraph__column) {
  --bs-gutter-x: 40px;
  row-gap: 40px;
}

:root {
  --home-radius-xl-r40: 40px;
}

@media screen and (max-width: 1199px) {
  :root {
    --home-radius-xl-r40: 30px;
  }
}

.list-unit ul,
.filter-section-content,
.search-section-content {
  display: none;
}

/* paragraph */
.paragraph>.paragraph__column.row {
  --bs-gutter-x: 0;
}

.paragraph .field--type-text-long h2 {
  color: #009F4D;
  font-size: 22px;
  line-height: calc(100% + 10px);
  margin-bottom: 15px;
  padding-left: 14px;
  position: relative;
}

.paragraph .field--type-text-long h2::before {
  background-color: #FFC72C;
  content: '';
  display: block;
  width: 4px;
  position: absolute;
  left: 0;
  top: 5px;
  bottom: 5px;
}

.paragraph .field--type-text-long h3 {
  color: #000;
  font-size: 18px;
  line-height: calc(100% + 8px);
}

.paragraph .field--type-text-long p,
.paragraph .field--type-text-long ul li,
.paragraph .field--type-text-long ol li {
  color: #5A5A5A;
  line-height: calc(100% + 10px);
}

.paragraph .field--type-text-long :last-child {
  margin-bottom: 0;
}

/* paragraph image card */
.paragraph--type--image-card .field--type-list-integer {
  display: none;
}

.paragraph--type--image-card>.paragraph__column.row {
  --bs-gutter-x: 40px;
  row-gap: 40px;
  width: auto;
}

.paragraph--type--image-card>.paragraph__column.row .row {
  --bs-gutter-x: 0;
}

.paragraph--type--image-card .paragraph--type--card-item .field--type-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  border-radius: var(--textbook-radius);
}

.paragraph--type--image-card .paragraph--type--card-item .field--type-link {
  background-color: #EFFFF7;
  border: #389D56 1px solid;
  border-radius: 10px;
  width: calc(100% - 24px);
  min-height: 76px;
  margin-top: -20px;
  margin-left: 12px;
  margin-right: 12px;
  padding: 12px 17px;
  position: relative;
}

.paragraph--type--image-card .paragraph--type--card-item .field--type-link a,
.paragraph--type--image-card .paragraph--type--card-item .field--type-link span {
  color: #009F4D;
  font-size: 18px;
  font-weight: 500;
  line-height: 24px;
}

.paragraph--type--image-card>.paragraph__column.row>div:nth-child(odd) .paragraph--type--card-item .field--type-link {
  background-color: #FFF9F1;
  border: #FFC72C 1px solid;
}

.paragraph--type--image-card>.paragraph__column.row>div:nth-child(odd) .paragraph--type--card-item .field--type-link a,
.paragraph--type--image-card>.paragraph__column.row>div:nth-child(odd) .paragraph--type--card-item .field--type-link span {
  color: #FBC223;
}

.paragraph--type--image-card .paragraph--type--card-item .field--type-link a:hover,
.paragraph--type--image-card .paragraph--type--card-item .field--type-link a:focus {
  color: #FBC223;
}

.paragraph--type--image-card>.paragraph__column.row>div:nth-child(odd) .paragraph--type--card-item .field--type-link a:hover,
.paragraph--type--image-card>.paragraph__column.row>div:nth-child(odd) .paragraph--type--card-item .field--type-link a:focus {
  color: #009F4D;
}

.paragraph .field--name-field-animation-style {
  display: none;
}

/* ===== Bulk Toast Styles (for #toast-warning and #toast-success) ===== */
#toast-warning,
#toast-success {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 10000;
  background: #fff;
  padding: 16px 20px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  min-width: 300px;
  max-width: 400px;
  display: none;
  align-items: center;
  gap: 12px;
  animation: toastSlideIn 0.3s ease-out;
}

#toast-warning.show,
#toast-success.show {
  display: flex;
}

#toast-warning {
  border-left: 4px solid #ffc107;
}

#toast-success {
  border-left: 4px solid #28a745;
}

#toast-warning .toast-icon,
#toast-success .toast-icon {
  font-size: 20px;
  flex-shrink: 0;
}

#toast-warning .toast-message,
#toast-success .toast-message {
  flex: 1;
  margin-left: 12px;
  color: #333;
  font-size: 14px;
  line-height: 1.5;
}

/* ===== Toast Notification Styles ===== */
.toast-notification-container {
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.toast-notification {
  background: #fff;
  padding: 25px;
  border-radius: var(--textbook-radius);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 380px;
  max-width: 600px;
  pointer-events: auto;
  position: relative;
  animation: toastSlideIn 0.3s ease-out;
}

.toast-notification .toast-icon {
  flex: 0 0 auto;
  display: block;
  width: 40px;
  height: 40px;
}

.toast-success .toast-icon {
  background: url(../image/icon/toast_icon_success.svg) center center no-repeat;
}

.toast-error .toast-icon {
  background: url(../image/icon/toast_icon_error.svg) center center no-repeat;
}

.toast-warning .toast-icon {
  background: url(../image/icon/toast_icon_warning.svg) center center no-repeat;
}

/* 確保 toast 初始狀態可見 */
.toast-notification:not(.toast-hiding) {
  transform: translateX(0);
  opacity: 1;
}

.toast-notification.toast-hiding {
  animation: toastSlideOut 0.3s ease-in forwards;
}

@keyframes toastSlideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes toastSlideOut {
  from {
    transform: translateX(0);
    opacity: 1;
  }

  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

.toast-notification-message {
  color: #000;
  font-size: 18px;
  line-height: 20px;
  flex: 1 1 auto;
}

.toast-notification-close {
  background: #EAEAEA url(../image/icon/close.svg) center center no-repeat;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  flex: 0 0 auto;
  display: block;
  width: 30px;
  height: 30px;
  outline: none;
  transition: all 0.2s ease;
}

.toast-notification-close:hover,
.toast-notification-close:focus {
  background-color: color-mix(in srgb, #EEEEEE 90%, black);
}

/* header ***************************************************/
header {
  margin-bottom: 10px;
}

header .navbar {
  background: linear-gradient(to bottom, #FFC72C 60px, #FFC72C00 60px);
  padding-top: 10px;
  padding-bottom: 10px;
}

header .navbar>.container-xxl {
  align-items: stretch;
}

header .navbar .region-nav-branding {
  background-color: #fff;
  border-radius: 50px 0 0 50px;
  display: flex;
  padding: 20px 20px 20px 25px;
}

header .navbar .region-nav-branding .navbar-brand {
  margin-right: 0;
  padding: 0;
}

header .navbar .region-nav-branding .navbar-brand::after {
  background-color: #B2B2B2;
  content: '';
  display: inline-block;
  width: 1px;
  height: 45px;
  margin: 8px 20px 7px;
}

header .navbar .region-nav-branding .navbar-brand img {
  margin-right: 0;
}

.subject-website .content {
  display: flex;
  padding: 10px 0;
}

.subject-website .content img {
  margin-right: 10px;
}

.subject-website p {
  font-weight: 500;
  line-height: 40px;
  margin-bottom: 0;
}

header .navbar-expand-lg .offcanvas .offcanvas-body {
  background-color: #fff;
  border-radius: 0 50px 50px 0;
  align-items: center;
  height: 100%;
  padding: 20px 25px 20px 0;
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .contextual-region {
  position: initial;
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-item {
  padding-left: 10px;
  padding-right: 10px;
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link {
  color: #000;
  font-size: 20px;
  line-height: 30px;
  padding: 10px;
  position: relative;
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link:not(.is-active):hover,
header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link:not(.is-active):focus {
  color: #009F4D;
}

header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link.is-active::after {
  background-color: #389D56;
  border-radius: 2px;
  content: '';
  display: block;
  height: 4px;
  position: absolute;
  bottom: -4px;
  left: 14px;
  right: 14px;
}

/* Desktop: nav_additional in navbar */
header .navbar .region-nav-additional {
  display: flex;
  align-items: center;
}

/* Mobile: nav_additional in offcanvas */
header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-additional {
  display: flex;
  align-items: center;
  margin-left: auto;
}

header .language-switcher-language-url ul {
  display: flex;
}

header .language-switcher-language-url ul li:first-child {
  border-right: #BFBFBF 1px solid;
}

header .language-switcher-language-url ul li a {
  color: #BFBFBF;
  font-size: 20px;
  line-height: 27px;
  display: block;
  padding: 0 12px;
}

header .language-switcher-language-url ul li.is-active a,
header .language-switcher-language-url ul li a:hover,
header .language-switcher-language-url ul li a:focus {
  color: #000;
}

.user-account {
  background-color: #FFC72C;
  border-radius: 50px;
  margin-left: 17px;
  padding: 5px 15px 5px 5px;
}

.user-account a {
  line-height: 40px;
  float: right;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90px;
  height: 40px;
  margin-left: 10px;
}

/* footer ***************************************************/
footer {
  background-color: #fff;
  padding-top: 40px;
  padding-bottom: 40px;
}

footer .region-footer {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

footer .region-footer .footer-botton-right ul {
  display: flex;
  gap: 20px;
  margin-bottom: 18px;
}

footer .region-footer .footer-botton-right ul li,
footer .region-footer .footer-botton-right ul li a {
  color: #000;
  font-size: 14px;
  line-height: 17px;
}

footer .region-footer .footer-botton-right p {
  color: #000;
  font-size: 14px;
  line-height: 17px;
  margin-bottom: 0;
}

/* back to top ***********/
.sidebar-back-to-top {
  background: #FFC72C url(../image/icon/back_to_top_black.svg) center center no-repeat;
  border-radius: 50%;
  cursor: pointer;
  display: block;
  width: 50px;
  height: 50px;
  overflow: hidden;
  text-indent: -9999px;
  position: fixed;
  right: 25px;
  bottom: 115px;
  z-index: 30;
  transition: all 0.2s ease;
  opacity: 0;
}

.sidebar-back-to-top:hover,
.sidebar-back-to-top:focus {
  filter: contrast(1.3);
}

/* textbook menu ***************************************************/
.textbook-menu .region-textbook-menu {
  border-radius: var(--textbook-radius);
  background: linear-gradient(90deg, #FFF 64%, color-mix(in srgb, var(--custom-theme-color) 90%, #fff) 100%);
  display: flex;
  width: 100%;
  margin-bottom: 25px;
  padding: 20px;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul {
  display: flex;
  padding-left: 0;
  margin-bottom: 0;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li {
  list-style: none;
  padding-top: 2px;
  padding-bottom: 3px;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li+li {
  border-left: #CFCFCF 1px solid;
  margin-left: 20px;
  padding-left: 20px;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link {
  display: block;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link img {
  width: auto;
  height: 45px;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link span.has-new-badge {
  background: url(../image/icon/icon_new_badge.png) left center no-repeat;
  background-size: auto 100%;
  text-indent: -9999px;
  float: left;
  display: block;
  overflow: hidden;
  width: 30px;
  height: 45px;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link img~span {
  border: #CFCFCF 1px solid;
  border-radius: 24px;
  display: block;
  width: 24px;
  height: 24px;
  float: right;
  margin: 10px 0 11px 10px;
  transition: all 0.2s ease;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li.active .textbook-icon-link img~span {
  background: var(--custom-theme-button-color) url(../image/icon/active_click.svg) center center no-repeat;
  border: var(--custom-theme-button-color) 1px solid;
}

.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li:not(.active) .textbook-icon-link:hover img~span,
.textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li:not(.active) .textbook-icon-link:hover img~span {
  background-color: var(--custom-theme-button-color);
  border: var(--custom-theme-button-color) 1px solid;
}

.textbook-menu .region-textbook-menu .menu--textbook-menu {
  display: flex;
  margin-left: auto;
}

.textbook-menu .region-textbook-menu .menu--textbook-menu .navbar-nav {
  flex-direction: row;
  align-items: flex-end;
  gap: 10px;
}

.textbook-menu .region-textbook-menu .menu--textbook-menu .navbar-nav .nav-item .nav-link {
  background-color: #fff;
  border-radius: 36px;
  line-height: 1;
  padding: 10px 20px;
}

.textbook-menu .region-textbook-menu .menu--textbook-menu .navbar-nav .nav-item.active .nav-link,
.textbook-menu .region-textbook-menu .menu--textbook-menu .navbar-nav .nav-item:not(.active) .nav-link:hover,
.textbook-menu .region-textbook-menu .menu--textbook-menu .navbar-nav .nav-item:not(.active) .nav-link:focus {
  background-color: var(--custom-theme-button-color);
}

.region-textbook-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* textbook breadcrumb ***************************************************/
#block-lingkee-textbook-series-textbookbreadcrumb {
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}

.Textbook-Breadcrumb-section .content {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.Textbook-Breadcrumb-section h2 {
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  line-height: 1.2;
  padding-left: 23px;
  position: relative;
}

.Textbook-Breadcrumb-section h2::before {
  background-color: #FFC72C;
  border-radius: 3px;
  content: '';
  display: block;
  width: 6px;
  position: absolute;
  left: 0;
  top: 1px;
  bottom: 1px;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb {
  display: flex;
  flex-wrap: wrap;
  row-gap: 10px;
  margin-left: auto;
  margin-bottom: 23px;
  padding-left: 0;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li {
  color: #fff;
  list-style: none;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li:first-child a {
  background: url(../image/icon/breadcrumb_home.svg) center center no-repeat;
  display: block;
  width: 20px;
  height: 20px;
  text-indent: -9999px;
  overflow: hidden;
  opacity: 0.7;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li:first-child a:hover,
.Textbook-Breadcrumb-section .Textbook-Breadcrumb li:first-child a:focus {
  opacity: 1;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li+li {
  line-height: 20px;
  display: flex;
  padding-left: 8px;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li+li::before {
  background: url(../image/icon/breadcrumb_arrow.svg) left center no-repeat;
  content: '';
  display: block;
  width: 14px;
  height: 20px;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li a {
  color: #fff;
  font-size: 15px;
  line-height: 20px;
}

.Textbook-Breadcrumb-section .Textbook-Breadcrumb li a:hover,
.Textbook-Breadcrumb-section .Textbook-Breadcrumb li a:focus {
  color: #FFC72C;
}

/* textbook carousel ***************************************************/
#block-lingkee-textbook-series-textbookcarousel {
  width: calc(60% - 48px + 40px);
  margin-bottom: 20px;
}

.TextbookCarouselSwiper {
  aspect-ratio: 16 / 9;
}

.TextbookCarouselSwiper .swiper-slide {
  border-radius: var(--textbook-radius);
  overflow: hidden;
}

.TextbookCarouselSwiper .swiper-slide a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper-horizontal>.TextbookCarouselSwiper-pagination {
  background: rgba(255, 255, 255, 0.8);
  border-radius: 16px;
  font-size: 8px;
  line-height: 8px;
  width: auto;
  padding: 4px 2px;
  left: 50%;
  bottom: 15px;
  transform: translateX(-50%);
}

.swiper-horizontal>.TextbookCarouselSwiper-pagination .swiper-pagination-bullet {
  background-color: #CFCFCF;
  opacity: 1;
}

.swiper-horizontal>.TextbookCarouselSwiper-pagination .swiper-pagination-bullet-active {
  background-color: var(--custom-theme-color);
}

/* textbook News ***************************************************/
#block-views-block-block-homepage-textbook-block-1 {
  width: calc(40% - 32px + 20px);
  aspect-ratio: 548 / 468;
  margin-bottom: 20px;
}

#block-views-block-block-homepage-textbook-block-1>div {
  height: 100%;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  height: 100%;
  padding: 20px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-header {
  margin-bottom: 30px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-header h2 {
  background: url(../image/icon/icon_flag.svg) left center no-repeat;
  font-size: 26px;
  line-height: 34px;
  margin-bottom: 0;
  padding-left: 44px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-header a {
  background: var(--custom-theme-button-color) url(../image/icon/btn_arrow_black.svg) right 15px center no-repeat;
  border-radius: 34px;
  color: #000;
  font-size: 16px;
  line-height: 34px;
  margin-left: auto;
  padding-left: 16px;
  padding-right: 30px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-header a:hover,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-header a:focus {
  /* background-color: color-mix(in srgb, var(--custom-theme-button-color) 85%, black);   */
  filter: contrast(1.3);
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content {
  height: calc(100% - 64px);
  overflow-x: hidden;
  overflow-y: auto;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row {
  padding-left: 23px;
  cursor: pointer;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row:not(:last-child) {
  border-bottom: #CFCFCF 1px solid;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body {
  position: relative;
  margin-bottom: 10px;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body::before {
  background-color: #009F4D;
  border-radius: 4px;
  content: '';
  display: block;
  height: 100%;
  max-height: 52px;
  width: 4px;
  position: absolute;
  left: -23px;
  top: 0;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body p,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .content-body p {
  line-height: calc(100% + 10px);
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body p a,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .content-body p a {
  color: #009F4D;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body p a:hover,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body p a:focus,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .content-body p a:hover,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .content-body p a:focus {
  color: #FFC72C;
  text-decoration: underline;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-body :last-child {
  margin-bottom: 0;
}

#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .views-field-created .field-content,
#block-views-block-block-homepage-textbook-block-1 .view-block-homepage-textbook .view-content .views-row .card-news .content-date time {
  color: #909090;
  font-size: 15px;
  line-height: 1.467;
  display: block;
}

/* textbook data box ***************************************************/
#block-lingkee-textbook-series-textbookdatabox {
  width: 100%;
  margin-bottom: 40px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul {
  display: flex;
  margin-bottom: 0;
  padding-left: 0;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li {
  background-color: #fff;
  background-repeat: no-repeat;
  border: var(--custom-theme-color) 1px solid;
  border-radius: var(--textbook-radius);
  list-style: none;
  width: calc(20% - 16px);
  overflow: hidden;
  padding: 17px 20px 13px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li+li {
  margin-left: 20px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.popular-downloads {
  background-image: url(../image/icon/function_btn_top_download.svg);
  background-position: right 20px bottom 15px;
  cursor: pointer;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.my-downloads {
  background-image: url(../image/icon/function_btn_download.svg);
  background-position: right 21px bottom 17px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.student-downloads {
  background-image: url(../image/icon/function_btn_student.svg);
  background-position: right 24px bottom 14px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.my-bookmarks {
  background-image: url(../image/icon/function_btn_bookmark.svg);
  background-position: right 21px bottom 18px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.question-bank {
  background-image: url(../image/icon/function_btn_test.svg);
  background-position: right 19px bottom 15px;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li P {
  line-height: 1.375;
  margin-bottom: 0;
}

#block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li .data {
  color: var(--custom-theme-color);
  font-size: 36PX;
  font-weight: 700;
  line-height: 1;
}

/* textbook quick filter ***************************************************/
#block-lingkee-textbook-series-textbookquickfilter {
  width: 100%;
  margin-bottom: 40px;
}

#block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section h2 {
  font-size: 26px;
  line-height: calc(100% + 5px);
  margin-bottom: 37px;
}

#block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  margin-bottom: 0;
  padding-left: 0;
}

#block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li {
  list-style: none;
  width: calc(16.667% - 16.67px);
}

#block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li {
  background-color: #fff;
  border-radius: var(--textbook-radius);
  display: block;
  overflow: hidden;
  cursor: pointer;
}

#block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li img {
  display: block;
  width: 100%;
  aspect-ratio: 216 / 120;
  object-fit: cover;
}

/* textbook content ***************************************************/
body:not(.page-node-330) .textbook-view-content {
  padding-bottom: 100px;
}

.textbook-view-content .textbook-sidebar-first {
  width: min(25%, 350px);
  padding-right: 20px;
}

.textbook-view-content .textbook-sidebar-first .region-textbook-sidebar-first {
  height: 100%;
  position: relative;
}

.textbook-view-content .textbook-sidebar-second {
  width: calc(100% - min(25%, 350px));
}

#block-lingkee-textbook-series-textbooksidebarmenu {
  background-color: var(--custom-theme-color);
  background-image: var(--custom-theme-icon-image);
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  border-radius: var(--textbook-radius);
  height: 600px;
  /* max-height: 840px; */
  padding: 7px 0;
  overflow: hidden;
}

/* scrollbar setting */
#block-lingkee-textbook-series-textbooksidebarmenu {
  overflow-y: auto;
  /* scrollbar-width: thin; auto | thin | none */
  scrollbar-color: var(--custom-theme-color) var(--custom-theme-background-color);
  /* thumb color, track color */
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section input {
  display: none;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .taxonomy-menu-header {
  color: #fff;
  line-height: 22px;
  display: flex;
  padding: 13px 20px;
  cursor: pointer;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2-header {
  position: relative;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-3-header {
  padding: 12px 20px 12px 37px;
  position: relative;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2.active .level-2-header::before,
#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-3.active .level-3-header::before {
  background-color: var(--custom-theme-button-color);
  border-radius: 4px;
  content: '';
  display: block;
  width: 4px;
  position: absolute;
  left: 20px;
  top: 13px;
  bottom: 13px;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .taxonomy-menu-header .menu-icon {
  flex: 0 0 auto;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .taxonomy-menu-header .menu-icon img {
  display: block;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-1-header .menu-title {
  padding-left: 8px;
  padding-right: 8px;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2-header .menu-title {
  padding-right: 8px;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2.active .level-2-header .menu-title {
  padding-left: 17px;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .taxonomy-menu-item .taxonomy-menu-header .menu-chevron {
  background: url(../image/icon/menu_chevron_down.svg) center center no-repeat;
  text-indent: -9999px;
  flex: 0 0 auto;
  display: block;
  width: 14px;
  height: 22px;
  margin-left: auto;
  overflow: hidden;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-1.expanded>.taxonomy-menu-header .menu-chevron,
#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2.expanded>.taxonomy-menu-header .menu-chevron {
  transform: rotate(180deg);
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-1-children {
  background-color: var(--custom-theme-color-dark-lv1);
  padding-top: 5px;
  padding-bottom: 5px;
}

#block-lingkee-textbook-series-textbooksidebarmenu .textbook-sidebar-menu-section .level-2-children {
  background-color: var(--custom-theme-color-dark-lv2);
  padding-top: 5px;
  padding-bottom: 5px;
}

.teaching-materials-list-section ul {
  margin-bottom: 0;
  padding-left: 0;
}

.teaching-materials-list-section ul li {
  list-style: none;
}

.teaching-materials-list-section .list-header-filter {
  background-color: var(--custom-theme-background-color);
  position: relative;
  z-index: 2;
}

.teaching-materials-list-section .list-header-filter .list-header-filter-content {
  background-color: #fff;
  border-radius: var(--textbook-radius);
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  padding: 20px;
  position: relative;
  z-index: 2;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section {
  width: 100%;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul {
  display: flex;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li+li {
  margin-left: 20px;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li a {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  display: block;
  padding: 7px 25px 6px;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li a img {
  height: 40px;
  opacity: .3;
  transition: all 0.2s ease;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li.active a img,
.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li:not(.active) a:hover img,
.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li:not(.active) a:focus img {
  opacity: 1;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li a img~span {
  border: #EAEAEA 1px solid;
  border-radius: 24px;
  display: block;
  width: 20px;
  height: 20px;
  float: right;
  margin: 10px 0 10px 10px;
  transition: all 0.2s ease;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section ul li.active a img~span {
  background: var(--custom-theme-button-color) url(../image/icon/active_click_sm.svg) center center no-repeat;
  border: var(--custom-theme-button-color) 1px solid;
}

.teaching-materials-list-section .list-header-filter .textbook-icon-section {
  margin-bottom: 10px;
}

.teaching-materials-list-section .list-header-filter label {
  line-height: 1;
  margin-bottom: 5px;
}

.teaching-materials-list-section .list-header-filter .list-grade {
  flex: 0 0 auto;
  margin-right: 20px;
}

.teaching-materials-list-section .list-header-filter .list-grade ul {
  display: flex;
}

.teaching-materials-list-section .list-header-filter .list-grade ul li {
  border: #CFCFCF 1px solid;
  line-height: 1;
  text-align: center;
  min-width: 80px;
  padding: 11px 15px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.teaching-materials-list-section .list-header-filter .list-grade ul li:not(:last-child) {
  border-right: none;
}

.teaching-materials-list-section .list-header-filter .list-grade ul li:first-child {
  border-radius: 10px 0 0 10px;
}

.teaching-materials-list-section .list-header-filter .list-grade ul li:last-child {
  border-radius: 0 10px 10px 0;
}

.teaching-materials-list-section .list-header-filter .list-grade ul li.active,
.teaching-materials-list-section .list-header-filter .list-grade ul li:hover,
.teaching-materials-list-section .list-header-filter .list-grade ul li:focus {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.teaching-materials-list-section .list-header-filter .list-unit {
  flex: 1 1 auto;
  margin: 0 auto;
  position: relative;
}

.teaching-materials-list-section .list-header-filter .list-unit .result {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  color: #909090;
  line-height: 1;
  padding: 11px 18px;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.teaching-materials-list-section .list-header-filter .list-unit.active .result,
.teaching-materials-list-section .list-header-filter .list-unit .result:hover,
.teaching-materials-list-section .list-header-filter .list-unit .result:focus {
  color: #000;
}

.teaching-materials-list-section .list-header-filter .list-unit .result::after {
  content: '';
  background: url(../image/icon/menu_chevron_down_black.svg) center center no-repeat;
  display: block;
  width: 14px;
  height: 22px;
  position: absolute;
  right: 15px;
  top: 9px;
}

.teaching-materials-list-section .list-header-filter .list-unit.active .result::after {
  transform: rotate(180deg);
}

.teaching-materials-list-section .list-header-filter .list-unit ul {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  padding: 20px;
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 5px);
}

.teaching-materials-list-section .list-header-filter .list-unit ul li {
  line-height: 22px;
  cursor: pointer;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.teaching-materials-list-section .list-header-filter .list-unit ul li:hover,
.teaching-materials-list-section .list-header-filter .list-unit ul li:focus {
  color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .list-header-filter .list-unit ul li+li {
  margin-top: 15px;
}

.teaching-materials-list-section .list-header-filter .list-header-filter-content>a:last-child {
  background: url(../image/icon/hot_quick_filter.svg) 14px center no-repeat;
  border: #CFCFCF 1px solid;
  color: #000;
  border-radius: 10px;
  line-height: 1;
  flex: 0 0 auto;
  display: block;
  padding: 11px 14px 11px 50px;
  margin-left: 20px;
}

.teaching-materials-list-section .list-header-filter .list-header-filter-content>a:last-child:hover,
.teaching-materials-list-section .list-header-filter .list-header-filter-content>a:last-child:focus {
  color: var(--custom-theme-button-color);
}

/* header filter */
.list-header-filter ul {
  padding-left: 0;
  margin-bottom: 0;
}

.list-header-filter ul li {
  list-style: none;
}

.teaching-materials-list-section .list-header-filter .content-header {
  position: relative;
  z-index: 1;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected {
  background-color: #fff;
  border-radius: var(--textbook-radius);
  display: flex;
  margin-top: 10px;
  padding: 10px 20px;
  position: relative;
  z-index: 3;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected>ul {
  display: flex;
  width: 100%;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected>ul>li+li {
  margin-left: 10px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected>ul>li:nth-child(2) {
  flex: 1 1 auto;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .selected-materials {
  background: url(../image/icon/icons_files.svg) left center no-repeat;
  font-size: 18px;
  line-height: 30px;
  display: block;
  padding: 5px 0 5px 40px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .selected-materials span {
  font-weight: 700;
  display: inline-block;
  padding: 0 4px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select {
  position: relative;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select .select-result {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  color: #909090;
  line-height: 1;
  padding: 11px 18px;
  cursor: pointer;
  position: relative;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select .select-result::after {
  content: '';
  background: url(../image/icon/menu_chevron_down_black.svg) center center no-repeat;
  display: block;
  width: 14px;
  height: 22px;
  position: absolute;
  right: 15px;
  top: 9px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select.active .select-result::after {
  transform: rotate(180deg);
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select ul {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  padding: 20px;
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 5px);
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select ul li {
  line-height: 22px;
  cursor: pointer;
  transition: all 0.2s ease;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select ul li+li {
  margin-top: 15px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select ul li:hover,
.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-inline-select ul li:focus {
  color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-submit {
  background-color: var(--custom-theme-button-color);
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  padding: 12px 18px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-cancel {
  background-color: #EEEEEE;
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  padding: 12px 18px;
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-submit:hover,
.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-submit:focus {
  color: #000;
  filter: contrast(1.3);
}

.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-cancel:hover,
.teaching-materials-list-section .list-header-filter .content-header>.list-selected .list-select-cancel:focus {
  background-color: color-mix(in srgb, #EEEEEE 90%, black);
  color: #000;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary {
  background-color: #fff;
  border-radius: var(--textbook-radius);
  display: flex;
  margin-top: 10px;
  padding: 12px 20px;
  position: relative;
  z-index: 3;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul {
  display: flex;
  width: 100%;
  column-gap: 20px;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li {
  margin-right: auto;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li+li {
  margin: 3px 0;
  padding-left: 20px;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li:last-child {
  border-left: #CFCFCF 1px solid;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-materials {
  background: url(../image/icon/icon_selected_materials.svg) left center no-repeat;
  font-size: 18px;
  line-height: 30px;
  padding-left: 40px;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-bookmarks a,
.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-exampapers a {
  font-size: 16px;
  line-height: 24px;
  display: block;
  padding-left: 29px;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-bookmarks a:hover,
.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-bookmarks a:focus,
.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-exampapers a:hover,
.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-exampapers a:focus {
  color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-bookmarks a span,
.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-exampapers a span {
  font-size: 24px;
  font-weight: 500;
  display: inline-block;
  margin-left: 15px;
  vertical-align: top;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-bookmarks a {
  background: url(../image/icon/icon_bookmark_24x24_yellow.svg) left center no-repeat;
}

.teaching-materials-list-section .list-header-filter .content-header>.selected-summary .selected-exampapers a {
  background: url(../image/icon/icon_download_24x24_yellow.svg) left center no-repeat;
}

.teaching-materials-list-section .list-header-filter .content-header>.filter-content {
  background-color: var(--custom-theme-background-color);
  display: flex;
  padding-top: 30px;
  padding-bottom: 10px;
  position: relative;
  z-index: 1;
}

.teaching-materials-list-section .list-header-filter .content-header>.filter-content>.title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  padding: 5px 20px 5px 0;
}

.teaching-materials-list-section .list-header-filter .content-header>.filter-content>ul,
.list-header-filter>ul {
  flex: 0 0 auto;
  display: flex;
  margin-left: auto;
}

.teaching-materials-list-section .list-header-filter .content-header>.filter-content>ul>li>span,
.list-header-filter>ul>li>span {
  background-color: #fff;
  background-position: 16px center;
  background-repeat: no-repeat;
  border-radius: 10px;
  line-height: 1;
  display: block;
  padding: 11px 16px 11px 40px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.list-header-filter>ul>li>span {
  border: #CFCFCF 1px solid;
}

.teaching-materials-list-section .list-header-filter .content-header>.filter-content>ul>li.active>span,
.teaching-materials-list-section .list-header-filter .content-header>.filter-content>ul>li>span:hover,
.teaching-materials-list-section .list-header-filter .content-header>.filter-content>ul>li>span:focus,
.list-header-filter>ul>li.active>span,
.list-header-filter>ul>li>span:hover,
.list-header-filter>ul>li>span:focus {
  background-color: var(--custom-theme-button-color);
}

.list-header-filter>ul>li.active>span,
.list-header-filter>ul>li>span:hover,
.list-header-filter>ul>li>span:focus {
  border-color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .filter-section>span,
.list-header-filter>ul>li.filter-section>span {
  background-image: url(../image/icon/icon_filter.svg);
}

.teaching-materials-list-section .filter-section.active>span,
.teaching-materials-list-section .filter-section>span:hover,
.teaching-materials-list-section .filter-section>span:focus,
.list-header-filter>ul>li.filter-section.active>span,
.list-header-filter>ul>li.filter-section>span:hover,
.list-header-filter>ul>li.filter-section>span:focus {
  background-image: url(../image/icon/icon_filter_black.svg);
}

.teaching-materials-list-section .search-section>span,
.list-header-filter>ul>li.search-section>span {
  background-image: url(../image/icon/icon_search.svg);
}

.teaching-materials-list-section .search-section.active>span,
.teaching-materials-list-section .search-section>span:hover,
.teaching-materials-list-section .search-section>span:focus,
.list-header-filter>ul>li.search-section.active>span,
.list-header-filter>ul>li.search-section>span:hover,
.list-header-filter>ul>li.search-section>span:focus {
  background-image: url(../image/icon/icon_search_black.svg);
}

.teaching-materials-list-section .filter-content>ul>li+li,
.list-header-filter>ul>li+li {
  margin-left: 10px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content,
.list-header-filter>ul>li>.filter-section-content,
.list-header-filter>ul>li>.search-section-content {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
  width: min(100%, 425px);
  padding: 20px;
  position: absolute;
  right: 0;
  top: calc(100% - 5px);
  z-index: 4;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-header,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-header,
.list-header-filter>ul>li>.filter-section-content .filter-section-header,
.list-header-filter>ul>li>.search-section-content .search-section-header {
  font-size: 20px;
  line-height: 30px;
  display: flex;
  margin-bottom: 25px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-header span:first-child,
.list-header-filter>ul>li>.filter-section-content .filter-section-header span:first-child {
  background: url(../image/icon/icon_filter_black_lg.svg) left center no-repeat;
  background-size: 20px auto;
  display: block;
  padding-left: 30px;
}

.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-header span:first-child,
.list-header-filter>ul>li>.search-section-content .search-section-header span:first-child {
  background: url(../image/icon/icon_search_black_lg.svg) left center no-repeat;
  background-size: 20px auto;
  display: block;
  padding-left: 30px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-header span:last-child,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-header span:last-child,
.list-header-filter>ul>li>.filter-section-content .filter-section-header span:last-child,
.list-header-filter>ul>li>.search-section-content .search-section-header span:last-child {
  background-color: #EAEAEA;
  background-image: url(../image/icon/close.svg);
  background-repeat: no-repeat;
  border-radius: 30px;
  display: block;
  width: 30px;
  height: 30px;
  margin-left: auto;
  overflow: hidden;
  text-indent: -9999px;
  cursor: pointer;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-header span:last-child:hover,
.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-header span:last-child:focus,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-header span:last-child:hover,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-header span:last-child:focus,
.list-header-filter>ul>li>.filter-section-content .filter-section-header span:last-child:hover,
.list-header-filter>ul>li>.filter-section-content .filter-section-header span:last-child:focus,
.list-header-filter>ul>li>.search-section-content .search-section-header span:last-child:hover,
.list-header-filter>ul>li>.search-section-content .search-section-header span:last-child:focus {
  background-color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body,
.list-header-filter>ul>li>.filter-section-content .filter-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 25px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .file-type,
.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .bookmark-status,
.list-header-filter>ul>li>.filter-section-content .filter-section .file-type,
.list-header-filter>ul>li>.filter-section-content .filter-section .bookmark-status {
  width: 100%;
  margin-bottom: 25px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .sort-by,
.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .upload-date,
.list-header-filter>ul>li>.filter-section-content .filter-section .sort-by,
.list-header-filter>ul>li>.filter-section-content .filter-section .upload-date {
  width: calc(50% - 5px);
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body label,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content label,
.list-header-filter>ul>li>.filter-section-content .filter-section label,
.list-header-filter>ul>li>.search-section-content label,
.list-header-filter .label {
  line-height: 1;
  display: block;
  margin-bottom: 10px;
  font-weight: 400;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .file-type ul,
.list-header-filter>ul>li>.filter-section-content .filter-section .file-type ul {
  display: flex;
  flex-wrap: wrap;
  row-gap: 15px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .file-type ul li,
.list-header-filter>ul>li>.filter-section-content .filter-section .file-type ul li {
  width: 50%;
  position: relative;
  padding-left: 26px;
  cursor: pointer;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .file-type ul li::before,
.list-header-filter>ul>li>.filter-section-content .filter-section .file-type ul li::before {
  content: '';
  width: 16px;
  height: 16px;
  border: #909090 1px solid;
  border-radius: 1px;
  display: block;
  position: absolute;
  left: 0;
  top: 3px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body .file-type ul li.active::before,
.list-header-filter>ul>li>.filter-section-content .filter-section .file-type ul li.active::before {
  background-color: var(--custom-theme-button-color, #007bff);
  border-color: var(--custom-theme-button-color, #007bff);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='white' d='M10 3L4.5 8.5 2 6l1.5-1.5L4.5 6l4-4z'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 12px 12px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body select,
.list-header-filter>ul>li>.filter-section-content .filter-section select {
  appearance: none;
  background: #fff url(../image/icon/menu_chevron_down_black.svg) right 16px center no-repeat;
  border-color: #CFCFCF;
  border-radius: 10px;
  color: #909090;
  line-height: 20px;
  width: 100%;
  padding: 9px 15px 9px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body select option,
.list-header-filter>ul>li>.filter-section-content .filter-section select option {
  line-height: 1;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-body select option:checked,
.list-header-filter>ul>li>.filter-section-content .filter-section select option:checked {
  background: var(--custom-theme-color);
  color: #fff;
}

.teaching-materials-list-section .filter-content>ul>li>.search-section-content input,
.list-header-filter>ul>li>.search-section-content input {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  line-height: 20px;
  width: 100%;
  margin-bottom: 25px;
  padding: 9px 15px 9px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer,
.list-header-filter>ul>li>.search-section-content .search-section-footer {
  display: flex;
  justify-content: flex-end;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer button+button,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer button+button,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer button+button,
.list-header-filter>ul>li>.search-section-content .search-section-footer button+button {
  margin-left: 10px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .clear-button,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .clear-button,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .clear-button,
.list-header-filter>ul>li>.search-section-content .search-section-footer .clear-button {
  background: none;
  border: none;
  line-height: 1;
  padding: 12px 10px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .clear-button:hover,
.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .clear-button:focus,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .clear-button:hover,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .clear-button:focus,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .clear-button:hover,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .clear-button:focus,
.list-header-filter>ul>li>.search-section-content .search-section-footer .clear-button:hover,
.list-header-filter>ul>li>.search-section-content .search-section-footer .clear-button:focus {
  color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .search-button,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .search-button,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .search-button,
.list-header-filter>ul>li>.search-section-content .search-section-footer .search-button {
  background-color: var(--custom-theme-button-color);
  border: none;
  border-radius: 10px;
  line-height: 1;
  padding: 12px;
  min-width: 100px;
}

.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .search-button:hover,
.teaching-materials-list-section .filter-content>ul>li>.filter-section-content .filter-section-footer .search-button:focus,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .search-button:hover,
.teaching-materials-list-section .filter-content>ul>li>.search-section-content .search-section-footer .search-button:focus,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .search-button:hover,
.list-header-filter>ul>li>.filter-section-content .filter-section-footer .search-button:focus,
.list-header-filter>ul>li>.search-section-content .search-section-footer .search-button:hover,
.list-header-filter>ul>li>.search-section-content .search-section-footer .search-button:focus {
  filter: contrast(1.3);
}

/* header filter end */
.teaching-materials-list-section .list-content {
  position: relative;
  z-index: 1;
}

.teaching-materials-list-section .list-content .content {
  position: relative;
}

.teaching-materials-list-section .list-content .views-table {
  width: 100%;
  border-radius: var(--textbook-radius);
  overflow: hidden;
}

.teaching-materials-list-section .list-content .views-table thead tr {
  background-color: #F8F8F8;
}

.teaching-materials-list-section .list-content .views-table thead tr th {
  font-weight: 400;
  line-height: 1;
  padding: 20px 15px;
}

.teaching-materials-list-section .list-content .views-table tbody tr td {
  background-color: #fff;
  line-height: 1.25;
  padding: 17px 15px;
  vertical-align: top;
}

.teaching-materials-list-section .list-content .views-table thead tr th:first-child,
.teaching-materials-list-section .list-content .views-table tbody tr td:first-child {
  width: 50px;
  padding-left: 20px;
}

.teaching-materials-list-section .list-content .views-table thead tr th:nth-child(2),
.teaching-materials-list-section .list-content .views-table tbody tr td:nth-child(2) {
  width: 115px;
}

.teaching-materials-list-section .list-content .views-table thead tr th:last-child,
.teaching-materials-list-section .list-content .views-table tbody tr td:last-child {
  text-align: center;
  width: 110px;
  white-space: nowrap;
}

.teaching-materials-list-section .list-content .views-table thead tr th:nth-last-child(2),
.teaching-materials-list-section .list-content .views-table tbody tr td:nth-last-child(2),
.teaching-materials-list-section .list-content .views-table thead tr th:nth-last-child(3),
.teaching-materials-list-section .list-content .views-table tbody tr td:nth-last-child(3) {
  width: 66px;
}

.teaching-materials-list-section .list-content .views-table thead tr th:last-child,
.teaching-materials-list-section .list-content .views-table tbody tr td:last-child {
  padding-right: 20px;
}

.teaching-materials-list-section .list-content .views-table thead [type="checkbox"] {
  accent-color: var(--custom-theme-color);
  width: 16px;
  height: 16px;
  display: block;
}

.teaching-materials-list-section .list-content .views-table tbody [type="checkbox"] {
  accent-color: var(--custom-theme-color);
  width: 16px;
  height: 16px;
  display: block;
  margin-top: 2px;
}

/* table empty */
.teaching-materials-list-section .list-content .views-table tbody tr .table-empty {
  background-color: #fff;
  height: 445px;
  text-align: center;
  vertical-align: middle;
}

.teaching-materials-list-section .list-content .views-table tbody tr .table-empty img,
.teaching-materials-list-section .empty-content img {
  display: block;
  width: auto;
  height: 65px;
  margin: 0 auto 40px;
}

.teaching-materials-list-section .empty-content p {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}

.teaching-materials-list-section .empty-content span {
  color: #5A5A5A;
  line-height: 1.2;
  text-align: center;
  display: block;
}

/* table date */
.teaching-materials-list-section .list-content .views-table tbody tr {
  border-top: #CFCFCF 1px solid;
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-date {
  color: #5A5A5A;
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-title {
  min-width: 300px;
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-title~td {
  text-align: center;
  padding-top: 9px;
  padding-bottom: 9px;
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-bookmark div,
.teaching-materials-list-section .list-content .views-table tbody tr .list-preview div {
  background-color: #F3F3F3;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-bookmark div {
  background-image: url(../image/icon/icon_bookmark.svg);
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-preview div {
  background-image: url(../image/icon/icon_preview.svg);
}

.teaching-materials-list-section .list-content .views-table tbody tr .list-bookmark div:hover,
.teaching-materials-list-section .list-content .views-table tbody tr .list-bookmark div:focus,
.teaching-materials-list-section .list-content .views-table tbody tr .list-preview div:hover,
.teaching-materials-list-section .list-content .views-table tbody tr .list-preview div:focus {
  background-color: var(--custom-theme-button-color);
}

/* .teaching-materials-list-section .list-content .views-table tbody tr .list-file-type div {
  background-image: url(../image/icon/download_word.svg);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  display: inline-block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
} */
.list-content .views-table tbody tr .list-file-type>ul {
  display: flex;
  justify-content: center;
  margin-bottom: 0;
  padding-left: 0;
}

.list-content .views-table tbody tr .list-file-type>ul>li {
  width: 36px;
  height: 36px;
  cursor: pointer;
  display: block;
}

.list-content .views-table tbody tr .list-file-type>ul>li>a {
  background-position: center;
  background-repeat: no-repeat;
  text-indent: -9999px;
  display: inline-block;
  width: 36px;
  height: 36px;
}

.list-content .views-table tbody tr .list-file-type>ul>li.word>a {
  background-image: url(../image/icon/download_word.svg);
}

.list-content .views-table tbody tr .list-file-type>ul>li.powerpoint>a {
  background-image: url(../image/icon/download_ppt.svg);
}

.list-content .views-table tbody tr .list-file-type>ul>li.pdf>a {
  background-image: url(../image/icon/download_pdf.svg);
}

.list-content .views-table tbody tr .list-file-type>ul>li.mp4>a {
  background-image: url(../image/icon/download_video.svg);
}

.list-content .views-table tbody tr .list-file-type>ul>li.youtube>a {
  background-image: url(../image/icon/download_youtube.svg);
}

.list-content .views-table tbody tr .list-file-type>ul>li.googleForm>a {
  background-image: url(../image/icon/video_google_forms_28x28.svg);
  background-size: 24px 24px;
}

.list-content .views-table tbody tr .list-file-type>ul>li.ibrain>a {
  background-image: url(../image/icon/video_ibrain_28x28.svg);
  background-size: 24px 24px;
}

.list-content .views-table tbody tr .list-file-type>ul>li.kahoot>a {
  background-image: url(../image/icon/video_kahoot_28x28.svg);
  background-size: 24px 24px;
}

.list-content .views-table tbody tr .list-file-type>ul>li.has-icon>a {
  position: relative;
}

.list-content .views-table tbody tr .list-file-type>ul>li.has-icon>a::after {
  border-radius: 4px;
  font-size: 11px;
  line-height: 12px;
  text-indent: 0;
  display: block;
  padding: 3px 4px;
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
}

.list-content .views-table tbody tr .list-file-type>ul>li.has-icon.teacher_only>a::after {
  background-color: #009F4D;
  color: #fff;
  content: '老師';
}

.list-content .views-table tbody tr .list-file-type>ul>li.has-icon.teacher_student>a::after {
  background-color: #FFC72C;
  color: #000;
  content: '學生';
}

[lang="en-gb"] .list-content .views-table tbody tr .list-file-type>ul>li.has-icon.teacher_only>a::after {
  content: 'Teacher';
  font-size: 8px;
}

[lang="en-gb"] .list-content .views-table tbody tr .list-file-type>ul>li.has-icon.teacher_student>a::after {
  content: 'Student';
  font-size: 8px;
}

/* 教材列表底部「已載入所有教材，返回教材頂部」提示 */
.teaching-materials-list-section .list-content .content .materials-loaded-tip {
  background: #fff;
  border: #EAEAEA 1px solid;
  border-radius: 40px;
  color: #5A5A5A;
  font-size: 15px;
  line-height: 20px;
  display: none;
  width: 282px;
  padding: 10px 20px 10px 50px;
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: 9999;
  transform: translate(-50%, 50%);
  cursor: pointer;
  transition: all 0.2s ease;
}

.teaching-materials-list-section .list-content .content .materials-loaded-tip:hover,
.teaching-materials-list-section .list-content .content .materials-loaded-tip:focus {
  color: var(--custom-theme-button-color);
}

.teaching-materials-list-section .list-content .content .materials-loaded-tip .arrow {
  background-color: #EAEAEA;
  background-image: url(../image/icon/arrow_top.svg);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: var(--textbook-radius);
  float: left;
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.2s ease;
}

.teaching-materials-list-section .list-content .content .materials-loaded-tip:hover .arrow,
.teaching-materials-list-section .list-content .content .materials-loaded-tip:focus .arrow {
  background-color: var(--custom-theme-button-color);
}

/* ===== 教材 ===== */
.teaching-materials-list-section .list-content .views-table tbody tr .list-title>span {
  background-color: var(--custom-theme-button-color);
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  color: #000;
  padding: 3px 6px;
  border-radius: 2px;
  margin-right: 10px;
}

.list-content .views-table tbody tr .list-bookmark div:hover,
.list-content .views-table tbody tr .list-bookmark div.active {
  background-color: var(--custom-theme-button-color);
}

/* Textbook Section ***************************************************/
#block-lingkee-textbook-series-textbookmybookmarks,
#block-lingkee-textbook-series-textbookmydownload,
#block-lingkee-textbook-series-textbookschoolexampaper,
#block-lingkee-textbook-series-textbookstudentdownload {
  width: 100%;
}

.table-section {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  padding: 20px;
}

.table-section .list-header-filter {
  display: flex;
  margin-bottom: 10px;
  padding-bottom: 10px;
  position: relative;
}

.table-section .list-header-filter .view-title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  padding: 5px 20px 5px 40px;
}

.table-section .list-selected {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  display: flex;
  margin-bottom: 20px;
  padding: 10px 15px;
  position: relative;
  z-index: 3;
}

.table-section .list-selected>ul {
  display: flex;
  width: 100%;
  margin-bottom: 0;
  padding-left: 0;
}

.table-section .list-selected>ul>li {
  list-style: none;
}

.table-section .list-selected>ul>li+li {
  margin-left: 10px;
}

.table-section .list-selected>ul>li:first-child {
  flex: 1 1 auto;
}

.table-section .list-selected .selected-materials {
  background: url(../image/icon/icons_files.svg) left center no-repeat;
  font-size: 18px;
  line-height: 30px;
  display: block;
  padding: 5px 0 5px 40px;
}

.table-section .list-selected .selected-materials span {
  font-weight: 700;
  display: inline-block;
  padding: 0 4px;
}

.table-section .list-selected .delete-selected-button {
  background-color: var(--custom-theme-button-color);
  border: none;
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  padding: 12px 18px;
}

.table-section .list-selected .clear-selected-button {
  background-color: #EEEEEE;
  border: none;
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  padding: 12px 18px;
}

.table-section .list-selected .delete-selected-button:hover,
.table-section .list-selected .delete-selected-button:focus {
  color: #000;
  filter: contrast(1.3);
}

.table-section .list-selected .clear-selected-button:hover,
.table-section .list-selected .clear-selected-button:focus {
  background-color: color-mix(in srgb, #EEEEEE 90%, black);
  color: #000;
}

.table-section .list-content .views-table {
  width: 100%;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  overflow: hidden;
  /* Crucial: border-radius only works with 'separate' */
  border-collapse: separate;
  /* Optional: removes the default spacing between cells */
  border-spacing: 0;
}

.table-section .list-content .views-table thead tr {
  background-color: #F8F8F8;
}

.table-section .list-content .views-table thead tr th {
  font-weight: 400;
  line-height: 1;
  padding: 20px 15px;
}

.table-section .list-content .views-table tbody tr td {
  background-color: #fff;
  line-height: 1.25;
  padding: 17px 15px;
  vertical-align: top;
}

.table-section .list-content .views-table tbody tr td {
  border-top: #CFCFCF 1px solid;
}

.table-section .list-content .views-table thead tr .views-field,
.table-section .list-content .views-table tbody tr .views-field {
  width: 45px;
}

.table-section .list-content .views-table thead tr .views-field [type="checkbox"] {
  accent-color: var(--custom-theme-color);
  width: 16px;
  height: 16px;
  display: block;
}

.table-section .list-content .views-table tbody tr .views-field [type="checkbox"] {
  accent-color: var(--custom-theme-color);
  width: 16px;
  height: 16px;
  display: block;
  margin-top: 2px;
}

.table-section .list-content .views-table thead tr .list-bookmarks-date,
.table-section .list-content .views-table tbody tr .list-bookmarks-date,
.table-section .list-content .views-table thead tr .list-creation-date,
.table-section .list-content .views-table tbody tr .list-creation-date,
.table-section .list-content .views-table thead tr .list-date,
.table-section .list-content .views-table tbody tr .list-date,
.table-section .list-content .views-table thead tr .list-modified-date,
.table-section .list-content .views-table tbody tr .list-modified-date,
.table-section .list-content .views-table thead tr .list-change-date,
.table-section .list-content .views-table tbody tr .list-change-date {
  width: 115px;
  white-space: nowrap;
}

.table-section .list-content .views-table thead tr .list-creator,
.table-section .list-content .views-table tbody tr .list-creator {
  width: 78px;
  white-space: nowrap;
}

.table-section .list-content .views-table tbody tr .list-bookmarks-date,
.table-section .list-content .views-table tbody tr .list-creation-date,
.table-section .list-content .views-table tbody tr .list-date,
.table-section .list-content .views-table tbody tr .list-modified-date,
.table-section .list-content .views-table tbody tr .list-change-date,
.table-section .list-content .views-table tbody tr .list-creator {
  color: #5A5A5A;
}

.table-section .list-content .views-table tbody tr .list-title {
  min-width: 300px;
}

.table-section .list-content .views-table tbody tr .list-title .list-title-note {
  color: #5A5A5A;
  font-size: 15px;
  margin-top: 5px;
}

.table-section .list-content .views-table thead tr .list-number-score,
.table-section .list-content .views-table tbody tr .list-number-score {
  width: 150px;
}

.table-section .list-content .views-table tbody tr .list-number-score {
  padding-top: 12px;
  padding-bottom: 12px;
}

.table-section .list-content .views-table tbody tr .list-number-score div {
  background-color: #E0F1FB;
  border-radius: 30px;
  line-height: 22px;
  width: 120px;
  padding: 4px 5px;
}

.table-section .list-content .views-table tbody tr .list-number-score div span {
  text-align: center;
  display: inline-block;
  width: 50%;
}

.table-section .list-content .views-table tbody tr .list-number-score div span+span {
  border-left: #AFD6ED 1px solid;
}

.table-section .list-content .views-table tbody tr .list-bookmark,
.table-section .list-content .views-table tbody tr .list-preview,
.table-section .list-content .views-table tbody tr .list-file-type,
.table-section .list-content .views-table tbody tr .list-delete,
.table-section .list-content .views-table tbody tr .list-clone,
.table-section .list-content .views-table tbody tr .list-export,
.table-section .list-content .views-table tbody tr .list-check {
  padding-top: 9px;
  padding-bottom: 9px;
}

.table-section .list-content .views-table thead tr .list-bookmark,
.table-section .list-content .views-table tbody tr .list-bookmark,
.table-section .list-content .views-table thead tr .list-preview,
.table-section .list-content .views-table tbody tr .list-preview,
.table-section .list-content .views-table thead tr .list-clone,
.table-section .list-content .views-table tbody tr .list-clone,
.table-section .list-content .views-table thead tr .list-export,
.table-section .list-content .views-table tbody tr .list-export,
.table-section .list-content .views-table thead tr .list-check,
.table-section .list-content .views-table tbody tr .list-check {
  text-align: center;
  width: 66px;
}

.table-section .list-content .views-table tbody tr .list-bookmark div,
.table-section .list-content .views-table tbody tr .list-preview div,
.table-section .list-content .views-table tbody tr .list-delete div,
.table-section .list-content .views-table tbody tr .list-clone div,
.table-section .list-content .views-table tbody tr .list-export div,
.table-section .list-content .views-table tbody tr .list-check div {
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  display: block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
}

.table-section .list-content .views-table tbody tr .list-bookmark div {
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_bookmark.svg);
}

.table-section .list-content .views-table tbody tr .list-preview div {
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_preview.svg);
}

.table-section .list-content .views-table tbody tr .list-delete div {
  background-color: #595959;
  background-image: url(../image/icon/icon_delete.svg);
}

.table-section .list-content .views-table tbody tr .list-clone div {
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_copy.svg);
}

.table-section .list-content .views-table tbody tr .list-export div {
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_export.svg);
}

.table-section .list-content .views-table tbody tr .list-bookmark div.active,
.table-section .list-content .views-table tbody tr .list-bookmark div:hover,
.table-section .list-content .views-table tbody tr .list-bookmark div:focus,
.table-section .list-content .views-table tbody tr .list-preview div:hover,
.table-section .list-content .views-table tbody tr .list-preview div:focus,
.table-section .list-content .views-table tbody tr .list-delete div:hover,
.table-section .list-content .views-table tbody tr .list-delete div:focus,
.table-section .list-content .views-table tbody tr .list-clone div:hover,
.table-section .list-content .views-table tbody tr .list-clone div:focus,
.table-section .list-content .views-table tbody tr .list-export div:hover,
.table-section .list-content .views-table tbody tr .list-export div:focus,
.textbook-StudentDownload-section .list-check>div:hover,
.textbook-StudentDownload-section .list-check>div:focus {
  background-color: var(--custom-theme-button-color);
}

.table-section .list-content .views-table thead tr th.list-file-type,
.table-section .list-content .views-table tbody tr td.list-file-type {
  text-align: center;
  width: 110px;
  white-space: nowrap;
}

.table-section .list-content .views-table tbody tr .list-file-type {
  padding-left: 9px;
  padding-right: 9px;
}

.table-section .list-content .views-table tbody tr .list-file-type div {
  background-image: url(../image/icon/download_word.svg);
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  display: inline-block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
  vertical-align: top;
}

.table-section .list-content .views-table thead tr .list-delete,
.table-section .list-content .views-table tbody tr .list-delete {
  width: 66px;
}

/* School Exampaper */
.school-exampaper-section .list-header-filter .view-title {
  background: url(../image/icon/title_icon_school.svg) left center no-repeat;
}

.school-exampaper-section .list-content .views-table thead tr .list-number-score,
.school-exampaper-section .list-content .views-table tbody tr .list-number-score {
  width: 200px;
  padding-right: 65px;
}

/* .school-exampaper-section .create-new-paper {
  margin-top: 20px;
} */
.school-exampaper-section .create-new-paper a {
  background-color: var(--custom-theme-button-color);
  background-image: url(../image/icon/icon_create.svg);
  background-position: 16px center;
  background-repeat: no-repeat;
  border-radius: 10px;
  color: #000;
  line-height: 1;
  display: block;
  width: fit-content;
  margin-left: auto;
  padding: 12px 16px 12px 40px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.school-exampaper-section .create-new-paper a:hover,
.school-exampaper-section .create-new-paper a:focus {
  filter: contrast(1.3);
}

/* Question Bank Exampaper ***************************************************/
/* TextbookCarousel */
#block-lingkee-textbook-series-textbookcarousel {
  border-radius: var(--textbook-radius);
  overflow: hidden;
}

#block-lingkee-textbook-series-question-bank-news-block-1 {
  width: calc(40% - 32px + 20px);
  aspect-ratio: 548 / 468;
  margin-bottom: 20px;
}

#block-lingkee-textbook-series-question-bank-news-block-1>div {
  height: 100%;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  height: 100%;
  padding: 20px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-header {
  margin-bottom: 30px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-header h2 {
  background: url(../image/icon/btn_hugeicons.svg) left center no-repeat;
  font-size: 26px;
  line-height: 34px;
  margin-bottom: 0;
  padding-left: 44px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-header a {
  background: var(--custom-theme-button-color) url(../image/icon/btn_arrow_black.svg) right 15px center no-repeat;
  border-radius: 34px;
  color: #000;
  font-size: 16px;
  line-height: 34px;
  margin-left: auto;
  padding-left: 16px;
  padding-right: 30px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-header a:hover,
#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-header a:focus {
  filter: contrast(1.3);
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content {
  height: calc(100% - 64px);
  overflow-x: hidden;
  overflow-y: auto;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row {
  padding-left: 23px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row:not(:last-child) {
  border-bottom: #CFCFCF 1px solid;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body {
  position: relative;
  margin-bottom: 10px;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body::before {
  background-color: #009F4D;
  border-radius: 4px;
  content: '';
  display: block;
  height: 100%;
  max-height: 52px;
  width: 4px;
  position: absolute;
  left: -23px;
  top: 0;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body p {
  line-height: calc(100% + 10px);
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body p a {
  color: #009F4D;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body p a:hover,
#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body p a:focus {
  color: #FFC72C;
  text-decoration: underline;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body :last-child {
  margin-bottom: 0;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-body img {
  max-width: 100%;
  height: auto;
}

#block-lingkee-textbook-series-question-bank-news-block-1 .view-id-block_question_bank_news .view-content .views-row .views-field-created .field-content {
  color: #909090;
  font-size: 15px;
  line-height: 1.467;
  display: block;
}

/* Question Bank Block */
#block-lingkee-textbook-series-textbookquestionbankblock {
  width: 100%;
}

.question-bank-block ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  width: 100%;
  margin-bottom: 0;
  padding-left: 0;
}

.question-bank-block ul li {
  list-style: none;
  width: calc(25% - 15px);
  height: 186px;
}

.question-bank-block ul li a {
  border-radius: var(--textbook-radius);
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.question-bank-block ul li a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.question-bank-block ul li.create-new-paper a {
  background-color: var(--custom-theme-color);
  border: var(--custom-theme-color) 1px solid;
  color: #fff;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.question-bank-block ul li.paper-list:nth-child(2) a,
.question-bank-block ul li.paper-list:nth-child(3) a {
  background-color: #fff;
  background-position: right 18px top 28px;
  background-repeat: no-repeat;
  border: var(--custom-theme-color) 1px solid;
  color: #000;
  font-size: 18px;
  line-height: 1;
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  padding: 20px 0 20px 24px;
}

.question-bank-block ul li.paper-list:nth-child(2) a {
  background-image: url(../image/icon/function_btn_test_60x60.svg);
}

.question-bank-block ul li.paper-list:nth-child(3) a {
  background-image: url(../image/icon/function_btn_school_60x60.svg);
}

.question-bank-block ul li.paper-list:nth-child(2) a span:first-child,
.question-bank-block ul li.paper-list:nth-child(3) a span:first-child {
  font-weight: 500;
}

.question-bank-block ul li.paper-list:nth-child(2) a span:nth-child(2),
.question-bank-block ul li.paper-list:nth-child(3) a span:nth-child(2) {
  color: var(--custom-theme-color);
  font-size: 36px;
  font-weight: 700;
}

.question-bank-block ul li.paper-list:nth-child(2) a span:last-child,
.question-bank-block ul li.paper-list:nth-child(3) a span:last-child {
  background-color: var(--custom-theme-color);
  border-radius: 30px 0 0 30px;
  color: #fff;
  font-size: 16px;
  margin-left: auto;
  margin-top: auto;
  padding: 12px 13px 12px 23px;
}

.question-bank-block ul li.paper-list:nth-child(2) a span:last-child::after,
.question-bank-block ul li.paper-list:nth-child(3) a span:last-child::after {
  background: url(../image/icon/arrow_right.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 8px;
  height: 16px;
  vertical-align: top;
  margin-left: 15px;
}

/* Student Download Page ***************************************************/
.textbook-StudentDownload-section #StudentDownloadTab {
  display: flex;
  justify-content: center;
  border: unset;
  margin-bottom: 15px;
}

.textbook-StudentDownload-section #StudentDownloadTab .nav-item {
  flex: 0 0 auto;
  width: 100%;
  max-width: 290px;
}

.textbook-StudentDownload-section #StudentDownloadTab .nav-link {
  border: 1px solid #CFCFCF;
  color: #000000;
  font-size: 20px;
  line-height: 1.3;
  width: 100%;
  padding: 13px 15px 12px;
  position: relative;
}

.textbook-StudentDownload-section #StudentDownloadTab>li:first-child .nav-link {
  border-radius: 10px 0 0 10px;
}

.textbook-StudentDownload-section #StudentDownloadTab>li:first-child .nav-link::before {
  background-image: url(../image/icon/icon_textbooks_active.svg);
  background-size: contain;
  background-repeat: no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 26px;
  height: 26px;
  margin-right: 10px;
}

.textbook-StudentDownload-section #StudentDownloadTab>li:first-child .nav-link.active::before {
  background-image: url(../image/icon/icon_textbooks.svg);
}

.textbook-StudentDownload-section #StudentDownloadTab>li:nth-child(2) .nav-link {
  border-radius: 0 10px 10px 0;
}

.textbook-StudentDownload-section #StudentDownloadTab>li:nth-child(2) .nav-link::before {
  background-image: url(../image/icon/icon_student_active.svg);
  background-size: contain;
  background-repeat: no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 26px;
  height: 26px;
  margin-right: 10px;
}

.textbook-StudentDownload-section #StudentDownloadTab>li:nth-child(2) .nav-link.active::before {
  background-image: url(../image/icon/icon_student.svg);
}

.textbook-StudentDownload-section #StudentDownloadTab .nav-link.active {
  background-color: var(--custom-theme-color);
  border-color: var(--custom-theme-color);
  color: #fff;
}

.textbook-StudentDownload-section #textbooks-tab-pane .section-1 thead tr th:nth-child(3),
.textbook-StudentDownload-section #student-tab-pane .section-1 thead tr th:nth-child(2),
.textbook-StudentDownload-section #student-tab-pane .list-number {
  text-align: center;
}

.textbook-StudentDownload-section #textbooks-tab-pane .section-1 thead tr th:nth-child(3),
.textbook-StudentDownload-section #textbooks-tab-pane .section-1 tbody tr td:nth-child(3),
.textbook-StudentDownload-section #student-tab-pane .section-1 thead tr th:nth-child(2),
.textbook-StudentDownload-section #student-tab-pane .section-1 tbody tr td:nth-child(2) {
  white-space: nowrap;
  width: 1%;
  padding-right: 65px;
}

.textbook-StudentDownload-section .list-check>div {
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_download_preview.svg);
  background-size: 21px;
}

.textbook-StudentDownload-section #textbooks-tab-pane .section-1 tbody .list-download-ratio {
  text-align: center;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-left: 0;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>span {
  border: unset;
  padding: 0;
  display: block;
  margin-left: 10px;
  margin-bottom: 10px;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>span:hover {
  background-color: unset;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>ul>li {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  text-align: center;
  display: block;
  width: 80px;
  padding: 11px 15px;
  cursor: pointer;
}

.textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>ul>li.active {
  background-color: var(--custom-theme-color);
  color: #fff;
  border-color: var(--custom-theme-color);
}

.textbook-StudentDownload-section .section-1 .search-section {
  margin-top: 26px;
  margin-left: 0;
}

.textbook-StudentDownload-section .section-2 {
  padding-top: 5px;
}

.textbook-StudentDownload-section .section-2 ul {
  padding-left: 0;
}

.textbook-StudentDownload-section .section-2>ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.textbook-StudentDownload-section .section-2 ul li {
  list-style: none;
}

.textbook-StudentDownload-section .section-2>ul>li:first-child {
  flex: 0 0 auto;
  width: 400px;
}

.textbook-StudentDownload-section .section-2>ul>li:nth-child(2) {
  flex: 1 1 auto;
}

.textbook-StudentDownload-section .section-2 .return {
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  padding: 11px 16px 11px 37px;
  font-size: 16px;
  line-height: 1;
  color: #000;
  display: block;
  cursor: pointer;
  margin-bottom: 15px;
  width: 100%;
  text-align: left;
  background-color: unset;
  position: relative;
}

.textbook-StudentDownload-section .section-2 .return::before {
  content: '';
  display: block;
  width: 9px;
  height: 16px;
  background-image: url(../image/icon/icon_return.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 18px;
}

.textbook-StudentDownload-section .section-2 .details {
  padding: 20px;
  border: #CFCFCF 1px solid;
  border-radius: 10px;
}

.textbook-StudentDownload-section .section-2 .details>span {
  color: #5A5A5A;
  margin-bottom: 9px;
  font-size: 16px;
  line-height: 19px;
  display: block;
}

.textbook-StudentDownload-section .section-2 .details>.title {
  color: #000;
  font-size: 24px;
  font-weight: 500;
  line-height: calc(100% + 5px);
  margin-bottom: 30px;

}

.textbook-StudentDownload-section .section-2 .details .download-details {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li {
  border-radius: 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: calc(50% - 5px);
  padding: 15px;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li:first-child {
  background-color: #D8F1FF;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li:nth-child(2) {
  background-color: #FFEDE4;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li>span:first-child {
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  width: 100%;
  margin-bottom: 24px;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li>span.number {
  font-size: 24px;
  line-height: 34px;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li>span.percentage {
  background-color: #fff;
  border-radius: 34px;
  font-size: 20px;
  font-weight: 500;
  line-height: 34px;
  padding: 0px 12px;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li:nth-child(1)>span.number,
.textbook-StudentDownload-section .section-2 .details .download-details>li:nth-child(1)>span.percentage {
  color: #0026A2;
}

.textbook-StudentDownload-section .section-2 .details .download-details>li:nth-child(2)>span.number,
.textbook-StudentDownload-section .section-2 .details .download-details>li:nth-child(2)>span.percentage {
  color: #AF2328;
}

.textbook-StudentDownload-section #textbooks-tab-pane .section-2 thead tr th:last-child,
.textbook-StudentDownload-section #textbooks-tab-pane .section-2 tbody tr td:last-child {
  white-space: nowrap;
  width: 1%;
  padding-right: 25px;
}

.textbook-StudentDownload-section #textbooks-tab-pane .section-2 thead tr th:last-child {
  text-align: center;
}

.textbook-StudentDownload-section #student-tab-pane .section-2 .download-details {
  padding: 10px;
  background-color: #D8F1FF;
  border-radius: 10px;
}

.textbook-StudentDownload-section #student-tab-pane .section-2 .download-details,
.textbook-StudentDownload-section #student-tab-pane .section-2 .download-details>span {
  display: block;
}

.textbook-StudentDownload-section #student-tab-pane .section-2 .download-details>span:nth-child(1) {
  color: #000;
  font-size: 16px;
  line-height: 1.4;
  margin-bottom: 20px;
}

.textbook-StudentDownload-section #student-tab-pane .section-2 .download-details>span:nth-child(2) {
  color: #0026A2;
  font-size: 24px;
  line-height: 1.45;
}

.textbook-StudentDownload-section .list-download-status {
  text-align: right;
  position: relative;
}

.textbook-StudentDownload-section .list-download-status::before {
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-top: -2px;
  margin-bottom: -2px;
  margin-right: 10px;
}

.textbook-StudentDownload-section .list-download-status.downloaded::before {
  background-image: url(../image/icon/icon_downloaded.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

.textbook-StudentDownload-section .list-download-status.no-download::before {
  background-image: url(../image/icon/icon_non_downloaded.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

/* Modal Popup ************************************************/
.modal .modal-xl {
  --bs-modal-width: 1400px;
}

.modal .modal-lg {
  --bs-modal-width: 980px;
}

.modal .modal-sm {
  --bs-modal-width: 690px;
}

.modal-backdrop.show {
  opacity: .7;
}

.modal-dialog>.modal-content {
  border: none;
}

.modal-dialog>.modal-content {
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  padding: 20px;
}

.modal-dialog>.modal-content .modal-content {
  background: no-repeat;
  border: none;
}

.modal .modal-body {
  padding: 0;
}

.modal .modal-header {
  border-bottom: none;
  margin-bottom: 35px;
  padding: 0;
}

.modal .modal-header .btn-close {
  background: #EAEAEA url(../image/icon/close.svg) center center no-repeat;
  border-radius: 30px;
  text-indent: -9999px;
  overflow: hidden;
  opacity: 1;
  margin-right: 0;
  padding: 7px;
  transition: all 0.2s ease;
}

.modal .modal-header .btn-close:hover,
.modal .modal-header .btn-close:focus {
  background-color: color-mix(in srgb, #EAEAEA 90%, black);
}

.modal .modal-footer {
  padding: 20px 0 0;
}

.modal .modal-footer button,
.modal .modal-footer a {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: 10px;
  color: #000;
}

.modal .modal-footer button:hover,
.modal .modal-footer button:focus,
.modal .modal-footer a:hover,
.modal .modal-footer a:focus {
  background-color: #CFCFCF;
}

.modal .modal-footer .btn-primary {
  background-color: var(--custom-theme-button-color);
  border-color: var(--custom-theme-button-color);
}

.modal .modal-footer .btn-primary:hover,
.modal .modal-footer .btn-primary:focus {
  filter: contrast(1.3);
}

/* downloads section */
.downloads-section .modal-header .modal-title {
  background: url(../image/icon/title_top_download.svg) left center no-repeat;
  font-size: 24px;
  line-height: 1.25;
  padding-left: 40px;
}

.downloads-section .modal-list {
  display: flex;
  align-items: flex-start;
}

.downloads-section .modal-list:not(:last-child) {
  border-bottom: #CFCFCF 1px solid;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.downloads-section .modal-list p {
  line-height: calc(100% + 10px);
  width: min(calc((100% - 72px) * 0.87), 500px);
  margin-bottom: 0;
}

.downloads-section .modal-list p a {
  color: #000;
  display: block;
}

.downloads-section .modal-list .btn-dl-preview {
  background: url(../image/icon/icon_download_preview.svg) left center no-repeat;
  color: #5A5A5A;
  line-height: 30px;
  display: block;
  width: fit-content;
  margin-left: auto;
  padding-left: 40px;
}

.downloads-section .modal-list p a:hover,
.downloads-section .modal-list p a:focus,
.downloads-section .modal-list .btn-dl-preview:hover,
.downloads-section .modal-list .btn-dl-preview:focus {
  color: var(--custom-theme-button-color);
}

/* Copy Modal, Delete Modal *************************************/
.modal-dialog>.modal-content>.btn-close {
  background: #EAEAEA url(../image/icon/close.svg) center center no-repeat;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  flex: 0 0 auto;
  display: block;
  width: 30px;
  height: 30px;
  margin-left: auto;
  opacity: 1;
  outline: none;
  transition: all 0.2s ease;
}

.modal-dialog>.modal-content>.btn-close:hover,
.modal-dialog>.modal-content>.btn-close:focus {
  background-color: color-mix(in srgb, #EEEEEE 90%, black);
}

.modal .modal-header-copy,
.modal .modal-header-delete,
.modal .modal-header-login-required {
  margin-bottom: 15px;
}

.modal .modal-header-copy .modal-title {
  background: url(../image/icon/modal_icon_copy.svg) 0 3px no-repeat;
  font-size: 24px;
  line-height: 35px;
  padding-left: 40px;
}

.modal .modal-header-delete .modal-title {
  background: url(../image/icon/modal_icon_delete.svg) 0 3px no-repeat;
  color: #F9423A;
  font-size: 24px;
  line-height: 35px;
  padding-left: 40px;
}

.modal .modal-header-login-required .modal-title {
  background: url(../image/icon/icon_user_login.svg) 0 3px no-repeat;
  font-size: 24px;
  line-height: 35px;
  padding-left: 40px;
}

.modal .modal-body-copy,
.modal .modal-body-delete,
.modal .modal-body-login-required {
  padding-left: 40px;
  padding-right: 60px;
}

.modal .modal-footer-copy,
.modal .modal-footer-delete,
.modal .modal-footer-login-required {
  border-top: none;
  padding-top: 0;
}

.modal .modal-footer-copy button,
.modal .modal-footer-delete button,
.modal .modal-footer-login-required button,
.modal .modal-footer-login-required a {
  min-width: 100px;
  padding: 8px 16px;
}

.modal .modal-footer .confirm-copy-btn,
.modal .modal-footer-login-required .btn-primary {
  background-color: #FFC107;
  border-color: #FFC107;
}

.modal .modal-footer .confirm-copy-btn:hover,
.modal .modal-footer .confirm-copy-btn:focus,
.modal .modal-footer-login-required .btn-primary:hover,
.modal .modal-footer-login-required .btn-primary:focus {
  background-color: #FFC107;
}

.modal .modal-footer .confirm-delete-btn {
  background-color: #dc3545;
  border-color: #dc3545;
  color: white;
}

.modal .modal-footer .confirm-delete-btn:hover,
.modal .modal-footer .confirm-delete-btn:focus {
  background-color: #dc3545;
}

/* Subject Selection Modal *************************************/
/* Version Selection Modal *************************************/
.subject-selection-modal .modal-header,
.version-selection-modal .modal-header {
  border-bottom: none;
  padding: 0 0 35px 0;
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.subject-selection-modal .modal-header .btn-close:hover,
.subject-selection-modal .modal-header .btn-close:focus,
.version-selection-modal .modal-header .btn-close:hover,
.version-selection-modal .modal-header .btn-close:focus {
  opacity: 0.7;
}

.subject-selection-modal .modal-body-content,
.version-selection-modal .modal-body-content {
  padding: 0;
}

.subject-selection-modal .subject-options {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: flex-start;
}

.subject-selection-modal .subject-option-box {
  background: #fff;
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  color: #000;
  font-size: 20px;
  text-align: center;
  display: flex;
  flex: 1 1 auto;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: calc(25% - 15px);
  cursor: pointer;
  padding: 20px;
  transition: all 0.3s ease;
  height: 150px;
}

.subject-selection-modal .subject-option-box:hover,
.subject-selection-modal .subject-option-box:focus {
  background: var(--custom-theme-color);
  color: #fff;
}

.version-selection-modal .version-selection-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.version-selection-modal .version-select-btn {
  background: #fff;
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  color: #000;
  font-size: 20px;
  text-align: center;
  display: flex;
  flex: 1;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: calc(50% - 10px);
  margin: 0;
  padding: 20px;
  transition: all 0.3s ease;
  height: 150px;
}

.version-selection-modal .version-select-btn:hover,
.version-selection-modal .version-select-btn:focus {
  background: var(--custom-theme-color);
  color: #fff;
}

/* Textbook Selection Modal ***********************************/
.textbook-selection-modal .modal-header {
  border-bottom: none;
  padding: 0 0 25px 0;
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.textbook-selection-modal .modal-header .modal-title {
  font-size: 24px;
  font-weight: normal;
  margin: 0;
  color: #000;
  flex: 1;
  font-weight: 500;
}

.textbook-selection-modal .modal-body-content {
  padding: 0;
}

.textbook-selection-modal .textbook-link {
  background-color: #fff;
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  text-decoration: none;
  display: flex;
  height: 70px;
  flex-direction: column;
  align-items: center;
  margin-bottom: 10px;
  padding: 12px 20px 11px;
  cursor: pointer;
  position: relative;
  transition: all 0.3s ease;
}

.textbook-selection-modal .textbook-link::after {
  content: '';
  border: #CFCFCF 1px solid;
  border-radius: 24px;
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 20px;
  margin: 10px 0 11px 10px;
  transition: all 0.2s ease;
  background: transparent;
}

.textbook-selection-modal .textbook-link:hover::after {
  background: var(--custom-theme-button-color, #FFC72C) url(../image/icon/active_click.svg) center center no-repeat;
  background-size: 24px 24px;
  border-color: var(--custom-theme-button-color, #FFC72C);
}

.textbook-selection-modal .textbook-link:hover,
.textbook-selection-modal .textbook-link:focus {
  border-color: #E5252A;
  color: #E5252A;
}

.textbook-selection-modal .textbook-icon img {
  width: auto;
  display: block;
  transition: filter 0.3s ease;
  height: 45px;
  margin: auto;
}

.textbook-selection-modal .textbook-name {
  font-size: 14px;
  text-align: center;
  line-height: 1.4;
  display: none;
}

@media screen and (max-width: 991px) {
  .subject-selection-modal .subject-option-box {
    flex: 1 1 calc(50% - 8px);
    max-width: calc(50% - 8px);
  }
}

/* Education Level Selection Modal *****************************/
.education-level-selection-modal .modal-header {
  border-bottom: none;
  padding: 0 0 30px 0;
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.education-level-selection-modal .modal-header .modal-title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
  margin: 0;
  color: #000;
  flex: 1;
}

.education-level-selection-modal .modal-body-content {
  padding: 0;
}

.education-level-selection-modal .education-level-options {
  display: flex;
  gap: 20px;
  justify-content: center;
}

.education-level-selection-modal .education-level-box {
  flex: 1;
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  min-height: 150px;
  height: auto;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  background-color: #fff;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.education-level-selection-modal .education-level-box.junior-level.active {
  background: var(--custom-theme-color);
  border-color: var(--custom-theme-color);
  color: #fff;
}

.education-level-selection-modal .education-level-box.junior-level:not(.disabled):hover {
  background: var(--custom-theme-color);
  border-color: var(--custom-theme-color);
}

.education-level-selection-modal .education-level-box.senior-level.active {
  background: var(--custom-theme-color);
  border-color: var(--custom-theme-color);
  color: #fff;
}

.education-level-selection-modal .education-level-box.disabled {
  cursor: not-allowed;
  opacity: 0.6;
  background: #f5f5f5;
  border-color: #E0E0E0;
}

.education-level-selection-modal .education-level-box .level-title {
  display: block;
  font-size: 24px;
  font-weight: normal;
}

.education-level-selection-modal .education-level-box .level-note {
  display: block;
  font-size: 14px;
  color: #999;
}

.education-level-selection-modal .education-level-box.active .level-note {
  color: rgba(255, 255, 255, 0.8);
}

/* Education Level Textbooks Modal *****************************/
.education-level-textbooks-modal .modal-header {
  border-bottom: none;
  padding: 0 0 25px 0;
  margin-bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.education-level-textbooks-modal .modal-header .modal-title {
  font-size: 24px;
  font-weight: normal;
  margin: 0;
  color: #000;
  flex: 1;
}

.education-level-textbooks-modal .modal-body-content {
  padding: 0;
}

.education-level-textbooks-modal .education-level-buttons {
  display: flex;
  gap: 20px;
  margin-bottom: 20px;
}

.education-level-textbooks-modal .level-btn {
  flex: 1;
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  min-height: 150px;
  height: auto;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  background-color: #fff;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.education-level-textbooks-modal .level-btn.active {
  background-color: var(--custom-theme-color);
}

.education-level-textbooks-modal .level-btn:not(.disabled):not(.active):hover {
  background: #f5f5f5;
  border-color: var(--custom-theme-color);
}

.education-level-textbooks-modal .level-btn.disabled {
  cursor: not-allowed;
  opacity: 0.6;
  background: #f5f5f5;
  border-color: #E0E0E0;
}

.education-level-textbooks-modal .level-btn.disabled>span:nth-child(1) {
  font-size: 24px;
  font-weight: 500;
  color: #000;
  transition: color 0.3s ease;
}

.education-level-textbooks-modal .level-btn.disabled>span:nth-child(2) {
  font-size: 14px;
  color: #999;
}

.education-level-textbooks-modal .level-btn .level-note {
  display: block;
  font-size: 12px;
  color: #999;
}

.education-level-textbooks-modal .level-btn.active .level-note {
  color: rgba(255, 255, 255, 0.8);
}

.education-level-textbooks-modal .level-btn.active>span {
  font-size: 24px;
  color: #fff;
}

.education-level-textbooks-modal .textbook-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.education-level-textbooks-modal .textbook-list-item {
  border: 1px solid var(--custom-theme-color);
  border-radius: var(--textbook-radius);
  padding: 12px 20px 11px;
  height: 70px;
  cursor: pointer;
  transition: all 0.3s ease;
  background-color: #fff;
  position: relative;
}

.education-level-textbooks-modal .textbook-list-item::after {
  content: '';
  border: #CFCFCF 1px solid;
  border-radius: 24px;
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  right: 20px;
  margin: 10px 0 11px 10px;
  transition: all 0.2s ease;
  background: transparent;
  top: calc(50% - 20px);
}

.education-level-textbooks-modal .textbook-list-item:hover {
  box-shadow: 0 4px 12px rgba(var(--custom-theme-color), 0.2);
}

.education-level-textbooks-modal .textbook-list-item:hover::after {
  background: var(--custom-theme-button-color, #FFC72C) url(../image/icon/active_click.svg) center center no-repeat;
  background-size: 24px 24px;
  border-color: var(--custom-theme-button-color, #FFC72C);
}

.education-level-textbooks-modal .textbook-list-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.education-level-textbooks-modal .textbook-list-icon {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  position: relative;
}

.education-level-textbooks-modal .textbook-list-icon img {
  width: auto;
  display: block;
  transition: filter 0.3s ease;
  height: 45px;
  margin: auto;
}

.education-level-textbooks-modal .textbook-list-name {
  flex: 1;
  font-size: 18px;
  color: #000;
  display: none;
}

.education-level-textbooks-modal .textbook-list-arrow {
  margin-left: auto;
  font-size: 20px;
  color: #000;
  flex-shrink: 0;
  display: none;
}

/**************************************************************/
/* Question Bank Exampaper - Create New Exam Paper ************/
#block-lingkee-textbook-series-textbookquestionbankexampaperform {
  width: 100%;
}

.question_bank_exampaper_edit_form {
  margin-bottom: 100px !important;
  border-radius: var(--textbook-radius);
  border: 1px solid #CFCFCF;
  margin: 0 auto;
  background: #fff;
}

/* ===== Form Header ===== */
.question_bank_exampaper_edit_form>.form-header {
  display: flex;
  padding: 20px;
  border-bottom: 1px solid #CFCFCF;
}

.question_bank_exampaper_edit_form>.form-header .title {
  margin-right: auto;
  color: #000;
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
}

.question_bank_exampaper_edit_form>.form-header .title::before {
  background: url(../image/icon/btn_create.svg) center center no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 8px;
}

/* ===== Status Bar ===== */
.question_bank_exampaper_edit_form .status-bar {
  display: flex;
  align-items: center;
}

.question_bank_exampaper_edit_form .status-step {
  display: flex;
  align-items: center;
  flex-direction: column;
  font-size: 15px;
  line-height: 1.2;
}

.question_bank_exampaper_edit_form .status-step>span:first-child {
  border: 2px solid #909090;
  border-radius: 50%;
  color: #909090;
  font-size: 20px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  margin-bottom: 9px;
  transition: all 0.3s ease;
}

.question_bank_exampaper_edit_form .status-step.active>span:first-child {
  background-color: var(--custom-theme-color);
  color: #fff;
  border: 2px solid var(--custom-theme-color);
}

.question_bank_exampaper_edit_form .status-step.completed>span:first-child {
  color: var(--custom-theme-color);
  border: 2px solid var(--custom-theme-color);
}

.question_bank_exampaper_edit_form .status-step.inactive>span:nth-child(2) {
  color: #909090;
}

.question_bank_exampaper_edit_form .status-line {
  flex: 0 0 auto;
  width: 40px;
  height: 1px;
  background-color: #CFCFCF;
  transition: all 0.3s ease;
  position: relative;
  top: -13px;
}

.question_bank_exampaper_edit_form .status-line.completed {
  background-color: var(--custom-theme-color);
}

/* ===== Step Containers ===== */
.question_bank_exampaper_edit_form .step-container {
  display: none;
}

.question_bank_exampaper_edit_form .step-container>.form-content {
  padding: 0 20px;
}

.question_bank_exampaper_edit_form .step-container.active {
  display: block;
}

.question_bank_exampaper_edit_form .step-title {
  color: #000;
  font-size: 24px;
  font-weight: 500;
  line-height: 30px;
  text-align: center;
  margin-top: 23px;
  margin-bottom: 32px;
}

.question_bank_exampaper_edit_form .step-title>span {
  color: #fff;
  background-color: var(--custom-theme-color);
  border-radius: 50%;
  font-size: 16px;
  line-height: 30px;
  vertical-align: top;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
}

/* ===== Form Layout ===== */
.question_bank_exampaper_edit_form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  margin-bottom: 20px;
}

.question_bank_exampaper_edit_form .form-row.full-width {
  grid-template-columns: 1fr;
}

.question_bank_exampaper_edit_form .form-group {
  display: flex;
  flex-direction: column;
}

.question_bank_exampaper_edit_form .form-label {
  color: #000;
  font-size: 16px;
  line-height: 1.1875;
  margin-bottom: 14px;
  padding-left: 10px;
}

.question_bank_exampaper_edit_form .form-label .required {
  color: #ff4d4f;
  margin-left: 4px;
}

.question_bank_exampaper_edit_form .form-input {
  border: 1px solid #CFCFCF;
  border-radius: 10px;
  line-height: 1.25;
  outline: none;
  padding: 9px 20px;
}

.question_bank_exampaper_edit_form .form-input:not(.no-transition) {
  transition: all 0.3s ease;
}

.question_bank_exampaper_edit_form .form-input:not(.no-transition):focus {
  border-color: #1890ff;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}

.question_bank_exampaper_edit_form .form-input:not(.no-transition):hover {
  border-color: #40a9ff;
}

.question_bank_exampaper_edit_form .form-input.error {
  border-color: #ff4d4f;
}

.question_bank_exampaper_edit_form .form-input.error:focus {
  box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.2);
}

.question_bank_exampaper_edit_form .input-with-icon {
  position: relative;
}

.question_bank_exampaper_edit_form .input-with-icon .form-input {
  width: 100%;
  padding-right: 48px;
}

.question_bank_exampaper_edit_form .input-with-icon input[type='date']::-webkit-calendar-picker-indicator {
  background: transparent;
  color: transparent;
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
}

.question_bank_exampaper_edit_form .input-with-icon .calendar-icon {
  background: url(../image/icon/icon_calendar.svg) center center no-repeat;
  cursor: pointer;
  display: block;
  width: 24px;
  height: 24px;
  overflow: hidden;
  text-indent: -9999px;
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
}

.question_bank_exampaper_edit_form .input-with-icon .calendar-icon:not(.no-transition) {
  transition: color 0.3s ease;
}

.question_bank_exampaper_edit_form .input-with-icon .calendar-icon:hover {
  color: #1890ff;
}

.question_bank_exampaper_edit_form .form-textarea {
  padding: 10px 12px;
  border: 1px solid #CFCFCF;
  border-radius: 10px;
  font-size: 14px;
  resize: vertical;
  min-height: 100px;
  font-family: inherit;
  outline: none;
}

.question_bank_exampaper_edit_form .form-textarea::placeholder {
  color: #909090;
}

.question_bank_exampaper_edit_form .form-textarea:not(.no-transition) {
  transition: all 0.3s ease;
}

.question_bank_exampaper_edit_form .form-textarea:not(.no-transition):focus {
  border-color: #1890ff;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}

.question_bank_exampaper_edit_form .form-textarea:not(.no-transition):hover {
  border-color: #40a9ff;
}

.question_bank_exampaper_edit_form .form-textarea.error {
  border-color: #ff4d4f;
}

.question_bank_exampaper_edit_form .error-message {
  color: #ff4d4f;
  font-size: 12px;
  margin-top: 4px;
  display: none;
}

.question_bank_exampaper_edit_form .error-message.show {
  display: block;
}

/* ===== Form Section ===== */
.question_bank_exampaper_edit_form .form-section {
  padding: 10px 20px 20px;
}

.question_bank_exampaper_edit_form .section-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.question_bank_exampaper_edit_form .section-title .section-title-right {
  display: flex;
  gap: 15px;
}

.question_bank_exampaper_edit_form #selected-questions-count {
  background-color: #D0EEFF;
  border-radius: 30px;
  color: #0026A2;
  font-size: 15px;
  line-height: 16px;
  padding: 7px 12px;
}

.question_bank_exampaper_edit_form #selected-questions-count::before {
  background: url(../image/icon/icon_selected.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 14px;
  height: 16px;
  margin-left: 2px;
  margin-right: 4px;
  vertical-align: top;
}

.question_bank_exampaper_edit_form .listing-count {
  background-color: #D0EEFF;
  border-radius: 30px;
  color: #0026A2;
  font-size: 15px;
  line-height: 16px;
  padding: 7px 14px;
}

/* ===== step-2 ===== */
.question_bank_exampaper_edit_form .step-2-filterContent {
  display: flex;
  gap: 20px;
  padding: 0 20px 20px 20px;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-sidebar-menu-section {
  flex: 0 0 auto;
  max-width: 400px;
  width: 30%;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-sidebar-menu-section .filter-sidebar-menu-title {
  font-size: 20px;
  color: #000;
  padding-left: 10px;
  margin-bottom: 10px;
  font-weight: 500;
}

/* filter-menu 樣式 */
.filter-sidebar-menu-section .filter-menu {
  background-color: var(--custom-theme-background-color);
  border-radius: 15px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header {
  display: flex;
  cursor: pointer;
  padding: 11px 20px 11px 16px;
  gap: 15px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header.level-1-header {
  border-bottom: 1px solid #CFCFCF;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item.level-1:last-child .taxonomy-menu-header.level-1-header {
  border-bottom: unset;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header.level-2-header {
  background-color: var(--custom-theme-background-color-dark-lv1);
  padding-left: 32px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header.level-3-header {
  background-color: var(--custom-theme-background-color-dark-lv2);
  padding-left: 48px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header.level-4-header {
  background-color: var(--custom-theme-background-color-dark-lv3);
  padding-left: 64px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header .menu-checkbox {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: 1px solid #909090;
  border-radius: 2px;
  background-color: #fff;
  position: relative;
  transition: all 0.2s;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header .menu-checkbox:checked {
  background-color: var(--custom-theme-color);
  border-color: var(--custom-theme-color);
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header .menu-checkbox:checked::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 4px;
  height: 8px;
  border: solid white;
  border-width: 0 2px 2px 0;
  border-radius: 1px;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header .menu-title {
  color: #000;
  font-size: 16px;
  line-height: 1.125;
  flex: 1;
  cursor: pointer;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item .taxonomy-menu-header .menu-chevron {
  background: url(../image/icon/menu_chevron_down_black.svg) center center no-repeat;
  text-indent: -9999px;
  flex: 0 0 auto;
  display: block;
  width: 14px;
  height: 16px;
  margin-left: auto;
  overflow: hidden;
  cursor: pointer;
}

.filter-sidebar-menu-section .filter-menu .taxonomy-menu-item.expanded>.taxonomy-menu-header .menu-chevron {
  transform: rotate(180deg);
}

/* ===== Filter Section ===== */
.question_bank_exampaper_edit_form .step-2-filterContent .filter-content-section {
  flex: 1 1 auto;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section {
  border: 1px solid #CFCFCF;
  border-radius: var(--textbook-radius);
  width: 100%;
  overflow: hidden;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section {
  display: flex;
  border-bottom: 1px solid #CFCFCF;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button {
  background-color: #fff;
  border: none;
  font-size: 20px;
  line-height: 26px;
  text-align: center;
  width: 50%;
  padding: 12px;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button.active {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button::before {
  background-size: contain;
  background-repeat: no-repeat;
  content: '';
  display: inline-block;
  width: 26px;
  height: 26px;
  vertical-align: top;
  margin-right: 10px;
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button[data-mode="manual_mode"]::before {
  background-image: url(../image/icon/icon_self_selected_questions.svg);
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button[data-mode="manual_mode"].active::before {
  background-image: url(../image/icon/icon_self_selected_questions_active.svg);
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button[data-mode="random_mode"]::before {
  background-image: url(../image/icon/icon_random_questions.svg);
}

.question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button[data-mode="random_mode"].active::before {
  background-image: url(../image/icon/icon_random_questions_active.svg);
}

/* ===== Filter Styles ===== */
.question_bank_exampaper_edit_form .filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 20px;
  padding-left: 20px;
  padding-right: 20px;
}

.question_bank_exampaper_edit_form .manual_mode .filter-row-question-type-counts,
.question_bank_exampaper_edit_form .random_mode .filter-row-keyword {
  display: none;
}

.question_bank_exampaper_edit_form .manual_mode .filter-row-type .filter-group,
.question_bank_exampaper_edit_form .filter-row-radio .filter-group {
  flex: 0 0 auto;
  width: calc(33.33% - 13.33px);
}

.question_bank_exampaper_edit_form .random_mode .filter-row-type .filter-group {
  flex: 0 0 auto;
  width: calc(50% - 10px);
}

.question_bank_exampaper_edit_form .filter-group {
  display: flex;
  flex-wrap: wrap;
}

.question_bank_exampaper_edit_form .filter-group-full {
  width: 100%;
  flex: 1 1 100%;
}

.question_bank_exampaper_edit_form .filter-label {
  font-size: 16px;
  line-height: 1;
  color: #000;
  width: 100%;
  margin-bottom: 7px;
  padding-left: 10px;
}

.question_bank_exampaper_edit_form .filter-select,
.question_bank_exampaper_edit_form .filter-input {
  background-color: #fff;
  border: 1px solid #CFCFCF;
  border-radius: 10px;
  font-size: 16px;
  line-height: 20px;
  height: 40px;
  padding: 9px 18px;
  transition: all .2s ease;
}

.question_bank_exampaper_edit_form .filter-input::placeholder {
  color: #909090;
}

.question_bank_exampaper_edit_form .filter-select:focus,
.question_bank_exampaper_edit_form .filter-input:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.question_bank_exampaper_edit_form .filter-select {
  appearance: none;
  background: #fff url(../image/icon/menu_chevron_down_black.svg) right 16px center no-repeat;
  color: #909090;
  width: 100%;
}

.question_bank_exampaper_edit_form .filter-select option {
  line-height: 1;
}

.question_bank_exampaper_edit_form .filter-select option:checked {
  background: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .filter-input::placeholder {
  color: #9ca3af;
}

/* ===== Filter Checkbox Group (for 課題) ===== */
.question_bank_exampaper_edit_form .filter-checkbox-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  background: #fff;
  max-height: 120px;
  overflow-y: auto;
}

.question_bank_exampaper_edit_form .filter-checkbox-item {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background: #f3f4f6;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.2s, border-color 0.2s;
  border: 1px solid transparent;
  font-size: 14px;
  user-select: none;
}

.question_bank_exampaper_edit_form .filter-checkbox-item:hover {
  background: #e5e7eb;
}

.question_bank_exampaper_edit_form .filter-checkbox-item.checked {
  background: #dbeafe;
  border-color: #3b82f6;
  color: #1d4ed8;
}

.question_bank_exampaper_edit_form .filter-checkbox-item input[type="checkbox"] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: #3b82f6;
}

.question_bank_exampaper_edit_form .filter-checkbox-item label {
  cursor: pointer;
  white-space: nowrap;
}

/* Scrollbar styling for checkbox group */
.question_bank_exampaper_edit_form .filter-checkbox-group::-webkit-scrollbar {
  width: 6px;
}

.question_bank_exampaper_edit_form .filter-checkbox-group::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 3px;
}

.question_bank_exampaper_edit_form .filter-checkbox-group::-webkit-scrollbar-thumb {
  background: #c1c1c1;
  border-radius: 3px;
}

.question_bank_exampaper_edit_form .filter-checkbox-group::-webkit-scrollbar-thumb:hover {
  background: #a1a1a1;
}

/* ===== Filter Radio Group ===== */
.question_bank_exampaper_edit_form .filter-radio-group {
  display: flex;
  width: 100%;
}

.question_bank_exampaper_edit_form .filter-radio-item {
  background: #F3F3F3;
  border: none;
  font-size: 16px;
  line-height: 20px;
  display: block;
  text-align: center;
  padding: 10px;
  cursor: pointer;
  transition: all .2s ease;
  user-select: none;
}

.question_bank_exampaper_edit_form .filter-radio-item:first-child {
  border-radius: 10px 0 0 10px;
}

.question_bank_exampaper_edit_form .filter-radio-item:last-child {
  border-radius: 0 10px 10px 0;
}

.question_bank_exampaper_edit_form #filter-export-history .filter-radio-item,
.question_bank_exampaper_edit_form #filter-bookmark-history .filter-radio-item {
  width: calc(33.33%);
}

.question_bank_exampaper_edit_form #filter-diff-lvl-container .filter-radio-item {
  width: calc(25%);
}

.question_bank_exampaper_edit_form .filter-radio-item:has(input:checked),
.question_bank_exampaper_edit_form .filter-radio-item.checked,
.question_bank_exampaper_edit_form .filter-radio-item:hover {
  background: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .filter-radio-item input[type="radio"] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: var(--custom-theme-color);
  margin: 0;
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.question_bank_exampaper_edit_form .filter-radio-item span {
  cursor: pointer;
  white-space: nowrap;
}

.question_bank_exampaper_edit_form .filter-loading {
  color: #6b7280;
  font-size: 14px;
  padding: 8px;
}

/* ===== Filter Question Type Counts ===== */
.question_bank_exampaper_edit_form .filter-group-question-type-counts {
  border-top: #CFCFCF 1px solid;
  padding-top: 20px;
}

.question_bank_exampaper_edit_form .filter-group-question-type-counts .filter-label {
  display: none;
}

.question_bank_exampaper_edit_form .question-type-counts-grid {
  width: 100%;
  gap: 20px;
}

.question_bank_exampaper_edit_form .question-type-count-item {
  gap: 0;
}

.question_bank_exampaper_edit_form .question-type-count-item .question-type-count-label {
  font-size: 16px;
  line-height: 1;
  color: #000;
  width: 100%;
  margin-bottom: 7px;
  padding-left: 10px;
}

.question_bank_exampaper_edit_form .question-type-count-item .question-type-count-input {
  background-color: #fff;
  border: 1px solid #CFCFCF;
  border-radius: 10px;
  font-size: 16px;
  line-height: 20px;
  text-align: left;
  height: 40px;
  padding: 9px 18px;
  transition: all .2s ease;
}

/* ===== Filter Actions ===== */
.question_bank_exampaper_edit_form .filter-actions {
  display: flex;
  justify-content: flex-end;
  padding: 0 20px 20px;
}

.question_bank_exampaper_edit_form .btn-filter-apply {
  background-color: var(--custom-theme-button-color);
  border-radius: 10px;
  border: none;
  color: #000;
  font-size: 16px;
  line-height: 20px;
  padding: 10px 18px;
  cursor: pointer;
  transition: all 0.2s;
}

.question_bank_exampaper_edit_form .btn-filter-apply:hover {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .btn-filter-clear {
  background-color: #fff;
  border-radius: 10px;
  border: none;
  color: #000;
  font-size: 14px;
  line-height: 20px;
  padding: 10px 15px;
  cursor: pointer;
  transition: all 0.2s;
}

.question_bank_exampaper_edit_form .btn-filter-clear:hover {
  color: var(--custom-theme-color);
}

.question_bank_exampaper_edit_form .btn-filter-clear::before {
  background: url(../image/icon/btn_clear.svg) center 2px no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 15px;
  height: 20px;
  margin-right: 5px;
}

/* ===== Filter Keyword, Code ===== */
.question_bank_exampaper_edit_form .filter-row-keyword {
  border-top: 1px solid #CFCFCF;
  gap: 0;
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0;

}

.question_bank_exampaper_edit_form .filter-row-keyword .filter-group {
  width: 50%;
  column-gap: 10px;
  padding: 20px;
}

.question_bank_exampaper_edit_form .filter-row-keyword .filter-group:first-child {
  border-right: 1px solid #CFCFCF;
}

.question_bank_exampaper_edit_form .filter-row-keyword .filter-group input {
  flex: 1 1 auto;
  width: 60%;
}

.question_bank_exampaper_edit_form .btn-search-keyword,
.question_bank_exampaper_edit_form .btn-search-qt-code {
  background-color: var(--custom-theme-button-color);
  border-radius: 10px;
  border: none;
  color: #000;
  font-size: 16px;
  line-height: 20px;
  padding: 10px 18px;
  cursor: pointer;
  transition: all 0.2s;
}

.question_bank_exampaper_edit_form .btn-search-keyword:hover,
.question_bank_exampaper_edit_form .btn-search-qt-code:hover {
  background-color: var(--custom-theme-color);
  color: #fff;
}

/* Loading State */
.question_bank_exampaper_edit_form .listing-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  color: #6c757d;
}

.question_bank_exampaper_edit_form .loading-spinner {
  width: 40px;
  height: 40px;
  border: 3px solid #e9ecef;
  border-top-color: #007bff;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-bottom: 12px;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

/* Empty State */
.question_bank_exampaper_edit_form .listing-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  color: #6c757d;
  font-size: 16px;
}

/* ===== Question List ===== */
.question_bank_exampaper_edit_form .question-list,
#preview-modal-body .preview-questions-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Question List Default Message */
.question-list-default-message {
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 380px;
}

.question-list-default-message h3 {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: 20px;
}

.question-list-default-message p {
  color: #5A5A5A;
  line-height: 1.1875;
  margin-bottom: 0;
}

/* Question Item */
.question-item {
  background: #fff;
  border: 1px solid #CFCFCF;
  border-radius: 15px;
  overflow: hidden;
  padding: 20px;
  transition: all 0.2s ease;
}

.question-item:hover {
  border-color: #007bff;
  box-shadow: 0 2px 8px rgba(0, 123, 255, 0.15);
}

.question-item .question-header {
  display: flex;
}

.question-item .question-header ul {
  display: flex;
  flex: 1 1 auto;
  gap: 10px;
  margin-bottom: 0;
  padding-left: 0;
}

.question-item .question-header ul li {
  list-style: none;
}

.question-item .question-header ul li .btn-language-toggle {
  background-color: #F3F3F3;
  border: none;
  border-radius: 4px;
  color: #000;
  font-size: 15px;
  line-height: 20px;
  width: 48px;
  padding: 3px;
}

.question-item .question-header ul li .btn-language-toggle.active {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question-item .question-header .question-header-right {
  display: flex;
  flex: 0 0 auto;
  width: 35%;
  max-width: 342px;
}

.question-item .question-header .question-header-right .chinese,
.question-item .question-header .question-header-right .english {
  background-color: #F3F3F3;
  border-radius: 4px;
  padding: 0 10px;
}

.question-item .question-header .question-header-right .chinese .question-meta-value,
.question-item .question-header .question-header-right .english .question-meta-value {
  color: var(--custom-theme-color);
  font-size: 14px;
  line-height: 26px;
  display: block;
}

.question-item .question-header .question-header-right .mark {
  background: url(../image/icon/icon_star_gray.svg) right center no-repeat;
  color: #000;
  font-size: 14px;
  line-height: 26px;
  margin-left: auto;
  padding: 0 34px 0 0;
  transition: all 0.2s ease;
}

.question-item .question-header .question-header-right .mark.active {
  background: url(../image/icon/icon_star_yellow.svg) right center no-repeat;
}

.question-item .question-item-row {
  display: flex;
  flex-wrap: wrap;
  padding-top: 10px;
}

/* Left Section - Question Content */
.question-left {
  border-top: 1px solid #CFCFCF;
  flex: 1 1 auto;
  width: calc(100% - 362px);
  margin-right: 20px;
  margin-top: 5px;
  padding-top: 15px;
}

.question-title {
  font-size: 16px;
  line-height: 1.5;
  word-break: break-word;
  margin-bottom: 20px;
}

.question-details {
  font-size: 16px;
  line-height: calc(100% + 10px);
  white-space: pre-wrap;
  word-break: break-word;
  margin-bottom: 20px;
}

.question-details::before {
  content: "問題：";
  font-weight: 500;
  line-height: 1.5;
  display: block;
  margin-bottom: 10px;
}

[lang="en-gb"] .question-details::before {
  content: "Question:";
}

/* Right Section - Meta Info & Actions */
.question-right {
  flex: 0 0 auto;
  width: 35%;
  max-width: 342px;
}

.question-meta {
  background: var(--custom-theme-background-color);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px;
}

.question-meta-item {
  font-size: 14px;
  line-height: 20px;
  display: flex;
  justify-content: space-between;
}

.question-meta-item .question-meta-label {
  font-weight: 500;
  flex: 0 0 auto;
  width: 122px;
}

.question-meta-item .question-meta-value {
  text-align: right;
}

.question_bank_exampaper_edit_form .btn-add-question {
  background: var(--custom-theme-button-color);
  border: none;
  border-radius: 8px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  width: 100%;
  margin-top: 10px;
  padding: 7px 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.question_bank_exampaper_edit_form .btn-add-question:hover,
.question_bank_exampaper_edit_form .btn-add-question.added {
  background: #0026A2;
  color: #fff;
}

.question_bank_exampaper_edit_form .btn-add-question:disabled {
  background: #F3F3F3;
  cursor: default;
}

.question_bank_exampaper_edit_form .btn-add-question::before {
  background: url(../image/icon/btn_add_question.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 10px;
  height: 16px;
  vertical-align: top;
  margin-right: 2px;
  transition: all 0.2s ease;
}

.question_bank_exampaper_edit_form .btn-add-question:hover::before {
  background: url(../image/icon/btn_add_question_white.svg) center center no-repeat;
}

.question_bank_exampaper_edit_form .btn-add-question.added::before {
  background: url(../image/icon/btn_added_question.svg) center center no-repeat;
  width: 14px;
}

/* Question answer styling */
.question_bank_exampaper_edit_form .question-answer {
  font-size: 16px;
  line-height: calc(100% + 10px);
  display: inline-block;
}

.question_bank_exampaper_edit_form .question-answer::before {
  content: "答案：";
  font-weight: 500;
  line-height: 1.5;
  display: block;
  margin-bottom: 10px;
}

[lang="en-gb"] .question_bank_exampaper_edit_form .question-answer::before {
  content: "Answer:";
}

/* ===== Pagination Styles ===== */
/* ===== Download Page Pagination Styles ===== */
/* ===== Bookmark Page Pagination Styles ===== */
.question_bank_exampaper_edit_form .pagination,
.download-pagination,
.bookmark-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  min-height: 40px;
  margin-top: 20px;
  padding: 5px 0;
  position: relative;
}

.question_bank_exampaper_edit_form .pagination .pagination-controls,
.download-pagination .download-pagination-controls,
.bookmark-pagination .bookmark-pagination-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.question_bank_exampaper_edit_form .page-numbers,
.download-pagination .download-pagination-numbers,
.bookmark-pagination .bookmark-pagination-numbers {
  display: flex;
  gap: 20px;
}

.question_bank_exampaper_edit_form .page-btn,
.download-pagination .page-btn,
.bookmark-pagination .page-btn {
  background: none;
  border: none;
  color: #000;
  font-size: 16px;
  line-height: 18px;
  padding: 5px 0;
  cursor: pointer;
  transition: all 0.2s ease;
}

.question_bank_exampaper_edit_form .page-btn.active,
.download-pagination .page-btn.active,
.bookmark-pagination .page-btn.active {
  color: var(--custom-theme-color);
  font-weight: 700;
}

.question_bank_exampaper_edit_form .page-btn:hover:not(:disabled),
.download-pagination .page-btn:hover:not(:disabled),
.bookmark-pagination .page-btn:hover:not(:disabled) {
  color: var(--custom-theme-color);
}

.question_bank_exampaper_edit_form .page-btn:disabled,
.download-pagination .page-btn:disabled,
.bookmark-pagination .page-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.question_bank_exampaper_edit_form .page-ellipsis,
.download-pagination .page-ellipsis,
.bookmark-pagination .page-ellipsis {
  display: block;
  height: 30px;
}

.question_bank_exampaper_edit_form #page-last,
.download-pagination #download-page-last,
.bookmark-pagination #bookmark-page-last {
  background: url(../image/icon/pagination_last.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.question_bank_exampaper_edit_form #page-first,
.download-pagination #download-page-first,
.bookmark-pagination #bookmark-page-first {
  background: url(../image/icon/pagination_first.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.question_bank_exampaper_edit_form #page-next,
.download-pagination #download-page-next,
.bookmark-pagination #bookmark-page-next {
  background: url(../image/icon/pagination_next.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.question_bank_exampaper_edit_form #page-prev,
.download-pagination #download-page-prev,
.bookmark-pagination #bookmark-page-prev {
  background: url(../image/icon/pagination_prev.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.question_bank_exampaper_edit_form #page-last:hover:not(:disabled),
.question_bank_exampaper_edit_form #page-first:hover:not(:disabled),
.question_bank_exampaper_edit_form #page-next:hover:not(:disabled),
.question_bank_exampaper_edit_form #page-prev:hover:not(:disabled),
.download-pagination #download-page-last:hover:not(:disabled),
.download-pagination #download-page-first:hover:not(:disabled),
.download-pagination #download-page-next:hover:not(:disabled),
.download-pagination #download-page-prev:hover:not(:disabled),
.bookmark-pagination #bookmark-page-last:hover:not(:disabled),
.bookmark-pagination #bookmark-page-first:hover:not(:disabled),
.bookmark-pagination #bookmark-page-next:hover:not(:disabled),
.bookmark-pagination #bookmark-page-prev:hover:not(:disabled) {
  border-color: var(--custom-theme-color);
}

.question_bank_exampaper_edit_form .exampaper-items-per-page,
.download-pagination .download-pagination-items-per-page,
.bookmark-pagination .bookmark-pagination-items-per-page {
  display: flex;
  align-items: center;
  gap: 10px;
  position: absolute;
  right: 0;
  bottom: 0;
}

.question_bank_exampaper_edit_form .exampaper-items-per-page-select,
.download-pagination .download-pagination-items-per-page-select,
.bookmark-pagination .bookmark-pagination-items-per-page-select {
  appearance: none;
  background: #fff url(../image/icon/menu_chevron_down_black.svg) right 16px center no-repeat;
  border-color: #CFCFCF;
  border-radius: 10px;
  color: #000;
  line-height: 20px;
  width: 90px;
  padding: 9px 15px 9px;
}

.question_bank_exampaper_edit_form .exampaper-items-per-page-select option,
.download-pagination .download-pagination-items-per-page-select option .bookmark-pagination .bookmark-pagination-items-per-page-select option {
  line-height: 1;
}

.question_bank_exampaper_edit_form .exampaper-items-per-page-select option:checked,
.download-pagination .download-pagination-items-per-page-select option:checked,
.bookmark-pagination .bookmark-pagination-items-per-page-select option:checked {
  background: var(--custom-theme-color);
  color: #fff;
}

/* ===== Exam Paper List Pagination Styles ===== */
.textbook-exampaper-section .exampaper-pagination-container,
.school-exampaper-section .exampaper-pagination-container {
  margin-top: 20px;
}

.textbook-exampaper-section .exampaper-pagination-wrapper,
.school-exampaper-section .exampaper-pagination-wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  min-height: 40px;
  position: relative;
}

.textbook-exampaper-section .exampaper-pagination,
.school-exampaper-section .exampaper-pagination {
  display: flex;
  align-items: center;
}

.textbook-exampaper-section .exampaper-pagination .pagination,
.school-exampaper-section .exampaper-pagination .pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  margin: 0 auto;
  padding: 5px 0;
  position: relative;
}

.textbook-exampaper-section .exampaper-pagination .page-link,
.school-exampaper-section .exampaper-pagination .page-link {
  background: none;
  border: none;
  color: #000;
  font-size: 16px;
  line-height: 18px;
  padding: 5px 0;
  cursor: pointer;
  transition: all 0.2s ease;
}

.textbook-exampaper-section .exampaper-pagination .page-link:hover:not(:disabled),
.school-exampaper-section .exampaper-pagination .page-link:hover:not(:disabled) {
  color: var(--custom-theme-color);
}

.textbook-exampaper-section .exampaper-pagination .page-item.active .page-link,
.textbook-exampaper-section .exampaper-pagination .page-item.active span.page-link,
.school-exampaper-section .exampaper-pagination .page-item.active .page-link,
.school-exampaper-section .exampaper-pagination .page-item.active span.page-link {
  color: var(--custom-theme-color);
  font-weight: 700;
}

.textbook-exampaper-section .exampaper-pagination .page-item:last-child .page-link,
.school-exampaper-section .exampaper-pagination .page-item:last-child .page-link {
  background: url(../image/icon/pagination_last.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.textbook-exampaper-section .exampaper-pagination .page-item:first-child .page-link,
.school-exampaper-section .exampaper-pagination .page-item:first-child .page-link {
  background: url(../image/icon/pagination_first.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.textbook-exampaper-section .exampaper-pagination .page-item:nth-last-child(2) .page-link,
.school-exampaper-section .exampaper-pagination .page-item:nth-last-child(2) .page-link {
  background: url(../image/icon/pagination_next.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.textbook-exampaper-section .exampaper-pagination .page-item:nth-child(2) .page-link,
.school-exampaper-section .exampaper-pagination .page-item:nth-child(2) .page-link {
  background: url(../image/icon/pagination_prev.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

.textbook-exampaper-section .exampaper-pagination .page-item:last-child:not(:disabled) .page-link:hover,
.textbook-exampaper-section .exampaper-pagination .page-item:first-child:not(:disabled) .page-link:hover,
.textbook-exampaper-section .exampaper-pagination .page-item:nth-last-child(2):not(:disabled) .page-link:hover,
.textbook-exampaper-section .exampaper-pagination .page-item:nth-child(2):not(:disabled) .page-link:hover,
.school-exampaper-section .exampaper-pagination .page-item:last-child:not(:disabled) .page-link:hover,
.school-exampaper-section .exampaper-pagination .page-item:first-child:not(:disabled) .page-link:hover,
.school-exampaper-section .exampaper-pagination .page-item:nth-last-child(2):not(:disabled) .page-link:hover,
.school-exampaper-section .exampaper-pagination .page-item:nth-child(2):not(:disabled) .page-link:hover {
  border-color: var(--custom-theme-color);
}

.textbook-exampaper-section .exampaper-pagination .page-item.disabled .page-link,
.school-exampaper-section .exampaper-pagination .page-item.disabled .page-link {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.textbook-exampaper-section .exampaper-items-per-page,
.school-exampaper-section .exampaper-items-per-page {
  display: flex;
  align-items: center;
  gap: 10px;
  position: absolute;
  right: 0;
  bottom: 0;
}

.textbook-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select,
.school-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select {
  appearance: none;
  background: #fff url(../image/icon/menu_chevron_down_black.svg) right 16px center no-repeat;
  border-color: #CFCFCF;
  border-radius: 10px;
  color: #000;
  line-height: 20px;
  width: 90px;
  padding: 9px 15px 9px;
}

.textbook-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select option,
.school-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select option {
  line-height: 1;
}

.textbook-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select option:checked,
.school-exampaper-section .exampaper-items-per-page .exampaper-items-per-page-select option:checked {
  background: var(--custom-theme-color);
  color: #fff;
}

/* ===== Button Styles ===== */
.question_bank_exampaper_edit_form .button-group {
  border-top: 1px solid #CFCFCF;
  display: flex;
  justify-content: space-between;
}

.question_bank_exampaper_edit_form .button-container {
  border-top: 1px solid #CFCFCF;
  display: flex;
  justify-content: space-between;
}

.question_bank_exampaper_edit_form .btn {
  padding: 10px 24px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
  border: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.question_bank_exampaper_edit_form .btn-primary,
.question_bank_exampaper_edit_form .btn-secondary {
  background-color: var(--custom-theme-button-color);
  border: none;
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
  display: block;
  min-width: 100px;
  margin: 20px;
  padding: 10px 15px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.question_bank_exampaper_edit_form .btn-primary {
  margin-left: auto;
}

.question_bank_exampaper_edit_form .btn-primary:hover,
.question_bank_exampaper_edit_form .btn-secondary:hover {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .btn-primary:active,
.question_bank_exampaper_edit_form .btn-secondary:active {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form .btn-primary:disabled,
.question_bank_exampaper_edit_form .btn-secondary:disabled {
  background-color: #d9d9d9;
  color: #000;
  cursor: not-allowed;
  opacity: 0.7;
}

.btn-primary.btn-transform,
#preview-transform {
  background-color: #fff;
  border: var(--custom-theme-color) 1px solid;
  border-radius: 10px;
  color: var(--custom-theme-color);
  font-size: 15px;
  line-height: 20px;
  margin: 0;
  padding: 9px 15px 9px 50px;
  overflow: hidden;
  position: relative;
}

.btn-primary.btn-transform::before,
#preview-transform::before {
  background: var(--custom-theme-color) url(../image/icon/btn_transform.svg) center center no-repeat;
  content: '';
  display: block;
  width: 40px;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
}

/* ===== Selected Questions Info ===== */
.question_bank_exampaper_edit_form .selected-questions-summary-wrapper {
  background-color: #F2FAFF;
  border: 1px solid #CFCFCF;
  border-radius: 15px;
  width: 100%;
  max-width: 470px;
  margin-left: auto;
  margin-top: 20px;
  padding: 20px;
  overflow: hidden;
}

.question_bank_exampaper_edit_form .selected-questions-info {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 10px;
}

.question_bank_exampaper_edit_form .summary-header-title {
  background-color: #CBECFF;
  border-bottom-right-radius: var(--textbook-radius);
  color: #0026A2;
  font-size: 18px;
  font-weight: 500;
  line-height: 22px;
  margin-left: -20px;
  margin-top: -20px;
  padding: 10px 20px;
}

.question_bank_exampaper_edit_form .summary-header-title::before {
  background: url(../image/icon/summary-selected.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 14px;
  height: 22px;
  margin-right: 10px;
  vertical-align: top;
}

.question_bank_exampaper_edit_form .btn-clear-selected-questions {
  border: none;
  background: none;
  color: #0026A2;
  font-size: 14px;
  line-height: 1;
  padding: 2px;
}

.question_bank_exampaper_edit_form .selected-questions-summary {
  border-radius: 4px;
  width: 100%;
  overflow: hidden;
}

.question_bank_exampaper_edit_form .selected-questions-summary thead tr th {
  background-color: #E0F1FB;
  color: #000;
  font-size: 15px;
  font-weight: 500;
  padding: 6px 15px;
}

.question_bank_exampaper_edit_form .selected-questions-summary thead tr th:not(:first-child) {
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.question_bank_exampaper_edit_form .selected-questions-summary tbody tr td {
  background-color: #fff;
  color: #000;
  font-size: 15px;
  vertical-align: top;
  padding: 6px 15px;
}

.question_bank_exampaper_edit_form .selected-questions-summary tbody tr td:not(:first-child) {
  text-align: center;
}

.question_bank_exampaper_edit_form .selected-questions-summary tbody tr:nth-child(even) td {
  background-color: #F5F5F5;
}

.question_bank_exampaper_edit_form .selected-questions-summary tbody tr.summary-total-row td strong {
  font-weight: 500;
}

.question_bank_exampaper_edit_form .selected-questions-summary-wrapper .btn-primary {
  border-radius: 8px;
  font-weight: 400;
  min-width: 80px;
  margin: 10px 0 0 auto;
  padding: 5px 10px;
}

/* Button style for remove (added state) */
.question_bank_exampaper_edit_form .btn-add-question.added:hover {
  background: #2149ca;
}

.question_bank_exampaper_edit_form .btn-add-question.added:hover::before {
  background: url(../image/icon/btn_remove_question.svg) left center no-repeat;
  content: '移除';
  width: auto;
  margin-right: 0;
  padding-left: 20px;
}

[lang="en-gb"] .question_bank_exampaper_edit_form .btn-add-question.added:hover::before {
  content: 'Remove';
}

.question_bank_exampaper_edit_form .btn-add-question.added:hover span {
  display: none;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 0 20px 20px 20px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left {
  flex: 0 0 auto;
  width: 25%;
  max-width: 400px;
  position: sticky;
  top: 80px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left-title {
  font-size: 20px;
  color: #000;
  padding-left: 10px;
  margin-bottom: 10px;
  font-weight: 500;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-filterContent {
  background-color: #F3F3F3;
  border-radius: 15px;
  max-height: calc(100vh - 280px);
  padding: 20px;
  overflow-x: hidden;
  overflow-y: auto;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-filter-menu {
  row-gap: 10px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item {
  border-bottom: none;
  border-radius: 5px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item:hover {
  background: #fff;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item-header {
  gap: 0;
  padding: 14px 10px 14px 10px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item-title {
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  margin-right: 10px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item-count {
  background-color: var(--custom-theme-color);
  border-radius: 50%;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  width: 22px;
  min-width: unset;
  height: 22px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item-toggle {
  background: url(../image/icon/menu_chevron_down_black.svg) center center no-repeat;
  text-indent: -9999px;
  display: block;
  width: 16px;
  height: 16px;
  overflow: hidden;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-item-content {
  padding: 0;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-question-item {
  border: none;
  border-top: #CFCFCF 1px solid;
  gap: 0;
  padding: 10px 10px 10px 30px;
  position: relative;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-question-item:hover {
  background: none;
  margin: 0;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-menu-question-code {
  color: #000;
  font-size: 14px;
  line-height: 20px;
}

.step-3-menu-item-delete,
.step-3-menu-question-delete {
  background: url(../image/icon/step3_menu_trash.svg) center center no-repeat;
  text-indent: -9999px;
  display: block;
  width: 16px;
  height: 16px;
  overflow: hidden;
  opacity: 1;
}

.step-3-menu-item-delete {
  margin-right: 10px;
}

.step-3-menu-item-delete:hover,
.step-3-menu-question-delete:hover {
  background-color: transparent;
}

.step-3-menu-item-drag,
.step-3-menu-question-drag {
  background: url(../image/icon/step3_menu_drag.svg) center center no-repeat;
  width: 20px;
  height: 20px;
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  margin-right: 10px;
  opacity: 1;
}

/* ===== Selected Questions Info Step3  ===== */
.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left-summary,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .step-4-Content-left-summary {
  background-color: #F2FAFF;
  border: 1px solid #CFCFCF;
  border-radius: 15px;
  width: 100%;
  padding: 0 20px 20px;
  overflow: hidden;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left-summary {
  margin-top: 30px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left-summary-title,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .step-4-Content-left-summary-title {
  background-color: #CBECFF;
  border-bottom-right-radius: var(--textbook-radius);
  color: #0026A2;
  font-size: 18px;
  font-weight: 500;
  line-height: 22px;
  width: fit-content;
  margin-left: -20px;
  margin-bottom: 10px;
  padding: 10px 20px;
}

.step-3-Content-left-summary-table,
.step-4-Content-left-summary-table {
  border-radius: 4px;
  width: 100%;
  overflow: hidden;
}

.step-3-Content-left-summary-table thead tr th,
.step-4-Content-left-summary-table thead tr th {
  background-color: #E0F1FB;
  color: #000;
  font-size: 15px;
  font-weight: 500;
  padding: 6px 15px;
}

.step-3-Content-left-summary-table thead tr th:not(:first-child),
.step-4-Content-left-summary-table thead tr th:not(:first-child) {
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.step-3-Content-left-summary-table tbody tr td,
.step-4-Content-left-summary-table tbody tr td {
  background-color: #fff;
  color: #000;
  font-size: 15px;
  vertical-align: top;
  padding: 6px 15px;
}

.step-3-Content-left-summary-table tbody tr td:not(:first-child),
.step-4-Content-left-summary-table tbody tr td:not(:first-child) {
  text-align: center;
}

.step-3-Content-left-summary-table tbody tr:nth-child(even) td,
.step-4-Content-left-summary-table tbody tr:nth-child(even) td {
  background-color: #F5F5F5;
}

.step-3-Content-left-summary-table tbody tr.summary-total-row td strong,
.step-4-Content-left-summary-table tbody tr.summary-total-row td strong {
  font-weight: 500;
}

.step-3-Content-left-summary .btn-primary {
  border-radius: 8px;
  font-weight: 400;
  min-width: 80px;
  margin: 10px 0 0 auto;
  padding: 5px 10px;
}

.question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-right {
  width: 100%;
}

.question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-header .question-header-right,
.question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-item-row .question-right {
  width: 300px;
}

.question_bank_exampaper_edit_form #step-3 .step-3-Content-right-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 10px;
}

.question_bank_exampaper_edit_form #step-3 .step-3-Content-right-header-selected-count {
  background-color: #D0EEFF;
  border-radius: 30px;
  color: #0026A2;
  font-size: 15px;
  line-height: 16px;
  padding: 7px 12px;
}

.question_bank_exampaper_edit_form #step-3 .step-3-Content-right-header-selected-count::before {
  background: url(../image/icon/icon_selected.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 14px;
  height: 16px;
  margin-left: 2px;
  margin-right: 4px;
  vertical-align: top;
}

/* ===== step-4 ===== */
.question_bank_exampaper_edit_form #step-4 .placeholder-content .step-4-Content-left {
  flex: 0 0 auto;
  max-width: 400px;
  width: 30%;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .subtitle {
  font-size: 20px;
  color: #000;
  padding-left: 20px;
  margin-bottom: 10px;
  font-weight: 500;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table,
.exampaper-export-modal .exampaper-table {
  width: 100%;
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  overflow: hidden;
  border-collapse: separate;
  border-spacing: 0;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table thead tr,
.exampaper-export-modal .exampaper-table thead tr {
  background-color: #F8F8F8;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table thead tr th,
.exampaper-export-modal .exampaper-table thead tr th {
  font-weight: 400;
  line-height: 1;
  padding: 20px 10px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table tbody tr td,
.exampaper-export-modal .exampaper-table tbody tr td {
  background-color: #fff;
  border-top: #CFCFCF 1px solid;
  line-height: 36px;
  padding: 12px 10px;
  vertical-align: top;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table thead tr th:first-child,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table tbody tr td:first-child,
.exampaper-export-modal .exampaper-table thead tr th:first-child,
.exampaper-export-modal .exampaper-table tbody tr td:first-child {
  white-space: nowrap;
  padding-left: 20px;
  padding-right: 50px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table thead tr th:last-child,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table tbody tr td:last-child,
.exampaper-export-modal .exampaper-table thead tr th:last-child,
.exampaper-export-modal .exampaper-table tbody tr td:last-child {
  padding-right: 20px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table thead tr th:not(:first-child),
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table tbody tr td:not(:first-child),
.exampaper-export-modal .exampaper-table thead tr th:not(:first-child),
.exampaper-export-modal .exampaper-table tbody tr td:not(:first-child) {
  font-size: 14px;
  text-align: center;
  white-space: nowrap;
  width: 1%;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip,
.exampaper-export-modal .exampaper-table .export-word,
.exampaper-export-modal .exampaper-table .export-excel,
.exampaper-export-modal .exampaper-table .export-zip {
  background-color: var(--custom-theme-button-color);
  border-radius: 10px;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  min-width: 120px;
  padding: 6px 12px;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word:not(.loading):hover,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel:not(.loading):hover,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip:not(.loading):hover,
.exampaper-export-modal .exampaper-table .export-word:not(.loading):hover,
.exampaper-export-modal .exampaper-table .export-excel:not(.loading):hover,
.exampaper-export-modal .exampaper-table .export-zip:not(.loading):hover {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word a,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel a,
.exampaper-export-modal .exampaper-table .export-word a,
.exampaper-export-modal .exampaper-table .export-excel a {
  color: #000;
  max-height: 24px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word a::after,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel a::after,
.exampaper-export-modal .exampaper-table .export-word a::after,
.exampaper-export-modal .exampaper-table .export-excel a::after {
  content: '';
  position: absolute;
  inset: 0;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word a:hover,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel a:hover,
.exampaper-export-modal .exampaper-table .export-word a:hover,
.exampaper-export-modal .exampaper-table .export-excel a:hover {
  color: #fff;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word::before,
.exampaper-export-modal .exampaper-table .export-word::before {
  background: url(../image/icon/export_word.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: top;
  margin-right: 5px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel::before,
.exampaper-export-modal .exampaper-table .export-excel::before {
  background: url(../image/icon/export_excel.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: top;
  margin-right: 5px;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip::before,
.exampaper-export-modal .exampaper-table .export-zip::before {
  background: url(../image/icon/export_zip.svg) center center no-repeat;
  content: '';
  display: inline-block;
  width: 24px;
  height: 24px;
  vertical-align: top;
  margin-right: 5px;
}

/* ===== Loading ===== */
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .loading,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip.loading,
.exampaper-export-modal .exampaper-table .loading {
  /* pointer-events: none;  */
  cursor: progress;
}

.exampaper-export-modal .exampaper-table .loading {
  display: block !important;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .loading a,
.exampaper-export-modal .exampaper-table .loading a {
  pointer-events: none;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word .loading-text,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel .loading-text,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip .loading-text,
.exampaper-export-modal .exampaper-table .export-word .loading-text,
.exampaper-export-modal .exampaper-table .export-excel .loading-text,
.exampaper-export-modal .exampaper-table .export-zip .loading-text {
  display: none;
}

.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-word .loading-spinner,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-excel .loading-spinner,
.question_bank_exampaper_edit_form #step-4 .placeholder-content .exampaper-table .export-zip .loading-spinner,
.exampaper-export-modal .exampaper-table .export-word .loading-spinner,
.exampaper-export-modal .exampaper-table .export-excel .loading-spinner,
.exampaper-export-modal .exampaper-table .export-zip .loading-spinner {
  display: none;
}

/* ===== Export Modal ===== */
.exampaper-export-modal .modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.exampaper-export-modal .modal-header .modal-title {
  margin: 0;
  flex: 1;
  position: relative;
  padding-left: 41px;
  font-size: 24px;
}

.exampaper-export-modal .modal-header .modal-title::before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../image/icon/icon_export_exampaper.svg) center center no-repeat;
  position: absolute;
  left: 0;
  top: 3px;
}

.exampaper-export-modal .exampaper-info {
  justify-content: space-between;
  display: flex;
  align-items: flex-end;
  gap: 20px;
}

.exampaper-export-modal .paper-title {
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 0;
}

.exampaper-export-modal .questions-score {
  background-color: #E0F1FB;
  border-radius: 30px;
  line-height: 22px;
  display: flex;
  justify-content: center;
  min-width: 115px;
  margin-left: auto;
  padding: 4px 13px;
}

.exampaper-export-modal .questions-score span.number {
  color: #000;
  font-size: 16px;
}

.exampaper-export-modal .questions-score span.separator {
  background-color: #AFD6ED;
  width: 1px;
  margin-left: 10px;
  margin-right: 10px;
  display: block;
}

/* Loading spinner for export modal - smaller and inline */
.exampaper-export-modal .exampaper-table .loading-spinner {
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 2px solid rgba(0, 0, 0, 0.1);
  border-top-color: rgba(0, 0, 0, 0.4);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  margin-left: 6px;
  vertical-align: middle;
}

.exampaper-export-modal .exampaper-table .loading-text {
  display: inline-block;
  margin-left: 4px;
  font-size: 12px;
  color: #666;
  vertical-align: middle;
}

.exampaper-export-modal .exampaper-table .loading a,
.exampaper-export-modal .exampaper-table .loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

/* Loading spinner for list-export button - smaller */
.list-export div.loading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.list-export div.loading .loading-spinner {
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 2px solid rgba(0, 0, 0, 0.1);
  border-top-color: rgba(0, 0, 0, 0.4);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  vertical-align: middle;
}

.list-export div.loading .loading-text {
  display: inline-block;
  font-size: 12px;
  color: #666;
  vertical-align: middle;
}

/* ===== Export Modal End ===== */
#block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share {
  border: #CFCFCF 1px solid;
  border-radius: var(--textbook-radius);
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-top: 20px;
  padding: 20px;
}

#block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .left {
  background: url(../image/icon/icon_exampaper_share.svg) left center no-repeat;
  font-size: 16px;
  line-height: 30px;
  padding: 3px 0 3px 35px;
}

#block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .right {
  padding-left: 0;
  margin-bottom: 0;
  display: flex;
  background-color: #F3F3F3;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s ease;
  overflow: hidden;
}

#block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .right li {
  font-size: 16px;
  line-height: 30px;
  color: #000;
  list-style: none;
  width: 130px;
  padding: 3px 10px;
  text-align: center;
}

#block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .right li.active {
  background-color: #AF2328;
  color: #fff;
}

/* 我的試卷 ***************************************************/
#block-lingkee-textbook-series-textbookmyexampaper {
  width: 100%;
}

body.page-node-818 .table-section .list-header-filter .view-title {
  padding-left: 0;
}

body.page-node-818 .list-header-filter .view-title::before {
  background: url(../image/icon/icon_my_exampaper.svg) center center no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
}

.number-of-exampapers {
  margin-top: 20px;
  margin-bottom: 15px;
}

.number-of-exampapers>div {
  background-color: #D0EEFF;
  color: #0026A2;
  font-size: 15px;
  line-height: 1;
  display: block;
  width: fit-content;
  padding: 8px 12px 7px;
  border-radius: 30px;
  margin-left: auto;
}

/* table */
.school-exampaper-section.table-section .list-content .views-table thead tr th,
.textbook-exampaper-section.table-section .list-content .views-table thead tr th {
  padding: 17px 15px;
  text-align: center;
  white-space: nowrap;
}

.school-exampaper-section.table-section .list-content .views-table tbody tr td,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td {
  padding: 15px;
  text-align: center;
  vertical-align: middle;
}

.school-exampaper-section.table-section .list-content .views-table tbody tr .views-field:not(.list-title),
.textbook-exampaper-section.table-section .list-content .views-table tbody tr .views-field:not(.list-title) {
  width: 1%;
}

.school-exampaper-section.table-section .list-content .views-table thead tr th.list-title,
.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-title,
.textbook-exampaper-section.table-section .list-content .views-table thead tr th.list-title,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-title {
  text-align: left;
}

.school-exampaper-section.table-section .list-content .views-table thead tr th.list-creation-date,
.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-creation-date,
.textbook-exampaper-section.table-section .list-content .views-table thead tr th.list-creation-date,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-creation-date,
.school-exampaper-section.table-section .list-content .views-table thead tr th.list-change-date,
.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-change-date,
.textbook-exampaper-section.table-section .list-content .views-table thead tr th.list-change-date,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-change-date {
  padding-left: 20px;
  padding-right: 20px;
}

.school-exampaper-section.table-section .list-content .views-table thead tr th.list-number-fraction,
.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction,
.textbook-exampaper-section.table-section .list-content .views-table thead tr th.list-number-fraction,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction {
  padding-left: 20px;
  padding-right: 80px;
}

.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div {
  background-color: #E0F1FB;
  border-radius: 30px;
  line-height: 22px;
  padding: 4px 13px;
  min-width: 115px;
  display: flex;
  justify-content: center;
}

.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div span.number,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div span.number {
  color: #000;
  font-size: 16px;
}

.school-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div span.separator,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr td.list-number-fraction>div span.separator {
  background-color: #AFD6ED;
  width: 1px;
  margin-left: 10px;
  margin-right: 10px;
  display: block;
}

/* .exampaper-pagination-container {
  position: relative;
  z-index: 2;
} */
.table-section .list-content .views-table tbody tr .list-share div {
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  display: block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_share.svg);
}

.table-section .list-content .views-table tbody tr .list-edit a {
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 10px;
  text-indent: -9999px;
  display: block;
  width: 36px;
  height: 36px;
  overflow: hidden;
  cursor: pointer;
  background-color: #F3F3F3;
  background-image: url(../image/icon/icon_edit.svg);
}

.textbook-exampaper-section.table-section .list-content .views-table tbody tr div,
.textbook-exampaper-section.table-section .list-content .views-table tbody tr a {
  margin: auto;
}

.table-section .list-content .views-table tbody tr .list-edit a:hover,
.teaching-materials-list-section .list-content .views-table tbody tr .list-bookmark div.active,
.table-section .list-content .views-table tbody tr .list-clone div:hover,
.table-section .list-content .views-table tbody tr .list-share div.active,
.table-section .list-content .views-table tbody tr .list-share div:hover {
  background-color: var(--custom-theme-button-color);
}

.textbook-exampaper-section .create-exampaper>a,
.school-exampaper-section .create-new-paper>a {
  background-color: var(--custom-theme-button-color);
  border-radius: 10px;
  color: #000;
  font-size: 16px;
  line-height: 1;
  display: block;
  width: fit-content;
  margin-left: auto;
  margin-top: 20px;
  padding: 12px 15px 12px 17px;

}

.textbook-exampaper-section .create-exampaper>a:hover,
.school-exampaper-section .create-new-paper>a:hover {
  background-color: var(--custom-theme-color);
  color: #fff;
}

.textbook-exampaper-section .create-exampaper>a::before,
.school-exampaper-section .create-new-paper>a::before {
  background: url(../image/icon/icon_create_exampaper_16x16.svg) center center no-repeat;
  content: '';
  vertical-align: top;
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  transition: all 0.2s ease;
}

.textbook-exampaper-section .create-exampaper>a:hover::before,
.school-exampaper-section .create-new-paper>a:hover::before {
  background: url(../image/icon/icon_create_exampaper_16x16_white.svg) center center no-repeat;
}

/* ===== Exam Paper Preview Modal Styles (page-node-818) ===== */
#exampaper-preview-modal .modal-header {
  display: flex;
  flex-direction: column;
  margin-bottom: 10px;
}

#exampaper-preview-modal .modal-header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

#exampaper-preview-modal .modal-header-row-top {
  margin-bottom: 30px;
}

#exampaper-preview-modal .modal-header-row-top .modal-title {
  margin: 0;
  flex: 1;
  position: relative;
  padding-left: 41px;
  font-size: 24px;
}

#exampaper-preview-modal .modal-header-row-top .modal-title::before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../image/icon/icon_preview_exampaper.svg) center center no-repeat;
  position: absolute;
  left: 0;
  top: 3px
}

#exampaper-preview-modal #preview-question-count {
  background-color: #D0EEFF;
  border-radius: 30px;
  color: #0026A2;
  font-size: 15px;
  line-height: 16px;
  padding: 7px 12px;
}

#exampaper-preview-modal #preview-transform {
  white-space: nowrap;
}

/* News list page *******************************************************/
.page-node-52 .block-field-blocknodepagefield-content,
.page-node-60 .block-field-blocknodepagefield-content {
  display: none;
}

#block-lingkee-textbook-series-views-block-textbook-block-2,
.block-views-blockblock-question-bank-news-block-2 {
  background-color: #fff;
  border-radius: var(--textbook-radius);
  border: 1px solid #CFCFCF;
  padding: 20px;
  width: 100%;
}

#views-exposed-form-block-homepage-textbook-block-2,
#views-exposed-form-block-question-bank-news-block-2 {
  display: none;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .list-header-filter,
.block-views-blockblock-question-bank-news-block-2 .list-header-filter {
  display: flex;
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
}

.news-list-content {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.news-list-content>div {
  width: calc(50% - 10px);
}

.news-list-content .left>img {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  border-radius: var(--textbook-radius);
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row,
.block-views-blockblock-question-bank-news-block-2 .views-row {
  border: 1px solid #CFCFCF;
  padding: 20px 20px 20px 40px;
  margin-bottom: 15px;
  border-radius: var(--textbook-radius);
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-body,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-body {
  position: relative;
  margin-bottom: 10px;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-body::before,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-body::before {
  background-color: #009F4D;
  border-radius: 4px;
  content: '';
  display: block;
  height: 100%;
  max-height: 52px;
  width: 4px;
  position: absolute;
  left: -22px;
  top: 0;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-body :last-child,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-body :last-child {
  margin-bottom: 0;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-body p,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-body p {
  line-height: calc(100% + 10px);
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-body img,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-body img {
  max-width: 100%;
  height: auto;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .views-field-created,
#block-lingkee-textbook-series-views-block-textbook-block-2 .views-row .content-date time,
.block-views-blockblock-question-bank-news-block-2 .views-row .views-field-created {
  color: #909090;
  font-size: 15px;
  line-height: 1.467;
  display: block;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pager,
.block-views-blockblock-question-bank-news-block-2 .pager {
  margin-left: calc(50% + 10px);
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination,
.block-views-blockblock-question-bank-news-block-2 .pagination {
  gap: 20px;
  margin-bottom: 0;
  padding: 5px 0 0;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item .page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item .page-link {
  border: none;
  border-radius: 0;
  color: #000;
  font-size: 16px;
  line-height: 18px;
  padding: 5px 0;
  box-shadow: none;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item .page-link:hover,
#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item .page-link:focus,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item .page-link:hover,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item .page-link:focus {
  background: none;
  color: var(--custom-theme-color);
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.active>.page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.active>.page-link {
  background: none;
  color: var(--custom-theme-color);
  font-weight: 700;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--last .page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--last .page-link {
  background: url(../image/icon/pagination_last.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--first .page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--first .page-link {
  background: url(../image/icon/pagination_first.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--next .page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--next .page-link {
  background: url(../image/icon/pagination_next.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--previous .page-link,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--previous .page-link {
  background: url(../image/icon/pagination_prev.svg) center center no-repeat;
  border: #CFCFCF 1px solid;
  border-radius: 4px;
  width: 30px;
  overflow: hidden;
  text-indent: -9999px;
}

#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--last .page-link:hover,
#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--first .page-link:hover,
#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--next .page-link:hover,
#block-lingkee-textbook-series-views-block-textbook-block-2 .pagination .page-item.pager__item--previous .page-link:hover,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--last .page-link:hover,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--first .page-link:hover,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--next .page-link:hover,
.block-views-blockblock-question-bank-news-block-2 .pagination .page-item.pager__item--previous .page-link:hover {
  border-color: var(--custom-theme-color);
}

/* Video Section *******************************************************/
.teaching-materials-list-section .video-content .empty-content {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  min-height: 400px;
  background-color: #fff;
  padding: 0;
  max-width: 1040px;
  margin: auto;
  width: 100%;
}

.teaching-materials-list-section .video-content>.row {
  --bs-gutter-x: 20px;
  row-gap: 20px;
  padding-bottom: 50px;
}

.video-card {
  background: #fff;
  border-radius: 15px;
  overflow: hidden;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.video-card-image {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  cursor: pointer;
}

.video-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.video-card:hover .video-card-image img {
  transform: scale(1.1);
}

.video-card-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  padding: 15px;
  position: relative;
}

.video-card-content .list-bookmark {
  background: #fff url(../image/icon/video_bookmark_gray.svg) center center no-repeat;
  border: #F3F3F3 1px solid;
  border-radius: 10px;
  width: 40px;
  height: 40px;
  padding: 0;
  position: absolute;
  right: 15px;
  top: 0;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}

.video-card-content .list-bookmark div {
  visibility: hidden;
}

.video-card-content .list-bookmark.active {
  background: var(--custom-theme-button-color) url(../image/icon/video_bookmark_black.svg) center center no-repeat;
}

.video-card-title {
  color: #000;
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  width: 100%;
  min-height: 48px;
  margin-bottom: 20px;
  padding-right: 55px;
}

.video-card-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: auto;
}

.video-card-icons .resource-icon a {
  text-indent: -9999px;
  background-size: 28px 28px;
  display: block;
  width: 28px;
  height: 28px;
  overflow: hidden;
}

.video-card-icons .resource-icon.word a {
  background-image: url(../image/icon/video_word_28x28.svg);
}

.video-card-icons .resource-icon.powerpoint a {
  background-image: url(../image/icon/download_ppt.svg);
}

.video-card-icons .resource-icon.pdf a {
  background-image: url(../image/icon/download_pdf.svg);
}

.video-card-icons .resource-icon.mp4 a {
  background-image: url(../image/icon/download_video.svg);
}

.video-card-icons .resource-icon.youtube a {
  background-image: url(../image/icon/download_youtube.svg);
}

.video-card-icons .resource-icon.googleForm a {
  background-image: url(../image/icon/video_google_forms_28x28.svg);
}

.video-card-icons .resource-icon.ibrain a {
  background-image: url(../image/icon/video_ibrain_28x28.svg);
}

.video-card-icons .resource-icon.kahoot a {
  background-image: url(../image/icon/video_kahoot_28x28.svg);
}

/* Access Denied Page ***************************************************/
.all-sites-login-container-content {
  max-width: 512px;
  margin: 100px auto !important;
  padding-left: 20px;
  padding-right: 20px;
}

.all-sites-login-container-content .login-content {
  background-color: #fff;
  border: #CFCFCF 1px solid;
  border-radius: 20px;
  text-align: center;
  max-width: 480px;
  margin: 0 auto;
  padding: 40px;
}

.all-sites-login-container-content .login-content h1 {
  background: url(../image/icon/icon_user_login.svg) left center no-repeat;
  font-size: 24px;
  line-height: 30px;
  display: inline-block;
  margin: 0 auto 30px;
  padding-left: 40px;
}

.all-sites-login-container-content .login-content .content>a {
  background: #FFC72C url(../image/icon/btn_arrow_black.svg) right 14px center no-repeat;
  border-radius: 40px;
  color: #000;
  font-size: 18px;
  line-height: 22px;
  padding: 9px 32px 9px 16px;
  display: inline-block;
}

.all-sites-login-container-content .login-content .content>a:hover,
.all-sites-login-container-content .login-content .content>a:focus {
  filter: contrast(1.3);
}

/* 教材列表 loading spinner 樣式 */
.views-view-table tbody tr.loading-row td.loading-cell {
  text-align: center;
  padding: 40px;
}

.views-view-table tbody tr.loading-row .loading-inner {
  display: inline-block;
}

.views-view-table tbody tr.loading-row .loading-spinner {
  border: 3px solid #f3f3f3;
  border-top: 3px solid var(--custom-theme-color);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin: 0 auto;
  animation: spin 1s linear infinite;
}

.views-view-table tbody tr.loading-row .loading-text {
  margin-top: 15px;
  color: #666;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* 複製標籤樣式 */
.table-section .list-content .views-table tbody tr .list-title .clone-tag {
  display: inline-block;
  background-color: var(--custom-theme-button-color);
  color: #000;
  font-size: 14px;
  line-height: 1;
  padding: 3px 6px;
  border-radius: 2px;
  margin-right: 10px;
  vertical-align: top;
}

/**************************************************************/
/* Media Query ************************************************/
@media screen and (min-width: 992px) {

  /* textbook content ***************************************************/
  #block-lingkee-textbook-series-textbooksidebarmenu {
    position: sticky;
    top: 0;
  }

  .teaching-materials-list-section .list-header-filter {
    position: sticky;
    top: 0;
    z-index: 2;
  }

  .toolbar-fixed #block-lingkee-textbook-series-textbooksidebarmenu,
  .toolbar-fixed .teaching-materials-list-section .list-header-filter {
    top: 53px;
  }

  /* News list page *******************************************************/
  .news-list-content .left {
    position: sticky;
    top: 0;
  }

  .toolbar-fixed .news-list-content .left {
    top: 53px;
  }
}

@media screen and (max-width: 1399px) {

  /* header ***************************************************/
  header .navbar .region-nav-branding .navbar-brand::after {
    height: 40px;
    margin: 5px 20px;
  }

  header .navbar .region-nav-branding .navbar-brand img {
    height: 50px;
  }

  .subject-website .content {
    padding-top: 5px;
    padding-bottom: 5px;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-item {
    padding-left: 5px;
    padding-right: 5px;
  }

  /**************************************************************/
  /* Question Bank Exampaper - Create New Exam Paper ************/
  /* ===== Filter Radio Group ===== */
  .question_bank_exampaper_edit_form .filter-radio-item {
    font-size: 14px;
    padding: 10px 5px;
  }

  /* ===== Selected Questions Info Step3  ===== */
  .question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-header .question-header-right,
  .question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-item-row .question-right {
    width: 280px;
  }
}

@media screen and (max-width: 1199px) {

  /* header ***************************************************/
  header .navbar .region-nav-branding {
    padding: 20px;
    position: relative;
  }

  header .navbar .region-nav-branding .navbar-brand img {
    height: 40px;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body {
    padding-right: 20px;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav {
    position: relative;
    left: auto;
    transform: none;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-item {
    padding-left: 0;
    padding-right: 0;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link {
    font-size: 18px;
  }

  header .language-switcher-language-url ul li a {
    font-size: 18px;
    padding: 0 10px;
  }

  .user-account {
    margin-left: 10px;
  }

  /* textbook menu ***************************************************/
  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link img {
    height: 36px;
  }

  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link span.has-new-badge {
    width: 24px;
    height: 36px;
  }

  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li .textbook-icon-link img~span {
    margin: 6px 0 6px 10px;
  }

  /* textbook quick filter ***************************************************/
  #block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li {
    width: calc(20% - 16px);
  }

  /**************************************************************/
  /* Question Bank Exampaper - Create New Exam Paper ************/
  /* ===== Filter Styles ===== */
  .question_bank_exampaper_edit_form .manual_mode .filter-row-type .filter-group,
  .question_bank_exampaper_edit_form .filter-row-radio .filter-group {
    flex: 0 0 auto;
    width: calc(50% - 10px);
  }

  /* Left Section - Question Content */
  .question_bank_exampaper_edit_form .step-3-Content-right-content .question-left {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  /* Right Section - Meta Info & Actions */
  .question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-item-row .question-right {
    width: 100%;
    max-width: none;
  }

  /* Button style for remove (added state) */
  .question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left {
    width: 30%;
  }
}

@media screen and (max-width: 991px) {

  /* header ***************************************************/
  header .navbar .container-xxl {
    position: relative;
  }

  header .navbar .container-xxl::before {
    background-color: #fff;
    border-radius: 50px;
    content: '';
    display: block;
    position: absolute;
    left: 20px;
    right: 20px;
    top: 0;
    bottom: 0;
  }

  header .navbar .container-xxl .navbar-toggler {
    background: url(../image/icon/navbar-toggler.svg) center center no-repeat;
    border: none;
    padding: 20px;
    position: relative;
  }

  header .navbar .container-xxl .offcanvas .btn-close {
    background: url(../image/icon/navbar-toggler-close.svg) center center no-repeat;
    opacity: 1;
    position: absolute;
    top: 20px;
    right: 20px;
    z-index: 1;
  }

  header .navbar .container-xxl .offcanvas-backdrop {
    background: none;
  }

  header .navbar-expand-lg .offcanvas.offcanvas-end {
    width: 100%;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body {
    padding: 20px;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link {
    padding: 10px 20px;
  }

  header .navbar-expand-lg .offcanvas .offcanvas-body .region-nav-main .navbar-nav .nav-link.is-active::after {
    width: 4px;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -4px;
    right: auto;
  }

  /* textbook menu ***************************************************/
  .textbook-menu .region-textbook-menu {
    background: linear-gradient(180deg, #FFF 46%, color-mix(in srgb, var(--custom-theme-color) 90%, #fff) 100%);
    flex-direction: column;
    row-gap: 30px;
  }

  .textbook-menu .region-textbook-menu .menu--textbook-menu {
    margin-left: 0;
  }

  /* textbook carousel ***************************************************/
  #block-lingkee-textbook-series-textbookcarousel {
    width: 100%;
  }

  /* textbook News ***************************************************/
  #block-views-block-block-homepage-textbook-block-1 {
    width: 100%;
    height: 600px;
    aspect-ratio: unset;
  }

  /* textbook data box ***************************************************/
  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul {
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 20px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li {
    width: calc(33.33% - 13.33px);
  }

  /* textbook quick filter ***************************************************/
  #block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li {
    width: calc(25% - 15px);
  }

  /* textbook content ***************************************************/
  .textbook-view-content .textbook-sidebar-first {
    width: 100%;
    padding-right: 0;
  }

  .textbook-view-content .textbook-sidebar-second {
    width: 100%;
  }

  #block-lingkee-textbook-series-textbooksidebarmenu {
    height: auto;
  }

  .teaching-materials-list-section .list-header-filter .textbook-icon-section {
    margin-bottom: 20px;
  }

  .teaching-materials-list-section .list-header-filter .textbook-icon-section ul {
    flex-wrap: wrap;
  }

  .teaching-materials-list-section .list-header-filter .textbook-icon-section ul li {
    width: 100%;
  }

  .teaching-materials-list-section .list-header-filter .textbook-icon-section ul li+li {
    margin-left: 0;
    margin-top: 20px;
  }

  .teaching-materials-list-section .list-header-filter .list-grade {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  .teaching-materials-list-section .list-header-filter .list-grade ul li {
    flex: 1 1 auto;
  }

  .teaching-materials-list-section .list-header-filter .list-unit {
    width: 100%;
    margin-bottom: 20px;
  }

  .teaching-materials-list-section .list-header-filter .list-header-filter-content>a:last-child {
    width: 100%;
    margin-left: 0;
  }

  /* Question Bank Exampaper ***************************************************/
  /* TextbookCarousel */
  #block-lingkee-textbook-series-question-bank-news-block-1 {
    width: 100%;
    height: 600px;
    aspect-ratio: unset;
  }

  /* Question Bank Block */
  .question-bank-block ul li {
    width: calc(50% - 10px);
  }

  /* Subject Selection Modal *************************************/
  /* Version Selection Modal *************************************/
  .subject-selection-modal .subject-option-box,
  .version-selection-modal .version-select-btn {
    width: 100%;
    max-width: 100%;
    flex: 1 1 100%;
  }

  .textbook-selection-modal .textbook-options {
    flex-direction: column;
  }

  .textbook-selection-modal .textbook-option-box {
    width: 100%;
  }

  .education-level-selection-modal .education-level-options {
    flex-direction: column;
  }

  .education-level-selection-modal .education-level-box {
    max-width: 100%;
  }

  .education-level-textbooks-modal .education-level-buttons {
    flex-direction: column;
  }

  .education-level-textbooks-modal .level-btn {
    max-width: 100%;
  }

  /* Modal Popup ************************************************/
  .modal-dialog {
    max-width: none;
    margin: 0.5rem;
  }

  /* Student Download Page ***************************************************/
  .textbook-StudentDownload-section .section-2>ul>li,
  .textbook-StudentDownload-section .section-2>ul>li:first-child {
    width: 100%;
  }

  /**************************************************************/
  /* Question Bank Exampaper - Create New Exam Paper ************/
  /* ===== Form Layout ===== */
  .question_bank_exampaper_edit_form .form-row {
    grid-template-columns: 1fr;
  }

  .question_bank_exampaper_edit_form .status-line {
    flex: 0 0 30px;
  }

  /* ===== Form Section ===== */
  /* ===== step-2 ===== */
  .question_bank_exampaper_edit_form .step-2-filterContent {
    flex-wrap: wrap;
  }

  .question_bank_exampaper_edit_form .step-2-filterContent .filter-sidebar-menu-section {
    max-width: none;
    width: 100%;
  }

  /* ===== Filter Question Type Counts ===== */
  .question_bank_exampaper_edit_form .question-type-counts-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  /* ===== Question List ===== */
  /* Question Item */
  .question-item {
    flex-direction: column;
  }

  /* Left Section - Question Content */
  .question-item .question-left {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  /* Right Section - Meta Info & Actions */
  .question-item .question-right {
    width: 100%;
    max-width: none;
  }

  /* ===== Pagination Styles ===== */
  /* ===== Download Page Pagination Styles ===== */
  /* ===== Bookmark Page Pagination Styles ===== */
  .question_bank_exampaper_edit_form .pagination,
  .download-pagination,
  .bookmark-pagination {
    flex-direction: column;
  }

  .question_bank_exampaper_edit_form .exampaper-items-per-page,
  .download-pagination .download-pagination-items-per-page,
  .bookmark-pagination .bookmark-pagination-items-per-page {
    position: relative;
    margin-left: auto;
  }

  /* ===== Exam Paper List Pagination Styles ===== */
  .textbook-exampaper-section .exampaper-pagination-wrapper,
  .school-exampaper-section .exampaper-pagination-wrapper {
    flex-direction: column;
  }

  .textbook-exampaper-section .exampaper-items-per-page,
  .school-exampaper-section .exampaper-items-per-page {
    position: relative;
    margin-left: auto;
  }

  /* ===== Selected Questions Info ===== */
  .question_bank_exampaper_edit_form .selected-questions-summary-wrapper {
    max-width: none;
  }

  /* Button style for remove (added state) */
  .question_bank_exampaper_edit_form #step-3 .placeholder-content,
  .question_bank_exampaper_edit_form #step-4 .placeholder-content {
    flex-wrap: wrap;
  }

  .question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-Content-left {
    width: 100%;
    max-width: none;
    position: relative;
    top: 0;
  }

  /* ===== step-4 ===== */
  .question_bank_exampaper_edit_form #step-4 .placeholder-content .step-4-Content-left {
    width: 100%;
    max-width: none;
  }

  /* News list page *******************************************************/
  .news-list-content {
    flex-direction: column;
  }

  .news-list-content>div {
    width: 100%;
  }

  #block-lingkee-textbook-series-views-block-textbook-block-2 .pager,
  .block-views-blockblock-question-bank-news-block-2 .pager {
    margin-left: 0;
  }
}

@media screen and (max-width: 767px) {

  /* header ***************************************************/
  header .navbar .region-nav-branding {
    padding: 12px 0 12px 12px;
  }

  header .navbar .region-nav-branding .navbar-brand img {
    height: 30px;
  }

  header .navbar .region-nav-branding .navbar-brand::after {
    height: 36px;
    margin: 5px 8px;
  }

  .subject-website .content img {
    width: 36px;
    margin-right: 8px;
  }

  .subject-website p {
    font-size: 14px;
  }

  header .navbar .container-xxl .navbar-toggler {
    padding: 12px;
  }

  /* footer ***************************************************/
  footer .region-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  footer .region-footer .block-system-branding-block {
    margin-bottom: 40px;
  }

  /* textbook menu ***************************************************/
  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul {
    flex-direction: column;
  }

  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li {
    padding-top: 0;
    padding-bottom: 0;
  }

  .textbook-menu #block-lingkee-textbook-series-textbookicon .textbook-icon-section ul li+li {
    border-left: none;
    border-top: #CFCFCF 1px solid;
    margin-left: 0;
    margin-top: 12px;
    padding-left: 0;
    padding-top: 12px;
  }

  /* textbook data box ***************************************************/
  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul {
    justify-content: space-between;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li {
    width: calc(50% - 10px);
    padding: 17px 15px 13px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li+li {
    margin-left: 0;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.popular-downloads {
    background-position: right 15px bottom 15px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.my-downloads {
    background-position: right 16px bottom 17px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.student-downloads {
    background-position: right 19px bottom 14px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.my-bookmarks {
    background-position: right 16px bottom 18px;
  }

  #block-lingkee-textbook-series-textbookdatabox .textbook-data-box-section ul li.question-bank {
    background-position: right 14px bottom 15px;
  }

  /* textbook quick filter ***************************************************/
  #block-lingkee-textbook-series-textbookquickfilter .textbook-quick-filter-section ul li {
    width: calc(50% - 10px);
  }

  /* textbook content ***************************************************/
  /* header filter */
  .teaching-materials-list-section .list-header-filter .content-header>.list-selected>ul {
    flex-direction: column;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.list-selected>ul>li+li {
    margin-left: 0;
    margin-top: 10px;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul {
    flex-direction: column;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li {
    margin-right: 0;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li+li {
    margin: 10px 0 0;
    padding-left: 0;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li:first-child {
    margin-bottom: 10px;
  }

  .teaching-materials-list-section .list-header-filter .content-header>.selected-summary>ul>li:last-child {
    border-left: none;
    border-top: #CFCFCF 1px solid;
    padding-top: 10px;
  }

  /* header filter end */
  /* table empty */
  .teaching-materials-list-section.teaching-materials-empty .list-content .views-table thead tr th {
    opacity: 0;
  }

  /* Textbook Section ***************************************************/
  .table-section .list-selected>ul {
    flex-direction: column;
  }

  .table-section .list-selected>ul>li+li {
    margin-left: 0;
    margin-top: 10px;
  }

  .table-section .list-selected .delete-selected-button,
  .table-section .list-selected .clear-selected-button {
    width: 100%;
  }

  /* Login Page ***************************************************/
  .login-main .user-header .site-logo {
    width: calc(100% - 143px);
  }

  .login-main .user-header .site-logo~a {
    margin-left: 10px;
    padding-left: 10px;
  }

  .login-main .user-header .site-logo~a p {
    font-size: 18px;
  }

  .subject-selection-modal .subject-options {
    flex-direction: column;
  }

  /* Question Bank Exampaper ***************************************************/

  /* Question Bank Block */
  .question-bank-block ul li {
    width: 100%;
  }

  /* Student Download Page ***************************************************/
  .textbook-StudentDownload-section #StudentDownloadTab {
    margin-bottom: 20px;
  }

  .textbook-StudentDownload-section #StudentDownloadTab .nav-item {
    max-width: none;
  }

  .textbook-StudentDownload-section #StudentDownloadTab>li:first-child .nav-link {
    border-radius: 10px 10px 0 0;
  }

  .textbook-StudentDownload-section #StudentDownloadTab>li:nth-child(2) .nav-link {
    border-radius: 0 0 10px 10px;
  }

  .textbook-StudentDownload-section .section-1 .list-header-filter>ul .class-filter>ul>li {
    width: 65px;
  }

  .textbook-StudentDownload-section .section-2 .details .download-details>li {
    width: 100%;
  }

  /* ===== Button Styles ===== */
  .question_bank_exampaper_edit_form .btn-primary.btn-transform {
    width: 100%;
  }

  /**************************************************************/
  /* Question Bank Exampaper - Create New Exam Paper ************/
  /* ===== Form Header ===== */
  .question_bank_exampaper_edit_form>.form-header {
    flex-direction: column;
    row-gap: 20px;
  }

  /* ===== Status Bar ===== */
  .question_bank_exampaper_edit_form .status-step {
    flex: 0 0 auto;
  }

  .question_bank_exampaper_edit_form .status-line {
    flex: 1 1 auto;
  }

  /* ===== Form Section ===== */
  .question_bank_exampaper_edit_form .form-section {
    padding: 10px 20px 20px;
  }

  .question_bank_exampaper_edit_form .section-title {
    flex-direction: column;
    row-gap: 20px;
  }

  .question_bank_exampaper_edit_form .section-title .section-title-left {
    width: 100%;
  }

  .question_bank_exampaper_edit_form .section-title .section-title-right {
    text-align: center;
    width: 100%;
    flex-direction: column;
  }

  /* ===== Filter Section ===== */
  .question_bank_exampaper_edit_form .step-2-filterContent .filter-section .filter-choose-section>button {
    font-size: 18px;
  }

  /* ===== Filter Styles ===== */
  .question_bank_exampaper_edit_form .manual_mode .filter-row-type .filter-group,
  .question_bank_exampaper_edit_form .random_mode .filter-row-type .filter-group,
  .question_bank_exampaper_edit_form .filter-row-radio .filter-group {
    width: 100%;
  }

  /* ===== Filter Question Type Counts ===== */
  .question_bank_exampaper_edit_form .question-type-counts-grid {
    grid-template-columns: repeat(1, 1fr);
  }

  /* ===== Filter Actions ===== */
  .question_bank_exampaper_edit_form .filter-actions {
    flex-direction: column;
  }

  /* ===== Filter Keyword, Code ===== */
  .question_bank_exampaper_edit_form .filter-row-keyword .filter-group {
    width: 100%;
  }

  .question_bank_exampaper_edit_form .filter-row-keyword .filter-group:first-child {
    border-right: none;
    border-bottom: 1px solid #CFCFCF;
  }

  /* ===== Question List ===== */
  /* Question Item */
  .question-item .question-header {
    flex-wrap: wrap;
    row-gap: 15px;
    position: relative;
  }

  /* .question-item .question-header ul {
    position: relative;
  } */
  .question-item .question-header .question-header-right {
    width: 100%;
  }

  .question-item .question-header .question-header-right .chinese,
  .question-item .question-header .question-header-right .english {
    width: 100%;
  }

  .question-item .question-header .question-header-right .mark {
    position: absolute;
    right: 0;
    top: 0;
  }

  /* Button style for remove (added state) */
  .question_bank_exampaper_edit_form #step-3 .placeholder-content .step-3-filterContent {
    max-height: none;
  }

  /* ===== Selected Questions Info Step3  ===== */
  .question_bank_exampaper_edit_form #step-3 .step-3-Content-right-header {
    flex-direction: column;
    row-gap: 20px;
    margin-bottom: 20px;
  }

  .question_bank_exampaper_edit_form #step-3 .step-3-Content-right-header-selected-count {
    width: 100%;
    text-align: center;
  }

  .question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-header .question-header-right,
  .question_bank_exampaper_edit_form .step-3-Content-right .question-item .question-item-row .question-right {
    width: 100%;
  }

  /* ===== step-4 ===== */
  #block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share {
    flex-wrap: wrap;
  }

  #block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .left,
  #block-lingkee-textbook-series-textbookquestionbankexampaperform #step-4 .step-4-Content-right .share .right {
    width: 100%;
  }

  /* ===== Export Modal ===== */
  .exampaper-export-modal .exampaper-info {
    flex-direction: column;
    align-items: flex-start;
  }
}
