@charset "gb2312";

/* ====================================================
   基礎：字體與縮放（原樣保留）
   ==================================================== */
@media only screen { html { font-size: 13px; } }
@media only screen and (min-width: 360px) and (max-width: 399px) { html { font-size: 15px; } }
@media only screen and (min-width: 400px) and (max-width: 479px) { html { font-size: 16px; } }
@media only screen and (min-width: 480px) and (max-width: 719px) { html { font-size: 20px; } }
@media only screen and (min-width: 720px) { html { font-size: 30px; } }

.grayColor { color: #949494; }

.wrapper a { color: #00a0e9; }
.wrapper a:hover { color: #00a0e9; }

.row { background-color: #fff; padding: 2%; border-top: 1px solid #d2d2d2; border-bottom: 1px solid #d2d2d2; margin-top: 0.33333rem; }
.row.rowA { padding: 0 0 2% 0; }
.row.rowA .mod_a .th_a { padding: 0 2%; }

.mod_z { margin-top: -2%; }
.mod_z .th_z { height: 2.53333rem; line-height: 2.53333rem; overflow: hidden; }
.mod_z .th_z .sMark { font-size: 1.06667rem; float: left; }
.mod_z .th_z .aMore { float: right; color: #00a0e3; font-size: 0.86667rem; }

.topBanner img { width: 100%; display: block; vertical-align: top; }

/* ====================================================
   ✅ 詳情頁（手機版）樣式：只在 <768px 生效
   - 保留你原本的直式封面、margin-top:-9.2667rem 的疊法
   - 保留你原本的按鈕 float 寫法
   ==================================================== */
@media screen and (max-width: 767px) {

  .detailCon { height: 9.26667rem; padding-bottom: 0.33333rem; position: relative; }
  .detailCon .detailPic { width: 6.63333rem; height: 9.26667rem; overflow: hidden; position: relative; z-index: 30; }
  .detailCon .detailPic img { width: 6.63333rem; height: 9.26667rem; vertical-align: top; display: block; }

  .detailCon .detailIntro { position: relative; margin-top: -9.26667rem; z-index: 20; margin-left: 7.16667rem; height: 9.26667rem; }
  .detailCon .detailIntro span { display: block; line-height: 1.53333rem; height: 1.53333rem; overflow: hidden; font-size: 0.93333rem; }
  .detailCon .detailIntro span .emTit { float: left; }
  .detailCon .detailIntro span.sName { font-size: 1.2rem; line-height: 1.6rem; height: 1.6rem; margin-bottom: 0.33333rem; }
  .detailCon .detailIntro span.sDes a { display: inline-block; }
  .detailCon .detailIntro span.sDes em { display: inline-block; }
  .detailCon .detailIntro span.sDes em.emYellow { color: #ff6b50; }
  .detailCon .detailIntro span.sSource { padding: 0.13333rem 0; line-height: 1.33333rem; height: 1.33333rem; }
  .detailCon .detailIntro span.sSource img { width: 1.33333rem; height: 1.33333rem; vertical-align: middle; display: inline; float: left; padding-right: 0.33333rem; }

  .detailCon .detailIntro .pPlayBtn { padding-top: 0.33333rem; }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD,
  .detailCon .detailIntro .pPlayBtn .playBtn_SD,
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn,
  .detailCon .detailIntro .pPlayBtn .noPlayBtn {
    float: left;
    -webkit-border-radius: 0.2rem;
    -moz-border-radius: 0.2rem;
    border-radius: 0.2rem;
    line-height: 2.33333rem;
    height: 2.33333rem;
    font-size: 0.93333rem;
    margin-right: 0.66667rem;
    display: inline;
    color: #fff;
    padding: 0 0.66667rem 0 1.66667rem;
    position: relative;
  }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD:before,
  .detailCon .detailIntro .pPlayBtn .playBtn_SD:before,
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn:before,
  .detailCon .detailIntro .pPlayBtn .noPlayBtn:before {
    content: "";
    border-color: transparent transparent transparent #fff;
    border-width: 0.5rem;
    border-style: solid;
    height: 0;
    width: 0;
    overflow: hidden;
    position: absolute;
    top: 0.7rem;
    left: 0.66667rem;
  }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD:hover,
  .detailCon .detailIntro .pPlayBtn .playBtn_SD:hover,
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn:hover,
  .detailCon .detailIntro .pPlayBtn .noPlayBtn:hover { color: #fff; }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD { background-color: #fc750b; }
  .detailCon .detailIntro .pPlayBtn .playBtn_SD { background-color: #12a7e5; }
  .detailCon .detailIntro .pPlayBtn .noPlayBtn { background-color: #b5b5b5; padding: 0 0.66667rem; }
  .detailCon .detailIntro .pPlayBtn .noPlayBtn:before { display: none; }
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn { background-color: #12a7e5; padding: 0 0.66667rem; }
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn:before { display: none; }
}

/* ====================================================
   ✅ 詳情頁（桌面/平板 >=768px）新樣式
   - 你的需求：封面橫式 cover00（800x538，contain 不裁切）
   - 佈局 L3：左 55% / 右 45%
   - 兩顆按鈕永遠同一排，完全對齊
   ==================================================== */
@media screen and (min-width: 768px) {

  /* 桌面端：避免 720px 起 html=30px 的 rem 放大造成桌面爆炸
     直接把 detail 區塊用 px 控制更穩 */
  .detailCon { 
    display: grid;
    grid-template-columns: 55% 45%;
    gap: 24px;
    align-items: start;
    height: auto;
    padding-bottom: 0;
    position: relative;
  }

  .detailCon .detailPic {
    width: 100%;
    height: auto;
  }

  .detailCon .detailPic picture { display: block; width: 100%; }

  .detailCon .detailPic img {
    width: 100%;
    height: auto;
    aspect-ratio: 800 / 538;
    object-fit: contain;
    background: #0b0b0b;
    border-radius: 10px;
    display: block;
  }

  .detailCon .detailIntro {
    margin: 0;
    height: auto;
    position: relative;
    z-index: 20;
  }

  .detailCon .detailIntro span {
    display: block;
    height: auto;
    overflow: visible;
    line-height: 30px;
    font-size: 16px;
  }

  .detailCon .detailIntro span.sSource {
    white-space: normal;
    line-height: 30px;
  }

  /* ✅ 桌面端按鈕：不用 float，直接 grid/兩欄 */
  .detailCon .detailIntro .pPlayBtn {
    padding-top: 14px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 6px;
  }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD,
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn,
  .detailCon .detailIntro .pPlayBtn .playBtn_SD,
  .detailCon .detailIntro .pPlayBtn .noPlayBtn {
    float: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    height: 52px;
    line-height: 52px;
    font-size: 17px;
    font-weight: 700;
    color: #fff;

    border-radius: 12px;
    margin: 0;
    box-sizing: border-box;
    white-space: nowrap;
    position: relative;

    /* 左側 icon 占位一致 */
    padding: 0 18px 0 54px;
  }

  /* 播放：保留三角形，但改成垂直居中 */
  .detailCon .detailIntro .pPlayBtn .playBtn_HD:before,
  .detailCon .detailIntro .pPlayBtn .playBtn_SD:before {
    content: "";
    border-color: transparent transparent transparent #fff;
    border-width: 0.5rem;
    border-style: solid;
    height: 0;
    width: 0;
    overflow: hidden;
    position: absolute;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
  }

  /* 下載   鈕：原本會把 :before 關掉，桌面改為透明占位，讓字對齊 */
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn:before,
  .detailCon .detailIntro .pPlayBtn .noPlayBtn:before {
    content: "";
    border-color: transparent transparent transparent #fff;
    border-width: 0.5rem;
    border-style: solid;
    height: 0;
    width: 0;
    overflow: hidden;
    position: absolute;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0; /* 透明占位 */
  }

  .detailCon .detailIntro .pPlayBtn .playBtn_HD { background-color: #fc750b; }
  .detailCon .detailIntro .pPlayBtn .playDownLoadBtn { background-color: #12a7e5; }
}

/* ====================================================
   以下：你原本其他區塊樣式（原樣保留）
   （我這裡開始照你貼的內容繼續放）
   ==================================================== */

.sourceListCon { overflow: hidden; height: 0; }
.sourceListCon .sourceList { margin-top: 0.36667rem; position: relative; z-index: 15; border: 1px solid #d2d2d2; padding: 0.33333rem 0.33333rem 0.33333rem 1rem; }
.sourceListCon .sourceList li { width: 25%; float: left; }
.sourceListCon .sourceList li a { line-height: 1.33333rem; height: 1.33333rem; padding: 0.33333rem 0; display: block; color: #333; font-size: 0.8rem; }
.sourceListCon .sourceList li a em { float: left; }
.sourceListCon .sourceList li a img { float: left; width: 1.33333rem; height: 1.33333rem; margin: 0 0.33333rem 0 0; display: inline; }

.numTabListCon { padding: 3.33333rem 0 0 0; position: relative; }
.numTabListCon .aMoreArrow { position: relative; height: 2.66667rem; overflow-x: hidden; display: block; }
.numTabListCon .aMoreArrow:after { content: ""; font-size: 0; line-height: 0; border: solid #949494; vertical-align: top; zoom: 1; -moz-transform: rotate(45deg); -o-transform: rotate(45deg); -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); width: 0.9rem; height: 0.9rem; border-width: 0 0.1rem 0.1rem 0; border-style: solid; overflow: hidden; position: absolute; top: 0.66667rem; left: 50%; z-index: 10; margin-left: -0.5rem; }

.tabList { height: 3.33333rem; overflow: hidden; background-color: #fff; line-height: 3.33333rem; position: absolute; top: 0; left: 0; padding: 0 2%; width: 96%; z-index: 50; }
.tabList .con { width: 3333.3rem; }
.tabList .pTab { float: left; }
.tabList .pTab a { float: left; margin-right: 1.66667rem; color: #666; font-size: 1.06667rem; }
.tabList .pTab a.cur { text-decoration: underline; color: #00a0e9; }
.tabList.numTabListFixed { position: fixed; border-bottom: 1px solid #d2d2d2; }

.numList { padding: 0 2%; overflow: hidden; }
.numList span { width: 18.4%; overflow: hidden; float: left; margin: 0 2% 2% 0; }
.numList span:nth-child(5n+5) { margin-right: 0; }
.numList span a { display: block; border: 1px solid #cccccc; line-height: 2.46667rem; height: 2.46667rem; text-align: center; font-size: 1.06667rem; color: #333; }
.numList span a:hover { color: #333; }
.numList span a.cur { background-color: #00a0e3; border-color: #3c9dfd; color: #fff; }

.sIntroTit { line-height: 1.4rem; padding-bottom: 0.33333rem; font-size: 1rem; display: block; }

.pIntroTxt { font-size: 1rem; line-height: 1.4rem; text-indent: 2rem; color: #666; }
.pIntroTxt.pIntroTxtMore { padding-bottom: 1.56667rem; position: relative; height: 4.2rem; overflow: hidden; }
.pIntroTxt.pIntroTxtMore:before { content: ""; height: 1.6rem; position: absolute; width: 100%; left: 0; bottom: 0; background-color: #fff; overflow: hidden; z-index: 5; }
.pIntroTxt.pIntroTxtMore:after { content: ""; font-size: 0; line-height: 0; border: solid #949494; vertical-align: top; zoom: 1; -moz-transform: rotate(45deg); -o-transform: rotate(45deg); -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); width: 0.9rem; height: 0.9rem; border-width: 0 0.1rem 0.1rem 0; border-style: solid; overflow: hidden; position: absolute; top: 4.33333rem; left: 50%; z-index: 10; margin-left: -0.5rem; }
.pIntroTxt.pIntroTxtMore.pShowAll { height: auto; padding-bottom: 0; }
.pIntroTxt.pIntroTxtMore.pShowAll:after, .pIntroTxt.pIntroTxtMore.pShowAll:before { display: none; }

.pIntroTxtBox { line-height: 1.4rem; height: 4.2rem; position: absolute; left: -100%; top: 0; width: 100%; }

.picTxtA li { width: 96%; border-bottom: 1px solid #d2d2d2; position: relative; padding: 2%; }
.picTxtA li:last-child { padding-bottom: 0; border-bottom: 0 none; }
.picTxtA li .aMask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 20; display: block; }
.picTxtA li .pic { overflow: hidden; position: relative; z-index: 10; }
.picTxtA li .pic img { display: block; vertical-align: top; }
.picTxtA li .txt { position: relative; overflow: hidden; z-index: 5; }
.picTxtA li .txt span { display: block; line-height: 1.53333rem; height: 1.53333rem; overflow: hidden; font-size: 0.93333rem; }
.picTxtA li .txt span.sName { font-size: 1.2rem; line-height: 1.6rem; height: 1.6rem; margin-bottom: 0.66667rem; padding-top: 0.46667rem; }
.picTxtA li .txt span.sDes em { display: inline-block; }
.picTxtA li .txt span.sDes em.emYellow { color: #ff6b50; }

.guessLikeTab { height: 2.53333rem; overflow-x: hidden; border-bottom: 1px solid #d2d2d2; }
.guessLikeTab a { float: left; padding: 0 1.2rem; line-height: 2.53333rem; height: 2.53333rem; font-size: 0.93333rem; color: #666; }
.guessLikeTab a.cur { color: #00a0e9; }
.guessLikeTab i.iLine { width: 1px; height: 1rem; float: left; margin-top: 0.76667rem; display: inline; overflow-x: hidden; background-color: #d2d2d2; }

.guessLike li .pic { width: 4.6rem; height: 6.13333rem; }
.guessLike li .pic img { width: 4.6rem; height: 6.13333rem; }
.guessLike li .txt { margin-top: -6.13333rem; margin-left: 5.5rem; height: 6.13333rem; }

.numPeriodsList { margin-top: -1%; position: relative; z-index: 10; }
.numPeriodsList li:last-child { padding-bottom: 2%; border-bottom: 1px solid #d2d2d2; }
.numPeriodsList li .pic { width: 8rem; height: 4.66667rem; }
.numPeriodsList li .pic img { width: 8rem; height: 4.66667rem; }
.numPeriodsList li .txt { margin-top: -4.66667rem; margin-left: 9rem; height: 4.66667rem; }
.numPeriodsList li .txt span.sName { font-size: 1.06667rem; line-height: 1.4rem; height: 2.8rem; padding: 0; }
.numPeriodsList li .txt span.sBottom { position: absolute; bottom: 0; left: 0; color: #666; font-size: 0.8rem; line-height: 1.06667rem; height: 1.06667rem; }

.appBlankBox { background: #fff; position: absolute; height: 100%; width: 100%; z-index: 10010; top: 0; left: 0; display: none; }
.appBlankBox .pTit { font-size: 1.13333rem; line-height: 2rem; text-align: center; color: #00a0e9; padding-top: 6.66667rem; }

.appNoBlank .pTit { padding-top: 1rem; }
.appNoBlank .pErrorTips { color: #9e9e9e; font-size: 1.13333rem; line-height: 1.6rem; text-align: center; }
.appNoBlank .pBtn { padding: 0 10%; text-align: center; }
.appNoBlank .pBtn a { display: block; width: 100%; line-height: 3.2rem; height: 3.2rem; text-align: center; overflow: hidden; font-size: 1.06667rem; -webkit-border-radius: 0.16667rem; -moz-border-radius: 0.16667rem; border-radius: 0.16667rem; }
.appNoBlank .pBtn a.aDownLoad { background-color: #00a0e9; color: #fff; margin-top: 2rem; }
.appNoBlank .pBtn a.aDownLoad:hover { background-color: #0090d1; }
.appNoBlank .pBtn a.aDownLoad:active,
.appNoBlank .pBtn a.aDownLoad:visited,
.appNoBlank .pBtn a.aDownLoad:hover { color: #fff; }
.appNoBlank .pBtn a.pcBtn { background-color: #D4EEFC; margin-top: 0.66667rem; color: #00a0e9; }
.appNoBlank .pBtn a.pcBtn:hover { background-color: #e5f5fd; }
.appNoBlank .pBtn a.pcBtn:active,
.appNoBlank .pBtn a.pcBtn:visited,
.appNoBlank .pBtn a.pcBtn:hover { color: #00a0e9; }
.appNoBlank .pBtn .sNotice { display: block; line-height: 2rem; height: 2rem; font-size: 1rem; color: #f75a53; }

.wrapper_hidden { overflow: hidden; height: 100%; }

/* 全局定義關閉按鈕樣式 */
.app_download_pop .closeBtn {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  width: 24px !important;
  height: 24px !important;
  background: url(/images/close.png) no-repeat center !important;
  background-size: contain !important;
  cursor: pointer !important;
  z-index: 1001 !important;
  display: block !important;
}

.app_download_pop .tb {
  position: relative !important;
}