html,
body {
  margin: 0;
  padding: 0;
  background: #567489 url("../img/bg.jpg") no-repeat center center fixed;
  background-size: cover;
  font-family: "Noto Sans TC", Arial, sans-serif;
  color: #222;
  min-height: 100vh;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

body.body2 {
  background: #567489 url("../img/bg2.jpg") no-repeat center center fixed;
}

input:focus-visible,
select:focus-visible {
  outline: none;
}

input:-internal-autofill-selected {
  background-color: transparent !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  outline: none;
  -webkit-box-shadow: 0 0 0 1000px transparent inset !important;
  -webkit-text-fill-color: #000 !important;
  /* 可依需求改成白色或其他顏色 */
  transition: background-color 9999s ease-in-out 0s;
}

/* 放在 main.css 最後面 */
@keyframes onAutoFillStart {
  from {}

  to {}
}

input:-webkit-autofill {
  animation-name: onAutoFillStart;
  animation-duration: 0.001s;
}

/* optional: 避免重複作用 */
input[data-autofilled] {
  -webkit-box-shadow: inset 0 0 0 1000px transparent !important;
  box-shadow: inset 0 0 0 1000px transparent !important;
  -webkit-text-fill-color: inherit !important;
}

.container {
  display: flex;
  flex-wrap: wrap;
  max-width: 1500px;
  width: 100%;
  margin: auto;
  min-height: auto;

  align-items: center;
  justify-content: center;
  gap: 5%;
  position: relative;
  z-index: 2;
}

.login-panel {
  border: #fff 2px solid;
  padding: 30px;
  width: 38%;
}

.dashboard {
  width: 52%;
}

.dashboard img {
  width: 100%;
}

.login-contain {
  background-color: rgba(250, 250, 250, 0.67);
  padding: 36px;
  border-radius: 5px;
  position: relative;
}

.login-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
}

.login-header img.logo {
  max-width: 332px;
  width: 100%;
  margin-right: 8px;
  flex-shrink: 0;
}

.header-titles {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.login-header-title {
  font-size: 1.25rem;
  font-weight: bold;
  color: #005172;
  letter-spacing: 2px;
}

.login-header-desc {
  font-size: 1.03rem;
  color: #2f4151;
  font-weight: 500;
  letter-spacing: 1px;
}

.login-form {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-top: 6px;
}

.form-group {
  display: flex;
  align-items: center;
  position: relative;
}

.form-group label {
  min-width: 90px;
  color: #34475a;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.5px;
}

.form-group.select-org {
  z-index: 12;
}

/* select 樣式仿附件2、卷軸樣式自訂 */

.county {
  flex: 1;
  padding: 7px 32px 7px 12px;
  font-size: 1.07rem;
  border: 1.5pt solid #262626;
  border-radius: 9px;
  color: #222;
  outline: none;
  background: #bfc9d0;
  width: calc(100% - 90px);
}

.county::-webkit-scrollbar {
  width: 14px;
  background: #e6ebef;
  border-radius: 7px;
}

.county::-webkit-scrollbar-thumb {
  background: #3a7ca5;
  border-radius: 7px;
  border: 3px solid #e6ebef;
}

.county::-webkit-scrollbar-thumb:hover {
  background: #005172;
}

.county {
  scrollbar-width: thin;
  scrollbar-color: #3a7ca5 #e6ebef;
}

/* 下拉箭頭圖 */

.dropdown-arrow {
  position: absolute;
  right: 3px;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  pointer-events: none;
  z-index: 5;
  background-color: #bfc9d0;
}

.dropdown-arrow img {
  height: 23px;
}

.dropdown-arrow2 {
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  background-color: #fff;
  width: 23px;
  height: 23px;
  pointer-events: none;
  z-index: 5;
}

.dropdown-arrow2 img {
  height: 23px;
  line-height: 23px;
  vertical-align: top;
}

.form-group input {
  width: calc(100% - 90px);
  padding: 8px 12px;
  font-size: 1rem;
  border: 1.5pt solid #262626;
  border-radius: 7px;
  background: transparent;
  outline: none;
  font-family: inherit;
}

.form-group.verification input {
  width: 100%;
}

.form-group .icon {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  cursor: pointer;
}

/* 驗證碼區 */
.Verification_Code {
  width: 100%;
}

.verification {
  display: grid;
  gap: 12px;
  border-radius: 7px;
  margin: 23px 0 0 0;
}

.verification img {
  width: 100%;
}

.login-btn {
  background: #4e738c;
  color: #fff;
  border: none;
  border-radius: 7px;
  font-size: 1.22rem;
  font-weight: bold;
  padding: 10px 0;
  margin-top: 8px;
  transition: all 0.15s;
  cursor: pointer;
}

.login-btn:hover {
  background: #3a5568;
}

.login-links {
  margin-top: 18px;
  font-size: 1rem;
  color: #54728a;
}

.login-links ul {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.login-links li {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: color 0.15s;
  font-size: 1.04rem;
}

.login-links li:hover {
  color: #3a7ca5;
  text-decoration: underline;
}

.login-links img {
  width: 20px;
  height: 20px;
}

/* 錯誤顏色 */

input.error {
  border: 1.5pt solid #c13f3f !important;
  color: #c13f3f !important;
}

input.input-validation-error {
    border: 1.5pt solid #c13f3f !important;
    color: #c13f3f !important;
}

select.error {
  color: #C13332 !important;
  border: 1.5pt solid #c13f3f !important;
}

select.input-validation-error {
    color: #C13332 !important;
    border: 1.5pt solid #c13f3f !important;
}

/* 2. 下拉展開時，option 使用原本（深色）字體，不受 select 的 color 影響 */
select.error option {
  color: #222222 !important;
  /* 或者換成你原本的文字顏色 */
}

select.input-validation-error option {
    color: #222222 !important;
}

/* 3. 若需兼容 IE10+，可額外加上： */
select.error::-ms-value {
  color: #C13332;
}

/* 警告訊息 */

.Information_input_error {
  display: flex;
  width: fit-content;
  align-items: center;
  background-color: #c13f3f;
  padding: 5px;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.3rem;
  padding: 10px 15px;
  gap: 5px;
  margin-left: auto;
  position: absolute;
  right: 10px;
  bottom: 10px;
}

.Information_input_error img {
  width: 30px;
}

.Information_input_error2 {
  display: flex;
  width: fit-content;
  align-items: center;
  background-color: #c13f3f;
  padding: 5px;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1.3rem;
  padding: 10px 15px;
  gap: 5px;
  margin-left: auto;
  position: fixed;
  right: 10px;
  bottom: 10px;
}

.Information_input_error2 img {
  width: 30px;
}

.Information_input_success {
  display: flex;
  width: fit-content;

  align-items: center;
  background-color: #02bf4e;
  padding: 5px;
  color: #fff;
  position: absolute;
  right: 20px;
  bottom: 20px;
  font-size: 1.1rem;
  padding: 10px 15px;
  gap: 5px;
  margin-left: auto;
}

.Information_input_success img {
  height: 15px;
}

.Information_input_success2 {
  display: flex;
  width: fit-content;

  align-items: center;
  background-color: #02bf4e;

  color: #fff;
  position: absolute;
  right: 25px;
  bottom: 10px;
  font-size: 1.1rem;
  padding: 10px 15px;
  gap: 5px;
  margin-left: auto;
  margin-top: 10px;
}

.Information_input_success2 img {
  height: 15px;
}

.Information_input_success3 {
  display: flex;
  width: fit-content;

  align-items: center;
  background-color: #02bf4e;

  color: #fff;
  position: fixed;
  right: 25px;
  bottom: 10px;
  font-size: 1.1rem;
  padding: 10px 15px;
  gap: 5px;
  margin-left: auto;
  margin-top: 10px;
  z-index: 9999;
}

.Information_input_success3 img {
  height: 15px;
}

/* 帳號申請介面 */

.application_interface .login-form label {
  border: 1.5pt solid #262626;
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  background: transparent;
  padding: 10px 15px;
  min-width: 130px;
}

.application_interface .form-group input {
  width: calc(100% - 130px);
  background: transparent;
  border-right: none;
}

/* 容器與面板 */

.application-panel {
  max-width: 550px;
  margin: 40px auto;
  background-color: rgba(250, 250, 250, 0.67);
  padding: 30px 25px;
  border-radius: 8px;
  box-sizing: border-box;
  position: relative;
}

form.application-form {
  display: flex;
  flex-direction: column;
  margin-top: 10px;
}

/* 每一行欄位 */

.form-row {
  display: flex;
  align-items: center;
  margin-bottom: 14px;
  font-size: 1.1rem;
}

/* label 左側欄位 */

.form-row>label {
  display: flex;
  align-items: center;
  width: 120px;
  padding: 10px;
  border: 2px solid #444;
  border-right: none;
  border-radius: 6px 0 0 6px;
  font-weight: 600;
  box-sizing: border-box;
  height: 40px;
  user-select: none;
}

/* 右側輸入框 */

.form-row input,
.form-row select {
  flex: 1;
  padding: 10px 15px;
  font-size: 1rem;
  line-height: 1.2;
  border: 2px solid #444;
  border-radius: 0 6px 6px 0;
  box-sizing: border-box;
  background: transparent;
  height: 40px;
}

/* 密碼欄含切換按鈕 */

.password-row {
  position: relative;
}

.password-input {
  position: relative;
  flex: 1;
}

.password-input input {
  width: 100%;
  padding-right: 40px;
  height: 40px;
}

.toggle-eye {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  width: 24px;
  height: 24px;
  user-select: none;
}

/* 密碼規則清單 */

.password-requirements {
  margin-left: 10px;
  margin-bottom: 12px;
  padding-left: 0;
  list-style: none;
  color: #333;
  line-height: 1.4;
}

.password-requirements li {
  display: flex;
  align-items: flex-start;
}

.password-requirements .icon {
  content: "";
  display: inline-block;
  width: 17px;
  height: 18px;
  background: url("../img/password_icon.svg") no-repeat 0 2px;
  background-size: cover;
  margin-right: 6px;
}

.password-requirements span {
  width: calc(100% - 20px);
}

.password-note {
  margin-left: 120px;
  margin-bottom: 20px;
  font-size: 0.8rem;
  color: #555;
}

/* select 特殊樣式 */

.select-wrapper {
  flex: 1;
  position: relative;
}

.select-wrapper select {
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 30px;
  cursor: pointer;
  font-size: 0.99rem;
  line-height: 1rem;
}

.select-wrapper .arrow {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 1.2rem;
  color: #444;
  user-select: none;
}

/* 驗證碼欄位 */

.verification {
  align-items: flex-start;
}

.verification-group {
  display: flex;
  flex: 1;
  gap: 10px;
}

.verification-group input {
  flex: 1;
  padding: 8px 12px;
  font-size: 0.9rem;
  border: 1px solid #f00;
  border-radius: 6px 0 0 6px;
  box-sizing: border-box;
}

.verification-group img {
  height: 40px;
  border: 1px solid #444;
  border-radius: 0 6px 6px 0;
}

/* 申請按鈕 */

.submit-btn {
  width: 100%;
  background: #334a5f;
  border: none;
  padding: 12px 0;
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  border-radius: 6px;
  cursor: pointer;
  user-select: none;
}

.submit-btn:hover {
  background: #2a3f4e;
}

.password-requirements li {
  display: flex;
  align-items: top;
  gap: 3px;
}

.password-requirements li:before {
  content: "";
  width: 17px;
  height: 18px;
  background: url("../img/password_icon.svg") no-repeat 0 2px / cover;
}

/* 錯誤輸入框 */

.form-row.error>label {
  border: 2px solid #c13f3f;
  color: #c13f3f;
  border-right: 0;
}

.form-row.error input {
  border: 2px solid #c13f3f;
  border-left: 2px solid #c13f3f;

  color: #c13f3f;
}

/* 1. 讓 .form-row.error 下的 select 顯示 #C13332 */
.form-row.error select {
  border: 2px solid #c13f3f;
  border-left: 2px solid #c13f3f;
}

/* 2. 下拉時，option 恢復深色文字 */
.form-row.error .select-wrapper select option {
  color: #222222 !important;
}

.form-row.error .select-wrapper select {
  color: #C13332 !important;
}


.form-row.error input::placeholder {
  color: #c13f3f;
  opacity: 1;
}

.form-row.consent-row {
  align-items: flex-start;

  margin-bottom: 20px;
  border: 2px solid #444;
  border-radius: 6px;
  align-items: center;
  position: relative;
}

.form-row.consent-row>label {
  width: 120px;
  padding: 10px 10px;
  border: none;
  display: flex;
  align-items: center;
}

.consent-text:before {
  display: block;
  content: "";
  height: 100%;
  width: 2px;
  position: absolute;
  left: 121px;
  bottom: 0px;
  border-right: 2px solid #444;
}

.consent-text {
  flex: 1;
  border-left: none;
  border-radius: 0 6px 6px 0;
  padding: 10px 15px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
  box-sizing: border-box;
}

.consent-text input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 25px;
  height: 25px;
  border: 2px solid #444;
  border-radius: 0;
  /* 完全正方形 */
  background-color: transparent;
  cursor: pointer;
  position: relative;
  padding: 10px;
  display: block;
}

.consent-text input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 7px;
  width: 7px;
  height: 12px;
  border: solid #444;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.consent-text p {
  margin: 0;
  font-size: 0.9rem;
  color: #333;
  line-height: 1.4;
  user-select: none;
}

.consent-text a {
  color: #3366cc;
  text-decoration: underline;
}

/* 全螢幕黑色半透明遮罩 */

#lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  font-size: 1.5rem;
  -webkit-overflow-scrolling: touch;
  padding: 60px 0;
}

/* 白底公告視窗 */

#lightbox-content {
  background: white;
  width: 90%;
  max-width: 1000px;
  border-radius: 10px;

  position: relative;
  max-height: 80vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* iOS上啟用慣性滾動 */
}

/* 標題區塊，藍色背景 */

#lightbox-header {
  background-color: #2ad7f5;
  padding: 12px 16px;
  font-weight: 700;
  color: #000;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

/* 內文區塊 */

#lightbox-body {
  padding: 20px 30px;
  color: #000;
  line-height: 1.5;
}

.lightbox-body {
  padding: 20px 30px;
  color: #000;
  line-height: 1.5;
  display: grid;
  gap: 10px;
}

/* 按鈕區塊 */

#lightbox-footer {
  padding: 12px 16px 20px;
  text-align: center;
}

#agree-btn {
  background-color: #1d77a7;
  border: none;
  color: white;
  padding: 10px 24px;
  border-radius: 5px;
  cursor: pointer;
  user-select: none;
  transition: background-color 0.3s ease;
}

#agree-btn:hover,
#agree-btn:focus {
  background-color: #145374;
  outline: none;
}

/* 右上角關閉按鈕 */

#close-btn {
  position: absolute;
  top: calc(10vh - 36px);
  right: calc(5% + 12px);
  width: 24px;
  height: 24px;
  background: url("../img/close.png") no-repeat center center;
  background-size: contain;
  border: none;
  cursor: pointer;
  z-index: 99999;
  opacity: 1;
}

#close-btn:hover,
#close-btn:focus {
  opacity: 1;
  outline: none;
}

/* 視窗定位容器，用於相對定位關閉按鈕 */

#lightbox-container {
  position: relative;
}

.A5568-btn {
  background: #3a5568;
}

.A5568-btn:hover {
  background: #2f4658;
}

/* 登入後畫面 */
header.custom-header {
  flex-shrink: 0;
  /* 頁首不縮 */
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 24px;
  flex-wrap: wrap;
}

.custom-header-left {
  display: flex;
  align-items: center;
  gap: 12px;
}

.custom-header-left img.logo {
  max-height: 100px;
  max-width: 300px;
  width: 100%;
}

.custom-header-left .titles {
  display: flex;
  flex-direction: column;
}

.custom-header-left .titles .main-title {
  font-weight: 700;
  font-size: 1.4rem;
  color: #000;
}

.custom-header-left .titles .sub-title {
  font-size: 0.85rem;
  color: #444;
}

.custom-header-right {
  font-size: 1.2rem;
  color: #222;
}

.custom-header-right a {
  color: #444;
  text-decoration: none;
}

.custom-header-right a:hover {
  text-decoration: underline;
}

/* 主體 */
main.custom-main {
  flex-grow: 1;
  /* 撐滿剩餘空間 */
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10%;
  max-width: 900px;
  margin: 70px auto;
  justify-content: center;
  flex-wrap: wrap;
}

.btn-wrapper {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.custom-system-btn.Not_selected {
  pointer-events: none;
}

.btn-wrapper .custom-system-btn.Not_selected+.custom-btn-text,
.btn-wrapper .custom-system-btn.Not_selected+.custom-btn-text2 {
  text-decoration: none !important;
}

.custom-system-btn {
  position: relative;
  width: 100%;
  /* 或指定固定寬度 */
  width: 400px;
  /* 最大寬度 */
  padding-top: 90%;
  /* 讓高度 = 寬度，維持正方形 */
  border-radius: 16px;
  background-color: #d3d3d3;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.15);
  border: 3pt solid #bfbfbf;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s;
  overflow: hidden;
  /* 避免溢出 */
  display: block;
}

.custom-system-btn:hover,
.custom-system-btn:focus {
  transition: all 0.3s;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
  /* 浮起陰影 */
  transform: translateY(-5px);
  /* 上移 5px，浮起感 */
}

.custom-system-btn:nth-child(1).success {
  background-color: #e1efb3;
}

.btn-wrapper:nth-child(2)>.custom-system-btn.success {
  background-color: #c1e5f5;
}

.custom-system-btn img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  /* 調整圖片大小 */
  height: 80%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  transition: all 0.3s ease;
}

.custom-system-btn img:hover {
  opacity: 0.5;
}

.btn-wrapper:nth-child(2)>.custom-system-btn img {
  margin-left: 8%;
}

.custom-btn-text {
  margin-top: 12px;
  font-weight: 700;
  font-size: 2rem;
  color: #fff;
  user-select: none;
}

.custom-btn-text2 {
  margin-top: 16px;
  font-weight: 700;
  font-size: 1.8rem;
  color: #fff;
  user-select: none;
}

/* 簡化選擇器，直接將兩個 class 都納入同一規則 */
.btn-wrapper:hover>.custom-btn-text,
.btn-wrapper:hover>.custom-btn-text2 {
  text-decoration: underline !important;
}

/* 如果 div 原本是 block-level，需要改成 inline-block 才會緊貼文字 */
.custom-btn-text,
.custom-btn-text2 {
  display: inline-block;
}


/* 頁尾 */
footer.custom-footer {
  flex-shrink: 0;
  background-color: #404040;
  color: #ddd;
  font-size: 1rem;
  line-height: 1.5;
  padding: 30px 24px;
}

footer.custom-footer ul {
  margin: 0;
  padding-left: 18px;
  list-style: none;
}

footer.custom-footer li {
  margin-bottom: 6px;
  list-style-type: disc;
}

/* 表格 */
.account-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 1.2rem;
  user-select: none;
  margin-top: 10px;
}

.account-table th,
.account-table td {
  padding: 8px 12px;
  border: 1px solid #fff;
}

.account-table th {
  text-align: left;
  width: 35%;
  user-select: text;
}

.account-table tbody tr:nth-child(odd) {
  background-color: #dde1e4;
  /* 較淺 */
}

.account-table tbody tr:nth-child(even) {
  background-color: #bec7cd;
  /* 較深 */
}

/* 按鈕區 */
#lightbox-footer2 {
  display: flex;
  justify-content: space-between;
  padding: 0 30px 20px 30px;
  gap: 12px;
  flex-wrap: wrap;
}

#lightbox-footer2 button {
  flex: 1 1 30%;
  padding: 10px 0;

  font-size: 1.5rem;
  border-radius: 6px;
  border: none;
  cursor: pointer;
  color: white;
  user-select: none;
  transition: background-color 0.3s ease;
}

.edit-btn {
  background-color: #e57225;
}

.edit-btn:hover,
.edit-btn:focus {
    background-color: #b85a1a;
}

#change-pw-btn {
  background-color: #006d9b;
}

#change-pw-btn:hover,
#change-pw-btn:focus {
  background-color: #004a61;
}

.back_list {
  background-color: #a2c72b;
}

.back_list:hover {
  background-color: #a2c72b;
}

.Account_Verification {
  background-color: #49d1e3;
  width: 100%;
}

.Account_Verification:hover {
  background-color: #39aab9;
}

#close-btn-bottom {
  background-color: #6f6f6f;
}

#close-btn-bottom:hover,
#close-btn-bottom:focus {
  background-color: #4a4a4a;
}

input.Account_Information,
select.Account_Information {
  width: 100%;
  padding: 6px 12px;
  font-size: 1rem;
  color: #000;
  background: #ffffff !important;
  /* 淺灰底 */
  border: 1.8px solid #afafaf;
  /* 明顯灰邊框 */
  border-radius: 6px;
  /* 圓角 */
  box-sizing: border-box;
  outline: none;
}

button.orange {
  color: #fff;
  background-color: #e97132;
  border: none;
  float: right;
}

button.orange:hover {
  background-color: #ce5e22;
}

/* 鎖定背景滾動 */
body.modal-open {
  overflow: hidden;
  height: 100vh;
}

/*.btn {*/
/*    color: #fff;*/
/*    border: none;*/
    /*border-radius: 7px;*/
/*    font-size: 1.22rem;*/
/*    font-weight: bold;*/
    /*padding: 10px 0;*/
/*    margin-top: 8px;*/
    /*transition: all 0.15s;
    cursor: pointer;
    min-width: 60px;
}*/

    .btn.btn-default {
        background: #4e738c;
        color: #fff;
        transition: background-color 0.3s ease;
    }

        .btn.btn-default:hover {
            background: #3a5568;
            color: #fff !important;
        }

    .btn.btn-enable {
        background: #a2c72b;
        transition: background-color 0.3s ease;
    }

        .btn.btn-enable:hover {
            background: #8fbf25;
        }

.row {
    margin-top: 10px;
}

#idle-timer-badge {
    width: 160px;
    right: 16px;
    bottom: 16px;
    z-index: 9999;
    display: none; /* 登入後才顯示、JS 控制 */
    padding: 10px 12px;
    border-radius: 10px;
    box-shadow: 0 4px 16px rgba(0,0,0,.15);
    background: #fff;
    border: 1px solid rgba(0,0,0,.1);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
    font-size: 14px;
}

    #idle-timer-badge .label {
        opacity: .6;
        margin-right: 6px;
    }

    #idle-timer-badge .time {
        font-variant-numeric: tabular-nums;
        font-weight: 600;
    }

.form-group.break-normal {
    display: block !important;
    flex-direction: unset !important;
}