/* common */
body.vote {
  background: #FFF6E9;
}

.idx-others *{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
}
.r-w-full {
  width: 100%;
}
.r-position-r{
  position: relative;
}

.r-ovh {
  overflow: hidden;
}

.r-d-f {
  display: flex;
}

.r-fd-column {
  flex-direction: column;
}

@media screen and (min-width: 576px) {
  .r-fd-sm-row {
    flex-direction: row;
  }
  .r-fd-sm-column {
    flex-direction: column;
  }
}

@media screen and (min-width: 768px) {
  .r-fd-lg-row {
    flex-direction: row;
  }
}

.r-ai-center {
  align-items: center;
}

@media screen and (min-width: 768px) {
  .r-ai-lg-start {
    align-items: start;
  }
}

.r-jc-between {
  justify-content: space-between;
}

.r-jc-end {
  justify-content: flex-end;
}

.r-jc-center {
  justify-content: center;
}

.r-fww {
  flex-wrap: wrap;
}

.r-db{
  display: block;
}

@media screen and (min-width: 768px) {
  .r-d-lg-b{
    display: block;
  }
  .r-d-lg-n{
    display: none;
  }
  .r-d-lg-in{
    display: inline;
  }
  .r-d-lg-ib{
    display: inline-block;
  }
  .r-d-lg-f{
    display: flex;
  }
}

.r-common .r-col-6{
  width: 50%;
}

.r-common .r-col-12{
  width: 100%;
}

@media screen and (min-width: 768px) {
  .r-common .r-col-lg-6{
    width: 50%;
  }
}

.r-common .r-gap-20{
  gap: 20px;
}

.r-common .r-gap-40{
  gap: 40px;
}

.r-common .r-gap-60{
  gap: 60px;
}

@media screen and (min-width: 576px) {
  .r-common .r-gap-sm-60 {
    gap: 60px;
  }
}

.r-common .txt-bold{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-weight: bold;
}

.r-common .mr-10{
  margin-right: 10px;
}

.r-common .mb-30{
  margin-bottom: 30px;
}

.r-top-set{
  padding-top: 114px;
}

.r-top-detail{
  padding-top: 0px;
}

@media screen and (min-width: 1200px) {
  .r-top-set {
    padding-top: 0;
  }
}

.r-container{
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

@media screen and (min-width: 768px) {
  .r-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}

.r-main-title {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  position: relative;
  text-align: center;
  font-size: 24px;
  margin: 0px 0 20px 0;
  color: #FF8000;
}

@media screen and (min-width: 768px) {
  .r-main-title {
    font-size: 42px;
    margin: 0px 0 40px 0;
  }
}

.r-main-title::before {
  position: absolute;
  content: '';
  width: 80px;
  height: 3px;
  background: #FF8000;
  left: 50%; 
  bottom: -4px; 
  transform: translateX(-50%);
}

.r-sec-pt{
  padding-top: 40px;
}

@media screen and (min-width: 768px) {  
  .r-sec-pt {
    padding-top: 60px;
  }
}

.r-sec-pb{
  padding-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .r-sec-pb {
    padding-bottom: 60px;
  }
}

/* img */
.r-img-set{
  /*position: absolute;*/
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.r-video-set{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* editor */
.r-editor{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  position: relative;
}

.r-editor h2{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 32px;
}

@media screen and (min-width: 768px) {
  .r-editor h2 {
    font-size: 42px;
  }
}

.r-editor h3{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 28px;
}

@media screen and (min-width: 768px) {
  .r-editor h3 {
    font-size: 32px;
  }
}

.r-editor h4{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 22px;
}

@media screen and (min-width: 768px) {
  .r-editor h4 {
    font-size: 24px;
  }
}

.r-editor p{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .r-editor p {
    font-size: 20px;
  }
}

.r-editor ul{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  list-style: disc;
  font-size: 18px;
  margin-left: 23px;
}

@media screen and (min-width: 768px) {
  .r-editor ul {
    font-size: 20px;
  }
}

.r-editor ol{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  list-style: decimal;
  font-size: 18px;
  margin-left: 21px;
}

@media screen and (min-width: 768px) {
  .r-editor ol {
    font-size: 20px;
  }
}

.r-editor .r-mb-10{
  margin-bottom: 10px;
}

.r-editor .r-mb-20{
  margin-bottom: 20px;
}

.r-editor .r-mb-30{
  margin-bottom: 30px;
}

.r-editor .r-color-pri{
  color: #FF6B00;
}

.r-ex-img{
  width: 100%;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* banner */
.wrap-r-bn{
  padding-top: 62px;
}

@media screen and (min-width: 1200px) {
  .wrap-r-bn {
    padding-top: 0;
  }
}

.wrap-r-bn.r-mb-set{
  margin-bottom: 30px;
}

@media screen and (min-width: 1200px) {
  .wrap-r-bn.r-mb-set {
    margin-bottom: 50px;
  }
}

.wrap-r-bn .banner-swiper {
  width: 100%;
}

.wrap-r-bn .swiper-button-next,
.swiper-button-prev {
  color: #ffffff;
}

.wrap-r-bn .swiper-button-next,
.wrap-r-bn .swiper-button-prev {
  color: #ffffff;
}

.wrap-r-bn .swiper-pagination-bullet {
  background: #ffffff;
  opacity: 0.5;
}

.wrap-r-bn .swiper-pagination-bullet-active {
  opacity: 1;
}

.r-bn-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.r-img-box{
  position: relative;
  height: 100%;
  /*padding-bottom: 42%;*/
  width: 100%;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .r-img-box {
    /*padding-bottom: 42%;*/
  }
}

/* vote section */
.r-vote-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}

@media screen and (min-width: 768px) {
  .r-vote-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 0;
  }
}

.r-vote-item {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  background: #FFDC9B;
  border: 2px solid #FF6B00;
  border-radius: 10px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  transition: transform 0.3s ease;
}

@media screen and (min-width: 768px) {
  .r-vote-item:hover {
    transform: translateY(-5px);
  }
}

.r-vote-img {
  max-width: 240px;
  width: 31%;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 20px;
}

@media screen and (min-width: 768px) {
  .r-vote-img {
    width: 38%;
  }
}

.r-vote-img img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.r-vote-content {
  flex-grow: 1;
}

.r-vote-content h3 {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  margin-bottom: 15px;
}

@media screen and (max-width: 768px) {
  .r-vote-item {
    padding: 0px;
  }
  .r-vote-img {
    border-radius: 10px;
   }
  .r-vote-content {
    padding: 5px 5px;
  }
  .r-vote-content.no-img {
    padding: 10px;
  }
}

.r-vote-en {
  display: block;
  font-weight: 500;
  color: #717171;
  font-size: 18px;
  margin-bottom: 5px;
}

@media screen and (min-width: 768px) {
  .r-vote-en {
    font-size: 20px;
  }
}

@media screen and (min-width: 1140px) {
  .r-vote-en {
    font-size: 24px;
  }
}

.r-vote-ch {
  display: block;
  font-size: 28px;
  color: #333;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .r-vote-ch {
    font-size: 32px;
  }
}

@media screen and (min-width: 1140px) {
  .r-vote-ch {
    font-size: 48px;
  }
}

.r-vote-btn {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  display: inline-block;
  background: #E18B00;
  font-size: 18px;
  color: white;
  padding: 8px 20px;
  border-radius: 40px;
  text-decoration: none;
  transition: background-color 0.3s ease;
}

.r-vote-btn img{
  width: 30px;
}

@media screen and (min-width: 768px) {
  .r-vote-btn {
    font-size: 24px;
  }
}

@media screen and (min-width: 1140px) {
  .r-vote-btn {
    font-size: 28px;
  }
}

.r-vote-btn.for-green{
  background: #87B800;
}
.r-vote-btn.not-show{
  display: none;
}
@media screen and (min-width: 768px) {
  .r-vote-btn.not-show{
    display: block;
    visibility: hidden;
  }
}
.r-common .r-vote-btn:hover {
  color: white!important;
}

@media screen and (min-width: 768px) {
  .r-common .r-vote-btn:hover {
    background: #ff8000;
    color: white!important;
  }
}

/* vote detail section */
.r-vote-detail {
  background-color: #FFEAC2;
}

.r-vote-info-item {
  margin-bottom: 30px;
}

.r-vote-info-item:last-child {
  margin-bottom: 0;
}

.r-vote-info-title {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  color: #FF6B00;
  margin-bottom: 15px;
  font-weight: 500;
}

.r-vote-info-content p {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  margin-bottom: 10px;
  line-height: 1.6;
}

.r-vote-info-content p:last-child {
  margin-bottom: 0;
}

.r-vote-info-content ul {
  margin-top: 10px;
}

.r-vote-info-content li {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  margin-bottom: 10px;
  line-height: 1.6;
}

.r-vote-info-content li:last-child {
  margin-bottom: 0;
}

.r-vote-col-6{
  width: 100%;
}

@media screen and (min-width: 768px) {
  .r-vote-col-6 {
    width: calc(50% - 10px);
  }
}

/* video section */
.r-video-bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 35%;
  background-color: #BCD2D9;
}

@media screen and (min-width: 768px) {
  .r-video-bg {
    top: 0;
    left: 0;
    width: 40%;
    height: 100%;
  }
}

.r-video-bg.blue{
  background-color: #BCD2D9;
}

.r-video-bg.pink{
  background-color: #D9BCBC;
}

.r-video-bg.green{
  background-color: #C1D9BC;
}

.r-idx-video {
  background-color: #FFF6E9;
}

.r-video-tag {
  display: inline-block;
  background: #FFEAC2;
  color: #FC7E00;
  padding: 6px 15px;
  border-radius: 20px;
  font-size: 14px;
  margin-bottom: 15px;
}

@media screen and (min-width: 768px) {
  .r-video-tag {
    font-size: 16px;
    margin-bottom: 20px;
  }
}

.r-video-box {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
  height: 0;
  padding-bottom: 56.25%;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .r-video-box {
    padding-bottom: 30%;
    width: calc(50% - 20px);
  }
}

.r-video-content h3 {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 24px;
  color: #333;
  margin-bottom: 15px;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .r-video-content h3 {
    font-size: 28px;
  }
}

.r-video-content p {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 16px;
  color: #666;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .r-video-content p {
    font-size: 18px;
  }
}

.r-video-list{
  padding-top: 40px;
  padding-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .r-video-list {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

.r-video-item{
  gap: 20px;
}

@media screen and (min-width: 768px) {
  .r-video-item {
    gap: 60px;
  }
}

@media screen and (min-width: 768px) {
  .r-idx-video .r-video-list:nth-of-type(even) .r-video-item {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .r-idx-video .r-video-list:nth-of-type(even) .r-video-bg{
    left: auto;
    right: 0;
  }
}

@media screen and (max-width: 576px) {
  .r-video-bg {
    max-height: 200px;
  }
}

/* qa list section */
.r-qa-list {
  max-width: 1000px;
  margin: 0 auto;
  background: #FFF6E9;
  border-radius: 20px;
  padding: 30px 20px;
}

@media screen and (min-width: 768px) {
  .r-qa-list {
    padding: 40px;
  }
}

.r-qa-item {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .r-qa-item {
    margin-bottom: 40px;
  }
}

/* draw cards section */
.r-draw-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}

@media screen and (min-width: 420px) {
  .r-draw-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (min-width: 576px) {
  .r-draw-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (min-width: 992px) {
  .r-draw-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
  }
}

.r-draw-item {
  background: black;
  border-radius: 20px;
  overflow: hidden;
  transition: transform 0.3s ease;
}

.r-draw-item .ver-light{
  background: #ffffff;
} 

@media screen and (min-width: 768px) {
  .r-draw-item:hover {
    transform: translateY(-5px);
  }
}

.r-draw-img {
  width: 100%;
  overflow: hidden;
}

.r-draw-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.r-draw-content {
  padding: 15px;
}

.r-draw-info {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  margin-bottom: 15px;
}

.r-draw-info > div {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 16px;
  margin-bottom: 8px;
  color: #ffffff;
}

.r-draw-info > div:last-child {
  margin-bottom: 0;
}

.r-draw-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.r-draw-share {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #87B800;
  border-radius: 40px;
  text-decoration: none;
  transition: background-color 0.3s ease;
  width: 43px;
  height: 43px;
}

.r-draw-share.for-text:hover {
  color: #ffffff!important;
}

.r-draw-share.for-text img{
  margin-left: 0px;
}

@media screen and (min-width: 576px) {
  .r-draw-share.for-text img{
    margin-left: 10px;
  }
}

.r-draw-share:hover {
  background: #FF8000;
}

.r-draw-share-icon{
  width: 22px;
  height: 22px;
}

@media screen and (min-width: 768px) {
  .r-draw-share-icon{
    width: 28px;
    height: 28px;
  }
}

.r-draw-cards .r-vote-btn {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  padding: 5px 10px;
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .r-draw-cards .r-vote-btn {
    padding: 8px 15px;
    font-size: 24px;
  }
}

.r-txt-hightlight{
  color: #FF8000;
}

.r-txt-hightlight.txt-bold{
  font-weight: bold;
}

.r-txt-hightlight.mr-10{
  margin-right: 10px;
}

/* content detail section */
.r-content-detail.obg {
  background-color: #FFEAC2;
}

.r-content-left {
  width: 100%;
  max-width: 350px;
}

@media screen and (min-width: 768px) {
  .r-content-left {
    width: 31%;
  }
}

.r-content-right {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .r-content-right {
    width: 69%;
  }
}

.r-content-img {
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
}

.r-content-img img {
  width: 100%;
  height: auto;
  display: block;
}

.r-content-date {
  margin-bottom: 10px;
}

.r-content-date p {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 16px;
  color: #666;
}

.r-content-tag {
  margin-bottom: 20px;
}

.r-content-tag p {
  display: inline-block;
  background: #FFEAC2;
  color: #FF8000;
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  padding: 6px 15px;
  border-radius: 20px;
  font-size: 16px;
}

.obg .r-content-tag p{
  background-color: #ffffff;
  color: #FF8000;
}

.r-content-rank {
  margin-bottom: 20px;
}

.r-content-number {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 32px;
  color: #FF8000;
  margin-left: 10px;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .r-content-number {
    font-size: 42px;
  }
}

.r-content-title {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 32px;
  color: #333;
  margin-bottom: 20px;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .r-content-title {
    font-size: 42px;
  }
}

.r-content-text {
  margin-bottom: 30px;
}

.r-content-text p {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 16px;
  line-height: 1.8;
  color: #666;
}

@media screen and (min-width: 768px) {
  .r-content-text p {
    font-size: 18px;
  }
}

.r-content-actions {
  gap: 20px;
}

.r-draw-share.for-text {
  color: #ffffff!important;
  width: auto;
  height: auto;
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  padding: 5px 10px;
  font-size: 18px;
}

@media screen and (min-width: 576px) {
  .r-draw-share.for-text {
    padding: 8px 15px;
    font-size: 20px;
  }
}

@media screen and (min-width: 768px) {
  .r-draw-share.for-text {
    padding: 16px 30px;
    font-size: 24px;
  }
}

.r-content-detail .r-vote-btn {
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  padding: 5px 10px;
  font-size: 18px;
}

@media screen and (min-width: 576px) {
  .r-content-detail .r-vote-btn {
    padding: 8px 15px;
    font-size: 20px;
  }
}

@media screen and (min-width: 768px) {
  .r-content-detail .r-vote-btn {
    padding: 16px 30px;
    font-size: 24px;
  }
}

.r-content-detail .r-content-rank p{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  font-size: 20px;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .r-content-detail .r-content-rank p{
    font-size: 24px;
  }
}

.r-sm-none{
  font-family: 'Noto Sans TC','Microsoft JhengHei', sans-serif;
  display: none;
}

@media screen and (min-width: 576px) {
  .r-sm-none {
    display: inline-block;
  }
}

.r-video-box.for-full{
  padding-bottom: 56.25%;
}

.r-gradient-pri{
  background: linear-gradient(180deg, #FFF6C2 0%, #FFEAC2 100%);
}

/* popup share */
.r-popup-share {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}

.r-popup-mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.r-popup-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 540px;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  padding: 30px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.r-popup-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}

.r-popup-header h3 {
  font-size: 24px;
  color: #333;
  font-weight: 500;
}

.r-popup-close {
  position: relative;
  width: 30px;
  height: 30px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.r-close-line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 2px;
  background-color: #333;
  transform-origin: center;
}

.r-close-line:first-child {
  transform: translate(-50%, -50%) rotate(45deg);
}

.r-close-line:last-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.r-popup-close:hover .r-close-line {
  background-color: #FF8000;
}

.r-popup-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}

.r-share-qrcode {
  text-align: center;
}

.r-share-qrcode img {
  width: 200px;
  height: 200px;
  margin-bottom: 15px;
}

.r-share-qrcode p {
  font-size: 16px;
  color: #666;
}

.r-share-links {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  width: 100%;
}

.r-share-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  gap: 10px;
  transition: transform 0.3s ease;
  min-width: 80px;
}

@media screen and (max-width: 576px) {
  .r-share-links {
    gap: 15px;
  }
  
  .r-share-link {
    min-width: 70px;
  }
  
  .r-share-link img {
    width: 40px;
    height: 40px;
  }
  
  .r-share-link span {
    font-size: 14px;
  }
}

.r-btn-group {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}

@media screen and (max-width: 576px) {
  .r-btn-group {
    flex-direction: column;
    gap: 15px;
  }
}