/* CSS Document */
.search-area {
  display: inline;
  padding: 6px 12px;
  font-size: 52px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.search-area .gba-label {
  display: inline;
  width: 30%;
  font-size: 52px;
  color: #404040;
  padding: 6px 12px;
}
.search-area .gba-input-control {
  display: inline;
  padding: 6px 12px;
  text-align: left;
}
.work-detail .gba-label {
  color: #3379b8;
  font-weight: 900;
}
.work-icon {
  padding: 12px 6px;
  width: 100%;
  min-height: 400px;
  text-align: center;
}
.work-icon img {
  width: 100%;
  height: 65%;
}
.work-icon .fun-div {
  display: inline-block;
  background: rgba(255, 255, 255, 0);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 65%;
  padding-top: 10px;
}
.work-icon .fun-div .gba-input-group {
  display: none;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.work-icon .fun-div .gba-input-group .gba-label {
  display: none;
  width: 30%;
  font-size: 12px;
  color: #ebd8ae;
  padding: 6px 12px;
}
.work-icon .fun-div .gba-input-group .gba-input-control {
  display: none;
  padding: 6px 12px;
  text-align: left;
}
.work-icon .fun-div a {
  display: none;
}
.work-icon .fun-div:hover,
.work-icon .fun-div:focus {
  background: rgba(255, 255, 255, 0.85);
}
.work-icon .fun-div:hover .gba-input-group,
.work-icon .fun-div:focus .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.work-icon .fun-div:hover .gba-input-group .gba-label,
.work-icon .fun-div:focus .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 12px;
  color: #000000;
  padding: 6px 12px;
}
.work-icon .fun-div:hover .gba-input-group .gba-input-control,
.work-icon .fun-div:focus .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.work-icon .fun-div:hover a,
.work-icon .fun-div:focus a {
  display: inline-block;
}
.work-icon .fun-div-touch {
  background: rgba(255, 255, 255, 0.85);
}
.work-icon .fun-div-touch .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.work-icon .fun-div-touch .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 12px;
  color: #000000;
  padding: 6px 12px;
}
.work-icon .fun-div-touch .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.work-icon .fun-div-touch a {
  display: inline-block;
}
.work-icon .work-info {
  display: inline-block;
  width: 100%;
  height: 35%;
}
.work-icon .work-info .title {
  font-size: 20px;
}
.work-icon .work-info .title .work-detail {
  border: 1px #3379b8 solid;
  border-radius: 8px;
}
.work-icon .work-info .title .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
  border-bottom: 1px #3379b8 solid;
}
.work-icon .work-info .title .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 12px;
  color: #000000;
  padding: 6px 12px;
}
.work-icon .work-info .title .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.work-icon .work-info .title .gba-input-group:last-child {
  border-bottom: 0px;
}
.work-icon .work-info .episode table {
  border-top: 1px #404040 solid;
  border-left: 1px #404040 solid;
  border-spacing: 0;
  border-collapse: collapse;
  padding: 2px 0;
  width: 100%;
}
.work-icon .work-info .episode th {
  background-color: #3379b8;
  border-bottom: 1px #404040 solid;
  border-right: 1px #404040 solid;
  font-weight: bolder;
  text-align: center;
}
.work-icon .work-info .episode td {
  border-bottom: 1px #404040 solid;
  border-right: 1px #404040 solid;
}
.work-icon a {
  color: #404040;
}
.btn.btn-default {
  background-color: #ebd8ae;
  color: #404040;
}
.btn.btn-default:hover,
.btn.btn-default:focus {
  background-color: #fdedcc;
}
.btn-sm.btn-default {
  background-image: none;
  background-color: #ebd8ae;
  color: #404040;
}
.btn-sm.btn-default .glyphicons {
  top: 3px;
}
.btn-sm.btn-default:hover,
.btn-sm.btn-default:focus {
  background-color: #fdedcc;
}
.btn-sm.btn-default:hover .glyphicons,
.btn-sm.btn-default:focus .glyphicons {
  top: 3px;
}
.btn-xs.btn-default {
  background-image: none;
  background-color: #ebd8ae;
  color: #404040;
}
.btn-xs.btn-default .glyphicons {
  top: 3px;
}
.btn-xs.btn-default:hover,
.btn-xs.btn-default:focus {
  background-color: #fdedcc;
}
.btn-xs.btn-default:hover .glyphicons,
.btn-xs.btn-default:focus .glyphicons {
  top: 3px;
}
.gba-btn-group {
  text-align: center;
  padding: 2px 0px 2px 3px;
}
.judge-list-view {
  margin: 5px 3px;
}
html,
body {
  height: 100%;
  font-size: 15px;
}
/* GBA STYLE */
body {
  margin: 0;
  /* 2026-05-27 從 #000 純黑改 #343434：原黑底在 AJAX reflow 瞬間會從子元素縫隙
     漏出造成「半屏暗化覆蓋」假象，跟 .content 同深灰後即使漏出也視覺一致。 */
  background-color: #343434;
  color: #ffc73a;
  font-family: palatino, tahoma, Arial, Verdana;
  line-height: 1.86em;
  font: normal normal normal 13px normal Arial, Helvetica, sans-serif;
}
.gba-header {
  border-bottom: 1px solid #d4b068;
  width: 100%;
  height: 50px;
  margin: 0 both;
  padding-bottom: 8px;
}
.gba-header .gba-left {
  float: left;
  vertical-align: central;
  height: 100%;
  width: 40px;
  height: 40px;
}
.gba-header .gba-left .btn-default {
  margin-top: 4px;
  margin-left: 6px;
  background-color: #fff;
  text-align: center;
  border: 2px solid #d4b068;
  border-radius: 4px;
}
.gba-header .gba-right {
  float: right;
  font-size: 24px;
  /* vertical-align: central; */
  height: 100%;
  text-align: center;
  margin: 5px 0px;
  padding: 0px;
}
.gba-header .gba-center {
  text-align: left;
  margin: 0 auto;
}
.content {
  background-color: #ffffff;
  width: 100%;
  min-height: 100vh;
  color: #404040;
}
@media (min-width: 480px) {
  .gba-header .gba-center {
    font-size: 24px;
    font-weight: bold;
  }
  .glyphicons.F05 {
    font-size: 10px;
  }
  .glyphicons.F05:before {
    padding: 4px 6px;
  }
  .glyphicons.F3 {
    font-size: 48px;
  }
  .glyphicons.F3:before {
    padding: 8px 12px;
  }
  .content {
    background-color: #ffffff;
    width: 100%;
    min-height: 400px;
    color: #404040;
  }
  .html5-audio {
    width: 100%;
    height: 100px;
  }
  .player-table-info {
    width: 100%;
    margin-left: 15px;
  }
  .player-table-label {
    margin-left: 15px;
  }
  .viblast-player-dimensions {
        width: 100%;
    height: inherit;
  }
  .tv {
    margin-right: 0px;
    margin-left: 0px;
  }
  .work-judge-table-list table .title {
    width: 60px;
  }
  .work-judge-table-list table .prize-table .td-prize {
    width: 70px;
  }
  .work-judge-table-list table .prize-table .td-contest {
    width: 70px;
  }
}
@media (min-width: 640px) {
  .html5-audio {
    width: 100%;
    height: 100px;
  }
  .player-table-info {
    width: 100%;
    margin-left: 20px;
  }
  .player-table-label {
    margin-left: 20px;
  }
  .viblast-player-dimensions {
        width: 100%;
    height: inherit;
  }
  .tv {
    margin-right: 0px;
    margin-left: 0px;
  }
  .work-judge-table-list table .title {
    width: 70px;
  }
  .work-judge-table-list table .prize-table .td-prize {
    width: 80px;
  }
  .work-judge-table-list table .prize-table .td-contest {
    width: 80px;
  }
}
@media (min-width: 768px) {
  .gba-header .gba-center {
    font-size: 28px;
    font-weight: bold;
  }
  .glyphicons.F05 {
    font-size: 10px;
  }
  .glyphicons.F05:before {
    padding: 4px 6px;
  }
  .glyphicons.F3 {
    font-size: 72px;
  }
  .glyphicons.F3:before {
    padding: 16px 20px;
  }
  .content {
    background-color: #ffffff;
    width: 100%;
    min-height: 700px;
    color: #404040;
  }
  .html5-audio {
    width: 100%;
  }
  .player-table-info {
    width: 100%;
    margin-left: 25px;
  }
  .player-table-label {
    margin-left: 25px;
  }
  .viblast-player-dimensions {
        width: 100%;
    height: inherit;
  }
  .tv {
    margin-right: 0px;
    margin-left: 0px;
  }
  .work-judge-table-list table .title {
    width: 80px;
  }
  .work-judge-table-list table .prize-table .td-prize {
    width: 100px;
  }
  .work-judge-table-list table .prize-table .td-contest {
    width: 100px;
  }
}
@media (min-width: 1120px) {
  .gba-header .gba-center {
    font-size: 32px;
    font-weight: bolder;
  }
  .glyphicons.F05 {
    font-size: 12px;
  }
  .glyphicons.F05:before {
    padding: 6px 8px;
  }
  .glyphicons.F3 {
    font-size: 96px;
  }
  .glyphicons.F3:before {
    padding: 20px 28px;
  }
  .content {
    background-color: #ffffff;
    width: 100%;
    min-height: 900px;
    color: #404040;
  }
  .html5-audio {
    width: 100%;
  }
  .player-table-info {
    width: 100%;
    margin-left: 0px;
  }
  .player-table-label {
    margin-left: 0px;
  }
  .viblast-player-dimensions {
        width: 100%;
    height: inherit;
  }
  .tv {
    margin-right: 0px;
    margin-left: 0px;
  }
  .work-judge-table-list table .title {
    width: 160px;
  }
  .work-judge-table-list table .prize-table .td-prize {
    width: 250px;
  }
  .work-judge-table-list table .prize-table .td-contest {
    width: 250px;
  }
}
@media (min-width: 1320px) {
  .gba-header .gba-center {
    font-size: 36px;
    font-weight: bolder;
  }
  .glyphicons.F05 {
    font-size: 14px;
  }
  .glyphicons.F05:before {
    padding: 8px 12px;
  }
  .glyphicons.F3 {
    font-size: 120px;
  }
  .glyphicons.F3:before {
    padding: 28px 36px;
  }
  .content {
    background-color: #ffffff;
    width: 100%;
    min-height: 1130px;
    color: #404040;
  }
  .html5-audio {
    width: 100%;
  }
  .player-table-info {
    width: 100%;
    margin-left: 0px;
  }
  .player-table-label {
    margin-left: 0px;
  }
  .viblast-player-dimensions {
        width: 100%;
    height: inherit;
  }
  .tv {
    margin-right: 0px;
    margin-left: 0px;
  }
  .work-judge-table-list table .title {
    width: 160px;
  }
  .work-judge-table-list table .prize-table .td-prize {
    width: 300px;
  }
  .work-judge-table-list table .prize-table .td-contest {
    width: 300px; 
  }
}
.glyphicons.F05 {
  font-size: 12px;
}
.glyphicons.F05:before {
  padding: 8px 12px;
}
.gba-header-menu-div {
  background-color: rgba(250, 250, 250, 0.9);
  width: 100%;
  font-size: 15px;
  vertical-align: central;
  margin: 0 auto;
  padding: 10px 6px 10px;
  text-align: center;
  color: #404040;
}
.gba-header-menu-div .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.gba-header-menu-div .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 14px;
  color: #404040;
  padding: 6px 12px;
}
.gba-header-menu-div .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.gba-header-menu-div a {
  color: #ffffff;
}
.gba-header-menu-div a .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.gba-header-menu-div a .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 14px;
  color: #d4b068;
  padding: 6px 12px;
}
.gba-header-menu-div a .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.hide {
  display: none;
}
.login-box {
  margin: 80px auto;
  width: 360px;
  padding-bottom: 5px;
  border-radius: 6px;
  border: 2px #ebd8ae solid;
  background-color: #cccccc;
}
.login-box .gba-input-group {
  display: table;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  width: 100%;
}
.login-box .gba-input-group .gba-label {
  display: table-cell;
  width: 30%;
  font-size: 14px;
  color: #404040;
  padding: 6px 12px;
}
.login-box .gba-input-group .gba-input-control {
  display: table-cell;
  padding: 6px 12px;
  text-align: left;
}
.login-box .gba-panel-title {
  background-color: #a8c9dc;
  color: #404040;
  font-size: 18px;
  font-weight: bolder;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  border-bottom: 2px #ebd8ae solid;
  padding: 6px 8px;
}
.highlight {
  color: #FF2629;
}
.gba-tbl-div {
  position: relative;
  text-align: center;
  margin: 15px 8px;
  padding: 10px 15px;
}
.gba-tbl-div table {
  position: relative;
}
.gba-tbl-div table {
  width: 100%;
}
.gba-tbl-div table th:first-child td:first-child {
  border-left: 1px #d4b068 solid;
}
.gba-tbl-div tr td:first-child {
  border-left: 1px #d4b068 solid;
}
.gba-tbl-div table th {
  border-top: 1px #d4b068 solid;
  border-bottom: 1px #d4b068 solid;
  border-right: 1px #d4b068 solid;
  text-align: center;
  font-weight: bolder;
  background-color: #3379b8;
}
.gba-tbl-div table td {
  border-bottom: 1px #d4b068 solid;
  border-right: 1px #d4b068 solid;
}
.work-judge-table-list {
  margin: 0 auto;
  width: 90%;
  text-align: center;
}
.work-judge-table-list .poster > img {
  width: 100px;
  height: 100px;
}
.work-judge-table-list .table-div {
  overflow-x: auto;
  margin: 0 auto;
}
.work-judge-table-list table {
  text-align: center;
  min-width: 100%;
  width: 100%;
}
.work-judge-table-list table .score {
  width: 150px;
}
.work-judge-table-list table .episode {
  min-width: 180px;
}
.work-judge-table-list table .prize {
  min-width: 220px;
}
.work-judge-table-list table th:first-child {
  border-left: 1px solid #404040;
}
.work-judge-table-list table th {
  padding: 3px 6px;
  border-top: 1px solid #404040;
  border-right: 1px solid #404040;
  border-bottom: 1px solid #404040;
  text-align: center;
  font-size: 15px;
  color: #404040;
  background-color: #cccccc;
  white-space:nowrap;
}
.work-judge-table-list table td:first-child {
  border-left: 1px solid #404040;
  font-size: 15px;
}
.work-judge-table-list table td {
  padding: 2px 2px;
  border-right: 1px solid #404040;
  border-bottom: 1px solid #404040;
  font-size: 15px;
  background: #fff9e5;
}
.work-judge-table-list table .prize-table tr:nth-child(odd) {
  background-color: beige;
}
.work-judge-table-list table .prize-table td {
  border-bottom: 0px;
  border-right: 0px;
  border-right: 1px #404040 solid;
}
.work-judge-table-list table .prize-table .episode-td {
  border-right: 0px;
  padding: 3px 0px;
}
.work-judge-table-list table .prize-table td:first-child {
  border-left: 0px;
}
.work-judge-table-list table .prize-table td:last-child {
  border-right: 0px;
  border-left: 1px #404040 solid;
}
.work-judge-table-list table .prize-table .round-btn {
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  vertical-align: middle;
  display: table-cell;
  border: 0px;
  font-size: 15px;
}
.work-judge-table {
  margin: 0 auto;
  text-align: center;
}
.work-judge-table .table-div {
  overflow-x: auto;
  margin: 0 auto;
}
.work-judge-table table {
  text-align: center;
  min-width: 100%;
}
.work-judge-table table .score {
  width: 150px;
}
.work-judge-table table .prize {
  min-width: 220px;
}
.work-judge-table table th:first-child {
  border-left: 1px solid #404040;
}
.work-judge-table table th {
  padding: 3px 6px;
  border-top: 1px solid #404040;
  border-right: 1px solid #404040;
  border-bottom: 1px solid #404040;
  text-align: center;
  font-size: 15px;
  color: #404040;
  background-color: #cccccc;
}
.work-judge-table table td:first-child {
  border-left: 1px solid #404040;
  font-size: 15px;
}
.work-judge-table table td {
  padding: 3px 3px;
  border-right: 1px solid #404040;
  border-bottom: 1px solid #404040;
  font-size: 15px;
}
.table-responsive {
  margin: 0px auto;
}
.player-area {
  width: 100%;
  text-align: left;
}
.player-area video {
  width: 100%;
}
.form-group {
  margin: 2px 5px 2px 5px;
}
.player-table-info .th-serial {
  width: 12%;
}
.player-table-info .th-prize {
  width: 25%;
}
.player-table-info .th-applicant {
  width: 25%;
}
.player-table-info .th-score {
  width: 24%;
}
.player-table-label {
  font-size: 15px;
  text-align: left;
}
.player-info-zone {
  padding-top: 10px;
  padding-bottom: 10px;
}
.tv {
  position: relative;
  display: block;
}
.video-js {
  font-size: 15px;
}
/* 2026-05-27 Toast 化：原本 growl 被強制移到螢幕正中央 + 紅字（干擾），
   現改為左上角 toast，info/warn 自動消失，error sticky 留住等使用者關閉。
   位置避開頂部「自動登出」狀態列（約 60px）。 */
.ui-growl {
  top: 76px !important;
  left: 16px !important;
  right: auto !important;
  transform: none !important;
  width: 360px;
  max-width: calc(100vw - 32px);
  z-index: 10000;
}
.ui-growl-title {
  font-size: 15px;
  font-weight: 600 !important;
}
.ui-growl-item-container {
  opacity: 0.98 !important;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  margin-bottom: 8px;
}
.ui-growl-item > div {
  display: block !important;
}
.scoring-result-tbl {
  font-size: 17px;
}
/* 2026-05-28 judgeStatistic.xhtml 進度視覺化：
   - .jps-stat-bar：作品評分進度的橫式進度條（深底+橘條），統一全頁色系
   - .jps-stat-bar-lg：桌機版較大的進度條（加大、含 % 文字）
   - .jps-stat-remain：剩餘未評/未審件數按鈕，點擊跳到未評/未審清單 */
.jps-stat-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 10px;
}
.jps-stat-bar {
  position: relative;
  display: inline-block;
  width: 140px;
  height: 14px;
  border-radius: 8px;
  background: #3d3d3d;
  border: 1px solid #fff;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25), inset 0 1px 2px rgba(0, 0, 0, 0.3);
  vertical-align: middle;
  overflow: hidden;
  flex-shrink: 0;
}
.jps-stat-bar-lg {
  width: 100%;
  max-width: 320px;
  height: 22px;
  border-radius: 11px;
}
.jps-stat-bar-fill {
  height: 100%;
  background: linear-gradient(to right, #ce5f00 0%, #f08a1e 100%);
  border-radius: inherit;
  transition: width 240ms ease;
}
.jps-stat-bar-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 13px;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.8);
  letter-spacing: 0.02em;
  white-space: nowrap;
}
/* 桌機表格 cell 與行動 .content-info 背景都是淺米色 (#fff9e5)，count 用深色字。 */
.jps-stat-count,
.jps-stat-count-lg {
  font-weight: 700;
  white-space: nowrap;
  color: #2a2a2a;
}
.jps-stat-count { font-size: 16px; }
.jps-stat-count-lg { font-size: 18px; }
/* 未完成連結：紅底白字、明顯可點。完成後改成綠色不可點視覺。 */
#entirePage a.jps-stat-remain,
#entirePage a.jps-stat-remain:link,
#entirePage a.jps-stat-remain:visited {
  display: inline-block;
  padding: 4px 12px;
  background: #c0392b;
  color: #fff;
  border-radius: 4px;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid #8e2a1e;
  cursor: pointer;
  transition: background 120ms ease, transform 120ms ease;
}
#entirePage a.jps-stat-remain:hover {
  background: #d44637;
  text-decoration: none;
}
#entirePage a.jps-stat-remain:active {
  transform: scale(0.97);
}
#entirePage a.jps-stat-remain.jps-stat-remain-done,
#entirePage a.jps-stat-remain.jps-stat-remain-done:link,
#entirePage a.jps-stat-remain.jps-stat-remain-done:visited {
  background: #2e7d32;
  border-color: #1f5d24;
  cursor: default;
}
#entirePage a.jps-stat-remain.jps-stat-remain-done:hover {
  background: #2e7d32;
}
/* 點未評/未審按鈕後的全屏 loading（allWorkListInTable TTFB 1~5 秒，沒回饋很糟） */
.jps-loading-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(2px);
}
.jps-loading-box {
  background: #2b2b2b;
  border: 2px solid #c9b27c;
  border-radius: 12px;
  padding: 28px 44px;
  text-align: center;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
  min-width: 220px;
}
.jps-loading-spinner {
  width: 56px;
  height: 56px;
  margin: 0 auto 16px;
  border: 6px solid rgba(255, 255, 255, 0.18);
  border-top-color: #ce5f00;
  border-radius: 50%;
  animation: jps-spin 800ms linear infinite;
}
.jps-loading-text {
  color: #ffe6ac;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
}
@keyframes jps-spin {
  to { transform: rotate(360deg); }
}

.no-border tr td:first-child {
  border: 0px;
}

/*20230411*/
/* 2026-05-27 對比修正：原 #3fb1d5 + 白字 ≈ 2.2:1 不符 WCAG AA；改深藍 5.85:1 */
#entirePage .btn-info{
  background-color: #1e6091;
    border-color: #1e6091;
    color: #fff;
}
/* 2026-05-27 對比修正：Bootstrap 預設 #5cb85c + 白字 ≈ 3.0 不符 AA；改深綠 4.85:1。
   註解「已寫過」按鈕沿用此色（語意：正向完成）。 */
#entirePage .btn-success{
  background-color: #2e7d32;
    border-color: #2e7d32;
    color: #fff;
}
/* 2026-05-27 集數鈕「播放中」獨立 class：原 btn-success 綠色 → 深橘 5.0:1。
   集數鈕「已播過」(.btn-watched) 改深綠（原灰 #95a5a6）。
   見 allWorkListInTable.xhtml：playing → btn-playing；isViewed → btn-watched。 */
#entirePage .btn-playing{
  background-color: #b54708;
    border-color: #b54708;
    color: #fff;
}
.round-btn.btn-watched:not(.btn-playing) {
  background-color: #2e7d32 !important;
  border-color: #1f5d24 !important;
  color: #fff !important;
}
/* 2026-05-27 總進度% 放大顯示
   2026-05-28 改紅 22px 並放在進度條上方（上下排列），整塊變成連結回作品列表 */
.jps-progress-link {
  display: inline-block;
  text-decoration: none;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 6px;
  transition: background 120ms ease, transform 120ms ease;
}
.jps-progress-link:hover {
  background: rgba(0, 0, 0, 0.15);
  text-decoration: none;
}
.jps-progress-link:hover .jps-progress-text {
  text-decoration: underline;
}
.jps-progress-link:active {
  transform: scale(0.97);
}
.jps-progress-wrap > span#form1\:searchForm\:statis,
.jps-progress-wrap .ui-panelgroup-content {
  display: inline-flex;
  flex-direction: column;
  align-items: stretch;
  gap: 4px;
}
.jps-progress-wrap h\:panelGroup {
  display: inline-flex;
  flex-direction: column;
}
/* JSF h:panelGroup 渲染為 span，需直接定位內部 statis */
[id$=":statis"] {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 4px;
}
.jps-progress-text {
  font-size: 22px;
  font-weight: 700;
  color: #d40000;
  letter-spacing: 0.02em;
  line-height: 1.1;
}
/* 2026-05-28 總進度橫式進度條：--p (0-100) 由 inline style 提供
   橘色 (#ce5f00) 表已完成、深底 (#3d3d3d) 表未完成。 */
.jps-progress-pie {
  --p: 0;
  display: inline-block;
  width: 155px;
  height: 14px;
  border-radius: 8px;
  background:
    linear-gradient(to right,
      #ce5f00 0,
      #ce5f00 calc(var(--p) * 1%),
      #3d3d3d calc(var(--p) * 1%),
      #3d3d3d 100%);
  border: 1px solid #fff;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.25), inset 0 1px 2px rgba(0, 0, 0, 0.3);
  vertical-align: middle;
  flex-shrink: 0;
}
#entirePage .content{
  overflow: hidden;
  background: #343434;
  color: #fff;
  padding-bottom: 50px;
}
#entirePage select{
  padding: 3px;
  border-radius: 4px;
      min-height: 30px;
      color: #000;
}
#entirePage .btn{
  margin: 2px 0.5px;
}
#entirePage .btn.btn-special{
  background-color: #ffc400;
    border-color: #ffc400;
    color: #000;
}
#searchPageId .form-group .form-control{
    padding: 0 5px;
}
#searchPageId .form-group .form-control select{
    height: 100%;
    width: calc(100% + 12px);
    margin-left: -6px;
}
#entirePage .work-judge-table-list .table-div {
    border-radius: 8px;
    border: #C9B27C 4px solid;
    overflow: hidden;
    margin: 8px 0;
    color: #404040;
}
#entirePage .work-judge-table-list table {
    width: calc(100% + 2px);
    margin-left: -1px;
}
#entirePage .work-judge-table-list table th:last-child {
  border-right: none;
}
#entirePage .work-judge-table-list table th {
  padding: 5px;
  border-top: none;
  border-right: 1px solid #404040;
  border-bottom: 1px solid #404040;
  text-align: center;
  font-size: 15px;
  color: #fff;
    background-color: #555;
  white-space:nowrap;
  height: 40px;
}
#entirePage .work-judge-table-list table th:first-child{
  border-left:  none;
}
#entirePage .work-judge-table-list table tr:last-child td{
  border-bottom: none;
}
#entirePage .work-judge-table-list table td:first-child{
  border-left:  none;
}
#entirePage .work-judge-table-list table td a.ui-commandlink{
  display: inline-block;
}
#entirePage .work-judge-table-list table td a.ui-commandlink .glyphicons:before{
  padding: 2px 5px;
  margin: -2px 0;
}
/* #entirePage .th-icon-area{
  display: inline-block;
  width: 100%;
  position: relative;
}
#entirePage .th-icon-area a.ui-commandlink{
  position: absolute;
  right: 5px;
  top: 0;
} */
#entirePage .th-icon-area p{
      display: inline-block;
    margin: 0 !important;
    padding: 3px 0;
}
#entirePage .glyphicons-picture:before{
  padding: 0;
}
#entirePage .note-area{
        padding: 8px 0 7px;
    color: #e6d3a9;
    font-size: 15px;
    font-weight: bolder;
    background: #796c4c;
    position: relative;
    display: inline-block;
    width: 100%;
    border-bottom: 1px #b5a47d solid;
    margin: 0;
}
#entirePage .note-area:before{
      position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 6px;
    top: 0;
    left: 0;
    pointer-events: none;
    background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 120%);
}
#entirePage .note-area:after{
  position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 12px;
    top: calc(100% + 1px);
    left: 0;
    pointer-events: none;
    background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 120%);
}
#entirePage .gba-header-menu-div{
  background-color: #c9ba98;
  padding-top: 5px;
  display: inline-block;
  border-bottom: 1px solid #ffdf9e;
  background: linear-gradient(to top, #c9ba98 0%, #efddb3 120%);
      position: relative;
}
#entirePage .gba-header-menu-div:before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 12px;
    top: calc(100% + 1px);
    left: 0;
    pointer-events: none;
    background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 120%);
}
#entirePage .gba-header{
  height: 70px;
    /* padding: 10px 10px; */
    background: #2b2b2b;
    padding: 10px 5%;
}

#entirePage .form-inline .form-group .gba-label{
      margin: 5px 0;
    color: #000;
    font-weight: 600;
}

#entirePage .gba-right .btn.btn-default{
    background-color: #ffc73a;
    border-color: #ffc73a;
    color: #000000;
    font-weight: bolder;
}

#entirePage .glyphicons.glyphicons-info-sign{
  color: #ff5700;
}

/* 2026-05-27 sort 箭頭 — 跟字體同大小、左右並排：
   .glyphicons-sorting               （未排序）→ △▽
   .glyphicons-sort-by-attributes    （升冪）  → ▲▽（上實心橘）
   .glyphicons-sort-by-attributes-alt（降冪）  → △▼（下實心橘）
   用單一 ::before 帶兩個字元 inline 顯示。 */
#entirePage .glyphicons.glyphicons-sorting,
#entirePage .glyphicons.glyphicons-sort-by-attributes,
#entirePage .glyphicons.glyphicons-sort-by-attributes-alt{
  font-family: "Helvetica Neue", Arial, sans-serif !important;
  font-style: normal;
  font-weight: bold;
  font-size: 1.1em;
  color: #fff;
  margin-left: 4px;
  letter-spacing: -1px;
  display: inline;
  vertical-align: baseline;
  transition: color 120ms ease;
}
#entirePage .glyphicons.glyphicons-sorting:before{ content: "\25B3\25BD" !important; }                                /* △▽ */
#entirePage .glyphicons.glyphicons-sort-by-attributes:before{ content: "\25B2\25BD" !important; }                      /* ▲▽ */
#entirePage .glyphicons.glyphicons-sort-by-attributes-alt:before{ content: "\25B3\25BC" !important; }                  /* △▼ */
#entirePage a:hover .glyphicons.glyphicons-sorting,
#entirePage a:hover .glyphicons.glyphicons-sort-by-attributes,
#entirePage a:hover .glyphicons.glyphicons-sort-by-attributes-alt{
  color: #ce5f00;
}
#entirePage .glyphicons.glyphicons-notes{
  color: #4c88b2;
}
#entirePage .glyphicons.glyphicons-picture{
  color:#6bb057;
}
#entirePage .ui-commandlink.btn.btn-primary{
      background-color: #ce5f00;
    border-color: #b52906;
}
/* #entirePage .player-area{
  position: absolute;
    top: 0;
    left: 0;
} */
#entirePage .video-area{
  position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    color: #000;
}
#entirePage .video-area .video-js{
  margin-bottom: 5px;
      border: 4px #575757 solid;
    border-radius: 8px;
}
#entirePage .video-js .vjs-tech{
  width: 100%;
    position: relative;
}

#entirePage div[style^="float:right; margin-right:20px;"]{
  margin-right: 0 !important;
}

#searchPageId .form-group a.ui-commandlink{
  padding: 14px;
}
#entirePage .icon-list{
      display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
        margin: 5px 0;
}
#entirePage .login-box{
      border: 2px #c9b076 solid;
    background-color: #d4c297;
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.3), 0 0 30px 10px rgba(0, 0, 0, 0.1);
    padding: 0 0 20px;
    color: #000;
}
#entirePage .login-box .gba-input-group .gba-input-control{
  /* border-radius: 6px; */
  width: 95%;
}
/* #entirePage .ui-messages-info.ui-corner-all{
    width: 90%;
    margin: 0px auto 10px;
    display: block;
} */
#entirePage .login-box .gba-panel-title{
        background-color: #2b2b2b;
    color: #ffe6ac;
    text-align: center;
    border-radius: 5px 5px 0 0;
    border-bottom: 2px #000000 solid;
    margin-bottom: 10px;
}
#entirePage .player-table-label{
  color: #ff903a;
}
#entirePage .login-box .gba-btn-group{
  padding: 3px;
}
#entirePage .login-box .gba-btn-group .ui-commandlink.btn{
      width: 90%;
        background-color: #ce5f00;
    border-color: #b52906;
    color: #ffffff;
    font-size: 16px;
    font-weight: 600;
    margin: 10px auto;
} 
#entirePage .pagination > .active > a{
    color: #000;
    background-color: #8fcbff;
    border-color: #8fcbff;
}
#entirePage .gba-tbl-div-score{
      border-radius: 8px;
    border: #C9B27C 4px solid;
    overflow: hidden;
    color: #404040;
    width: 90%;
    margin: 15px auto;
    padding: 0;
}
#entirePage .gba-tbl-div-score table {
    width: calc(100% + 2px);
    margin-left: -1px;
}
#entirePage .gba-tbl-div-score table th {
    padding: 5px;
    border-top: none;
    border-right: 1px solid #404040;
    border-bottom: 1px solid #404040;
    text-align: center;
    font-size: 15px;
    color: #fff;
    background-color: #555;
    white-space: nowrap;
    height: 40px;
}

#entirePage .gba-tbl-div-score table th:first-child {
    border-left: none;
}
#entirePage .gba-tbl-div-score table td {
    padding: 2px 2px;
    border-right: 1px solid #404040;
    border-bottom: 1px solid #404040;
    font-size: 15px;
    background: #fff9e5;
}
#entirePage .gba-tbl-div-score table td:first-child {
    border-left: 1px solid #404040;
    font-size: 15px;
}
#entirePage .gba-tbl-div-score table td:first-child {
    border-left: none;
}
#entirePage .gba-tbl-div-score table tr:last-child td {
    border-bottom: none;
}
#entirePage .gba-tbl-div-score table td a{
      padding: 4px 0;
    display: inline-block;
}
#entirePage .content-score{
  display: inline-block;
    width: 100%;
    padding: 10px 12px 10px;
}
#entirePage .content-score .content-box{
  display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    margin: 10px 0 0;
    padding: 0;
    background: #676767;
    font-size: 15px;
    border-radius: 5px;
    border-top: 6px solid #c9ba98;
    border-bottom: 6px solid #c9ba98;
    width: 100%;
}
#entirePage .content-score .content-box:nth-child(even) .content-info{
  background: #fff2cb;
}
#entirePage .gba-tbl-div-score table tr:nth-child(odd) td{
  background-color: #ebe4cf;
}
#entirePage .content-score .content-title{
        padding: 10px 10px;
    border-bottom: 1px solid #404040;
    border-right: 1px solid #404040;
    width: 150px;
    height: 40px;
        display: inline-flex;
    align-items: center;
}
#entirePage .content-score .content-info{
          padding: 10px 10px;
    background: #fff9e5;
    color: #000;
    height: 40px;
    border-bottom: 1px solid #404040;
    width: calc(100% - 150px);
        display: inline-flex;
    align-items: center;
}
#entirePage .content-score .content-title:last-child{
  border-bottom: none;
}
#entirePage .content-score .content-info:last-child{
  border-bottom: none;
}
#entirePage .work-judge-table-list table tr:nth-child(odd) td {
    background-color: #ebe4cf;
}
/* 2026-05-24 REMOVED: width 80% !important — broken design forced all 16 jps
 * dialogs to identical width regardless of content density. Replaced by
 * type-based widths in jps-dialog-redesign.css. */
/* 2026-05-24 REMOVED: gba-label / gba-input-control / ui-dialog-content
 * overrides — now centralised in jps-dialog-redesign.css to give a single
 * source of truth for dialog typography. */
#entirePage .ui-dialog table.table-striped{
      width: 100%;
    border-radius: 8px;
    border: #C9B27C 4px solid;
    margin: 8px 0;
    color: #404040;
}
#entirePage .ui-dialog table.table-striped th{
         color: #fff;
    text-align: center;
    padding: 8px 4px;
    background: #555;
}
#entirePage .ui-dialog table.table-striped tr td {
        padding: 8px 4px;
    background: #f6f0dd;
    text-align: center;
}
#entirePage .ui-dialog table.table-striped tr:nth-child(odd) td {
    background-color: #ebe4cf;
}
.ui-messages.ui-widget{
      width: 90%;
    margin: 0 auto;
}
.ui-growl.ui-widget{
  border: none;
  border-radius: 8px;
}
.ui-growl .ui-growl-item-container{
  border: none;
  border-radius: 8px;
}
/* 2026-05-27 移除 pseudo-element 全螢幕黑底蓋與巨型 box-shadow：
   原設計用 toast 出現時暗化整頁強調訊息，但跟「toast 不干擾流暢度」相反，
   也是使用者一直反映「半屏暗化」的真兇（pseudo-element 不是 DOM 抓不到）。 */
.ui-growl .ui-growl-item{
  background: #fff9e5;
  border-radius: 8px;
  padding: 25px 10px;
  border: #b5a47d  5px solid;
}

.ui-growl .ui-growl-item .ui-growl-icon-close{
  /* color: #fff !important; */
  margin: 5px;
  /* background: #fff !important; */
}
/* .ui-growl .ui-growl-message{
  background: #2b2b2b;
  color: #ffc73a;
} */
.ui-growl .ui-growl-title{
  color: #2b2b2b;
  text-shadow: none;
  font-weight: 500;
}
.ui-messages.ui-widget .ui-messages-error{
      color: #a60000;
    background-color: #ffbbbb;
    border: #ffd9d9 3px solid;
    border-radius: 7px;
    font-size: 1.1em;
}
.ui-messages.ui-widget .ui-messages-info{
        color: #005074;
    background-color: #a5e2ff;
    border: #d0f0ff 3px solid;
    border-radius: 7px;
    font-size: 1.1em;
}
.rwd-table-dialog a{
    color: #398ec9;
    text-decoration: underline;
  }
#entirePage .gba-right #logoutForm{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
@media only screen and (max-width: 1200px) {
  #entirePage .work-judge-table-list{
    width: 100%;
    padding: 0 12px;
  }
  #entirePage .player-table-label{
    margin: 0;
    width: 100%;
  }
  #entirePage .work-judge-table{
    padding: 0;
  }
  #entirePage .player-table-info{
        margin: 0;
    width: 100%;
    padding-right: 0px;
  }
  .ui-messages.ui-widget{
      width: calc(100% - 24px) ;
  }
  .work-judge-table-list table td{
    padding-top: 5px;
    padding-bottom: 5px;
  }
}
@media only screen and (max-width: 1024px) {
  #entirePage .gba-header{
        height: auto;
  }
  #entirePage .gba-header .gba-right{
        width: 100%;
    display: inline-block;
    float: inherit;
  }
  #entirePage .gba-header .gba-center{
        display: inline-block;
    width: 100%;
    text-align: center;
  }
  #entirePage .work-judge-table-list .player-info-zone{
    display: flex;
    flex-direction: column-reverse;
  }
  #entirePage .tv img[style^="width:100%; padding-bottom:38px"]{
    padding-bottom: 68px !important;
  }
  #entirePage .video-area{
    width: calc(100% + 24px);
    left: -12px;
  }
  #entirePage .video-area .video-js{
    width: 100%;
    height: auto;
    border: none;
    border-top: 12px #000 solid;
    border-radius: 0;
    border-bottom: 12px #000 solid;
  }
  
}
@media only screen and (max-width: 820px) {
  #entirePage #searchPageId.gba-header-menu-div .form-inline{
    display: flex;
    justify-content: center;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(1){
    width: 15%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(2){
    width: 20%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(3){
    width: 20%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(4){
    width: 18%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group input{
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  #searchPageId .form-inline .form-group{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    background: #fff9e5;
    padding: 8px 12px;
    margin: 0 0 5px;
    border-radius: 5px;
  }
  #searchPageId .form-inline .form-group .gba-label{
    min-width: 90px;
  }
  #searchPageId .form-inline .form-group .ui-commandlink.btn.btn-primary{
    width: 100%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline{
    display: inherit;
    width: 100%;
  }
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(1),
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(2),
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(3),
  #entirePage #searchPageId.gba-header-menu-div .form-inline .form-group:nth-child(4){
    width: inherit;
  }
  #entirePage .video-area{
    width: calc(100% + 24px);
    left: -12px;
  }
  #entirePage .video-area .video-js{
    width: 100%;
    height: auto;
    border: none;
    border-top: 12px #000 solid;
    border-radius: 0;
    border-bottom: 12px #000 solid;
  }
  #entirePage .tv img[style^="width:100%; padding-bottom:38px"]{
    padding-bottom: 68px !important;
  }
  #audioPlayerId{
    width: 100%;
  }
  /*20230604*/
  #entirePage .login-box{
    width: 100%;
    /* font-size: 2em; */
  }
  #entirePage div[style^="float:right; margin-right:20px;"]{
      width: 100%;
      margin-bottom: 8px;
  }
  /* #entirePage .login-box .gba-panel-title,
  #entirePage .login-box .gba-btn-group .ui-commandlink.btn{
    font-size: 2em;
  }
  #entirePage .login-box .gba-panel-title .alert-danger{
        font-size: 0.65em;
  }
  .login-box .gba-input-group .gba-label{
    font-size: 2em;
    padding: 6px 12px 6px 20px;
  }
  #entirePage .login-box .gba-input-group .gba-input-control{
    font-size: 2em;
  } */
}
/* @media only screen and (max-width: 760px),
  (min-device-width: 768px) and (max-device-width: 1024px) { */
@media only screen and (max-width: 767px) {

  table.rwd-table-a,
  .rwd-table-a thead,
  .rwd-table-a tbody,
  .rwd-table-a th,
  .rwd-table-a td,
  .rwd-table-a tr {
    display: block;
  }
  .rwd-table-a th{
    width: 100% !important;
  }
  .rwd-table-a thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
  #entirePage .icon-list{
    display: initial;
  }
  .rwd-table-a tr {
        border: 6px solid #c9ba98;
    margin-bottom: 5px;
    border-radius: 6px;
    border-inline: inherit;
  }

  .rwd-table-a td {
    border-bottom: 1px solid #4d4b4b !important;
    border-top: none !important;
    position: relative;
    padding-left: 110px !important;
    text-align: left !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    width: 100%;
  }

  .rwd-table-a td:last-child{
    border-bottom: none !important;
  }

  .rwd-table-a td:before {
    position: absolute;
    top: 6px;
    left: 8px;
    width: 100px;
    padding-right: 10px;
    white-space: nowrap;
    font-weight: bold;
    z-index: 1;
    color: #fff;
  }
  .rwd-table-a td:after {
        content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100px;
    background: #676767;
    height: 100%;
    z-index: 0;
  }

  .rwd-table-a td.td-title:before {
    content: "作品名稱";
  }
  .rwd-table-a td.td-serial_num:before {
    content: "流水號";
  }
  .rwd-table-a td.td-prizes:before {
    content: "報名獎項";
  }
  .rwd-table-a td.td-contestant:before {
    content: "參賽者";
  }
  .rwd-table-a td.td-video:before {
    content: "參賽集別";
  }
  .rwd-table-a td.td-newcomer:before {
    content: "新人獎資格初審";
  }
  .rwd-table-a td.td-quantity:before {
    content: "分數";
  }
  .rwd-table-a td.td-top:before {
    content: "優選作品";
  }
  #entirePage .work-judge-table-list table.rwd-table-a th:last-child{
    border-bottom: none;
  }
  #entirePage .work-judge-table-list .table-div{
    border: none;
  }
  #entirePage .work-judge-table-list table.rwd-table-a tr.mobile-style{
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    align-content: center;
    width: 100%;
  }
  #entirePage .work-judge-table-list table.rwd-table-a tr.mobile-style th{
    width: 25% !important;
    display: flex;
    align-items: center;
    border: none;
    border-right: #c6be72 1px solid;
    justify-content: center;
    margin: -1px 0;
        height: auto;
  }
  #entirePage .work-judge-table-list table.rwd-table-a tr.mobile-style th .th-icon-area{
    display: flex;
    flex-direction: column;
  }
  #entirePage .work-judge-table-list table.rwd-table-a tr.mobile-style th.td-prize, 
  #entirePage .work-judge-table-list table.rwd-table-a tr.mobile-style th.td-num{
    display: none;
  }
  #entirePage .gba-header{
    padding: 0 0 10px;
    height: auto;
  }
  #entirePage .gba-right #logoutForm{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  #entirePage .gba-right #logoutForm .btn.btn-default{
    width: 48%;
    display: flex;
    align-items: center;
    justify-content: center;
        white-space: normal;
        margin: 2px;
  }
  #entirePage .form-inline .form-group .gba-label{
    text-align: left;
  }
  #entirePage .gba-header-menu-div{
    padding: 10px;
  }
  #entirePage .th-icon-area p{
    color: #c9ba98;
  }
  #entirePage .glyphicons.glyphicons-sorting, #entirePage .glyphicons.glyphicons-sort-by-attributes{
    color: #ffda00;
  }
  #entirePage .work-judge-table-list table tr:nth-child(odd) td {
    background-color: #fff2cb;
  }
  /* 2026-05-24 REMOVED Rev 3: width 94% !important — this rule had specificity
   * (1,1,0) and was overriding jps-dialog-redesign.css mobile rule (0,2,0),
   * causing iPhone width inconsistency (form1-scoped dialogs forced to 94vw =
   * 366px, while body-level logoutDlg unaffected got 100vw = 390px). Width is
   * now centrally managed in jps-dialog-redesign.css with 3 type groups. */
  #entirePage .ui-dialog .rwd-table-dialog .gba-header{
    display: none;
  }
  .rwd-table-a td.dialog-td-01:before {
    content: "項次";
  }
  .rwd-table-a td.dialog-td-02:before {
    content: "作品發表時間";
  }
  .rwd-table-a td.dialog-td-03:before {
    content: "作品名稱";
  }
  .rwd-table-a td.dialog-td-04:before {
    content: "角色名稱";
  }
  .rwd-table-a td.dialog-td-05:before {
    content: "角色別說明";
  }
  .rwd-table-a td.dialog-td-06:before {
    content: "作品連結URL";
  }
  #entirePage .ui-dialog table.table-striped{
    border: none;
  }
  #entirePage .ui-dialog .rwd-table-dialog td {
    padding-left: 130px !important;
  }
  .rwd-table-dialog td:after {
    width: 120px;
  }
  .rwd-table-dialog td:before {
    width: 120px;
  }
}
/* 報名獎項複選下拉：PF selectCheckboxMenu 填滿 form-control 外框、自身無邊框，
   讓它與其他文字輸入框等高對齊。(2026-05-22 加入) */
#searchPageId .form-group .form-control.jps-prize-wrap{
    padding: 0;
    display: flex;
    align-items: stretch;
    min-width: 180px;
}
#searchPageId .jps-prize-menu.ui-selectcheckboxmenu{
    width: 100%;
    border: 0;
    background: transparent;
    box-shadow: none;
    display: flex;
    align-items: center;
}
#searchPageId .jps-prize-menu .ui-selectcheckboxmenu-label{
    flex: 1;
    padding: 0 5px;
    line-height: 30px;
    color: #000;
    border: 0;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
#searchPageId .jps-prize-menu .ui-selectcheckboxmenu-trigger{
    width: 22px;
    border: 0;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Cloudflare Turnstile 在登入頁置中（widget ~300px 不夠塞 input 欄寬，
   就放在 login-box 視覺中心。原本靠 .gba-input-group 預設左對齊看起來會
   往左歪。2026-05-24） */
.login-box .gba-input-group .cf-turnstile,
.login-box .cf-turnstile {
    display: flex;
    justify-content: center;
}
