/* 暗色系主題 CSS - 修正版本 */
/* Dark Theme CSS - Fixed Version */

/* 全局暗色主題變量 */
:root {
    --dark-bg-primary: #1a1a1a;
    --dark-bg-secondary: #2d2d2d;
    --dark-bg-tertiary: #3a3a3a;
    --dark-text-primary: #ffffff;
    --dark-text-secondary: #cccccc;
    --dark-text-muted: #999999;
    --dark-border: #555555;
    --dark-border-light: #444444;
    --dark-accent: #4a9eff;
    --dark-accent-hover: #6bb6ff;
    --dark-success: #28a745;
    --dark-warning: #ffc107;
    --dark-danger: #dc3545;
    --dark-shadow: rgba(0, 0, 0, 0.3);
}

/* 全局暗色主題應用 - 只在暗色主題類下生效 */
/* body 本身就有 dark-theme class */
body.dark-theme {
    background-color: var(--dark-bg-primary) !important;
    color: var(--dark-text-primary) !important;
}

/* html 背景色（當 body 有主題class時） */
body.dark-theme ~ html,
html:has(body.dark-theme) {
    background-color: var(--dark-bg-primary) !important;
}

/* 覆蓋 Bootstrap 的 bg-light 類（最高優先級） */
body.dark-theme .bg-light,
.dark-theme .bg-light {
    background-color: var(--dark-bg-secondary) !important;
}

/* 暗色主題下的 header 圖標按鈕樣式 */
.dark-theme .header_image_button {
    border-color: var(--dark-border) !important;
    background-color: var(--dark-bg-secondary) !important;
}

/* 所有主題下特定圖標的顏色調整 */
/* Icon 58: 保持原始行為（白底） */
.header_image_button[style*="header_image58"] {
    filter: brightness(1.2) !important;
    background-color: #ffffff !important;
}

/* Icon 58: hover 狀態也要保持白底 */
.header_image_button[style*="header_image58"]:hover {
    background-color: #ffffff !important;
}

/* Icon 59: 讓它跟 58 一樣有白底效果 */
.header_image_button[style*="header_image59"] {
    filter: brightness(1.2) !important;
    background-color: #ffffff !important;
}

/* Icon 59: hover 狀態也要保持白底 */
.header_image_button[style*="header_image59"]:hover {
    background-color: #ffffff !important;
}

/* 導航欄外層容器背景 */
body.dark-theme .navbar-wrapper,
.dark-theme .navbar-wrapper {
    background-color: var(--dark-bg-secondary) !important;
}

/* 導航欄用戶登入文字顏色 */
body.dark-theme .home_user_login,
body.dark-theme .home_user_login a,
.dark-theme .home_user_login,
.dark-theme .home_user_login a {
    color: var(--dark-text-primary) !important;
}

/* 導航欄背景（多重選擇器確保覆蓋） */
body.dark-theme .navbar.navbar-light.bg-light,
body.dark-theme .navbar.bg-light,
body.dark-theme .nav_body,
.dark-theme .navbar.navbar-light.bg-light,
.dark-theme .navbar.bg-light,
.dark-theme .nav_body {
    background-color: var(--dark-bg-secondary) !important;
    background-image: none !important;
    border-bottom: 2px solid var(--dark-border) !important;
}

body.dark-theme .navbar,
.dark-theme .navbar {
    background-color: var(--dark-bg-secondary) !important;
    background-image: none !important;
}

.dark-theme .navbar-light .navbar-nav .nav-link {
    color: #333333 !important; /* 深色文字，在淺色背景上可見 */
}

/* LCA 子導航欄背景 */
body.dark-theme .subnav_bg,
.dark-theme .subnav_bg {
    background-color: var(--dark-bg-tertiary) !important;
    background-image: none !important;
}

/* LCA 子導航欄連結 */
body.dark-theme .survey_form_order_wrap a,
.dark-theme .survey_form_order_wrap a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .survey_form_order_wrap a:hover,
.dark-theme .survey_form_order_wrap a:hover {
    color: var(--dark-accent) !important;
}

/* LCA 頁面主體容器 */
body.dark-theme .survey_form_body_wrap,
.dark-theme .survey_form_body_wrap {
    background-color: var(--dark-bg-primary) !important;
}

/* LCA Sidebar 側邊欄 */
body.dark-theme .side_bar,
.dark-theme .side_bar {
    background-color: var(--dark-bg-secondary) !important;
}

/* Sidebar Accordion */
body.dark-theme .accordion,
.dark-theme .accordion {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
}

body.dark-theme .accordion:hover,
body.dark-theme .accordion.active,
.dark-theme .accordion:hover,
.dark-theme .accordion.active {
    background-color: var(--dark-accent) !important;
}

/* Sidebar Panel */
body.dark-theme .panel,
.dark-theme .panel {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

/* Sidebar 連結顏色 */
body.dark-theme .side_bar a,
.dark-theme .side_bar a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .side_bar .group_title div,
.dark-theme .side_bar .group_title div {
    color: var(--dark-text-muted) !important;
}

/* Footer 背景 */
body.dark-theme .copyright_wrap,
.dark-theme .copyright_wrap {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
    border-top: 2px solid var(--dark-border) !important;
}

body.dark-theme .copyright,
.dark-theme .copyright {
    color: var(--dark-text-primary) !important;
}

/* Admin 頁面樣式 */
/* Admin 導航欄 */
body.dark-theme .navbar-fixed-top,
.dark-theme .navbar-fixed-top {
    background-color: var(--dark-bg-secondary) !important;
    background-image: none !important;
    border-color: var(--dark-border) !important;
}

/* Admin 容器 */
body.dark-theme .container,
.dark-theme .container {
    color: var(--dark-text-primary) !important;
}

/* Admin Panel */
body.dark-theme .panel,
body.dark-theme .panel-default,
.dark-theme .panel,
.dark-theme .panel-default {
    background-color: var(--dark-bg-secondary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .panel-heading,
body.dark-theme .panel-default > .panel-heading,
.dark-theme .panel-heading,
.dark-theme .panel-default > .panel-heading {
    background-color: var(--dark-bg-tertiary) !important;
    background-image: none !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .panel-body,
.dark-theme .panel-body {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

/* Admin 下拉選單 */
body.dark-theme .dropdown-menu,
.dark-theme .dropdown-menu {
    background-color: var(--dark-bg-secondary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .dropdown-menu > li > a,
.dark-theme .dropdown-menu > li > a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .dropdown-menu > li > a:hover,
.dark-theme .dropdown-menu > li > a:hover {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* Admin Nav 連結 */
body.dark-theme .navbar-nav > li > a,
.dark-theme .navbar-nav > li > a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .navbar-nav > li > a:hover,
body.dark-theme .navbar-nav > .active > a,
.dark-theme .navbar-nav > li > a:hover,
.dark-theme .navbar-nav > .active > a {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* Certification 頁面樣式 */
/* Certification Header */
body.dark-theme .docs-header,
.dark-theme .docs-header {
    background-color: var(--dark-bg-secondary) !important;
    background-image: none !important;
    border-bottom: 2px solid var(--dark-border) !important;
}

body.dark-theme .docs-body,
.dark-theme .docs-body {
    background-color: var(--dark-bg-primary) !important;
    color: var(--dark-text-primary) !important;
}

/* Certification 上方文字 */
body.dark-theme .home_culture_select,
.dark-theme .home_culture_select {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .home_user_login,
.dark-theme .home_user_login {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .home_user_login a,
.dark-theme .home_user_login a {
    color: var(--dark-text-primary) !important;
}

/* Certification Dropdown */
body.dark-theme .dropdown a,
.dark-theme .dropdown a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .dropdown-content,
.dark-theme .dropdown-content {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

body.dark-theme .dropdown-content a,
.dark-theme .dropdown-content a {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .dropdown-content a:hover,
.dark-theme .dropdown-content a:hover {
    background-color: var(--dark-accent) !important;
}

/* Certification Tab */
body.dark-theme .tab_header,
.dark-theme .tab_header {
    background-color: var(--dark-bg-secondary) !important;
    border-bottom: 1px solid var(--dark-border) !important;
}

body.dark-theme .tab,
.dark-theme .tab {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .tab-toggle.active,
.dark-theme .tab-toggle.active {
    background-color: var(--dark-accent) !important;
}

body.dark-theme .content_bg,
.dark-theme .content_bg {
    background-color: var(--dark-bg-secondary) !important;
}

/* Certification Panel */
body.dark-theme .docs-panel,
.dark-theme .docs-panel {
    background-color: var(--dark-bg-secondary) !important;
    border-color: var(--dark-border) !important;
}

/* Certification 按鈕 */
body.dark-theme .header-button,
.dark-theme .header-button {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .header-button:hover,
.dark-theme .header-button:hover {
    background-color: var(--dark-accent-hover) !important;
}

/* Certification Detail 頁面樣式 */
/* 左側導航欄 */
body.dark-theme .side-bar,
.dark-theme .side-bar,
body.dark-theme .org-split-left,
.dark-theme .org-split-left,
body.dark-theme .col-md-2.side-bar,
.dark-theme .col-md-2.side-bar {
    background-color: var(--dark-bg-secondary) !important;
    border-right: 1px solid var(--dark-border) !important;
}

/* 使用 ID 選擇器確保最高優先級 */
body.dark-theme #docs-scroll-hash-nav .nav-link,
.dark-theme #docs-scroll-hash-nav .nav-link,
body.dark-theme #docs-scroll-hash-nav a.nav-link,
.dark-theme #docs-scroll-hash-nav a.nav-link {
    color: #333333 !important; /* 深色文字，在淺色背景上可見 */
    background-color: transparent !important;
}

body.dark-theme #docs-scroll-hash-nav .nav-link.active,
body.dark-theme #docs-scroll-hash-nav .nav-link:hover,
.dark-theme #docs-scroll-hash-nav .nav-link.active,
.dark-theme #docs-scroll-hash-nav .nav-link:hover,
body.dark-theme #docs-scroll-hash-nav a.nav-link.active,
body.dark-theme #docs-scroll-hash-nav a.nav-link:hover,
.dark-theme #docs-scroll-hash-nav a.nav-link.active,
.dark-theme #docs-scroll-hash-nav a.nav-link:hover {
    color: #ffffff !important;
    background-color: #4a9eff !important;
}

body.dark-theme .side-bar .nav-link,
.dark-theme .side-bar .nav-link,
body.dark-theme .side-bar a.nav-link,
.dark-theme .side-bar a.nav-link,
body.dark-theme .navbar-nav .nav-link,
.dark-theme .navbar-nav .nav-link,
body.dark-theme .nav-pills .nav-link,
.dark-theme .nav-pills .nav-link,
body.dark-theme .navbar-nav.nav-pills .nav-link,
.dark-theme .navbar-nav.nav-pills .nav-link,
body.dark-theme .nav-pills > .nav-item > .nav-link,
.dark-theme .nav-pills > .nav-item > .nav-link,
body.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link,
.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link,
body.dark-theme li.nav-item > a.nav-link,
.dark-theme li.nav-item > a.nav-link {
    color: #333333 !important; /* 深色文字，在淺色背景上可見 */
    background-color: transparent !important;
    text-decoration: none !important;
}

body.dark-theme .side-bar .nav-link.active,
body.dark-theme .side-bar .nav-link:hover,
.dark-theme .side-bar .nav-link.active,
.dark-theme .side-bar .nav-link:hover,
body.dark-theme .side-bar a.nav-link.active,
body.dark-theme .side-bar a.nav-link:hover,
.dark-theme .side-bar a.nav-link.active,
.dark-theme .side-bar a.nav-link:hover,
body.dark-theme .nav-pills .nav-link.active,
body.dark-theme .nav-pills .nav-link:hover,
.dark-theme .nav-pills .nav-link.active,
.dark-theme .nav-pills .nav-link:hover,
body.dark-theme .nav-pills > .nav-item > .nav-link.active,
body.dark-theme .nav-pills > .nav-item > .nav-link:hover,
.dark-theme .nav-pills > .nav-item > .nav-link.active,
.dark-theme .nav-pills > .nav-item > .nav-link:hover,
body.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link.active,
body.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link:hover,
.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link.active,
.dark-theme .navbar-nav.nav-pills > .nav-item > .nav-link:hover,
body.dark-theme li.nav-item > a.nav-link.active,
body.dark-theme li.nav-item > a.nav-link:hover,
.dark-theme li.nav-item > a.nav-link.active,
.dark-theme li.nav-item > a.nav-link:hover {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* 主要內容區域 */
body.dark-theme .org-split-right,
.dark-theme .org-split-right {
    background-color: var(--dark-bg-primary) !important;
    color: var(--dark-text-primary) !important;
}

body.dark-theme .docs-lca-detail,
.dark-theme .docs-lca-detail {
    color: var(--dark-text-primary) !important;
}

/* 表格樣式 */
body.dark-theme .docs-table,
.dark-theme .docs-table {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .docs-table th,
body.dark-theme .docs-table td,
.dark-theme .docs-table th,
.dark-theme .docs-table td {
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .certification_table_header,
.dark-theme .certification_table_header {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* 標籤和文字 */
body.dark-theme .org-split-right label,
.dark-theme .org-split-right label {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .org-split-right span,
.dark-theme .org-split-right span {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .sheetheader,
.dark-theme .sheetheader {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

body.dark-theme .sheetheader-label,
.dark-theme .sheetheader-label {
    color: var(--dark-text-primary) !important;
}

body.dark-theme .sheetheader-text,
.dark-theme .sheetheader-text {
    color: var(--dark-text-primary) !important;
}

/* 超連結 */
body.dark-theme .org-split-right a,
.dark-theme .org-split-right a {
    color: var(--dark-accent) !important;
}

body.dark-theme .org-split-right a:hover,
.dark-theme .org-split-right a:hover {
    color: var(--dark-accent-hover) !important;
}

/* 輸入框 */
body.dark-theme .org-split-right input[type="text"],
body.dark-theme .org-split-right input[type="date"],
.dark-theme .org-split-right input[type="text"],
.dark-theme .org-split-right input[type="date"] {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

/* 按鈕樣式 */
body.dark-theme .docs-btn-blue,
.dark-theme .docs-btn-blue {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .docs-btn-blue:hover,
.dark-theme .docs-btn-blue:hover {
    background-color: var(--dark-accent-hover) !important;
}

/* H4 標題 */
body.dark-theme .org-split-right h4,
.dark-theme .org-split-right h4 {
    color: var(--dark-text-primary) !important;
}


/* 分頁器 Pagination */
body.dark-theme .pagination > li > a,
body.dark-theme .pagination > li > span,
.dark-theme .pagination > li > a,
.dark-theme .pagination > li > span {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .pagination > li > a:hover,
.dark-theme .pagination > li > a:hover {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .pagination > .active > a,
body.dark-theme .pagination > .active > span,
.dark-theme .pagination > .active > a,
.dark-theme .pagination > .active > span {
    background-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-theme .pagination > .disabled > a,
body.dark-theme .pagination > .disabled > span,
.dark-theme .pagination > .disabled > a,
.dark-theme .pagination > .disabled > span {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-muted) !important;
    border-color: var(--dark-border) !important;
}

.dark-theme .navbar-light .navbar-nav .nav-link:hover {
    color: var(--dark-accent) !important;
}

/* 子導航欄暗色主題 */
.dark-theme .subnav_bg {
    background-color: var(--dark-bg-secondary) !important;
    border-bottom: 1px solid var(--dark-border);
}

.dark-theme .survey_form_order_wrap > a > div {
    color: var(--dark-text-secondary) !important;
}

.dark-theme .survey_form_order_wrap > a > div:hover {
    color: var(--dark-accent) !important;
}

.dark-theme .nav-active {
    color: var(--dark-accent) !important;
}

/* 主內容區域暗色主題 */
.dark-theme .survey_form_body_wrap {
    background-color: var(--dark-bg-primary) !important;
}

.dark-theme .survey_form_body {
    background-color: var(--dark-bg-primary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .survey_form_header_wrap {
    background: var(--dark-bg-secondary) !important;
    border-bottom: 1px solid var(--dark-border);
}

.dark-theme .survey_form_menu {
    background-color: var(--dark-bg-secondary) !important;
}

/* 表格暗色主題 */
.dark-theme .table {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .table_header {
    background: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
    border-bottom: 1px solid var(--dark-border);
}

.dark-theme .table_text, 
.dark-theme .table_email, 
.dark-theme .table_download, 
.dark-theme .table_link, 
.dark-theme .table_select, 
.dark-theme .table_reply, 
.dark-theme .table_upload, 
.dark-theme .table_enforce, 
.dark-theme .table_edit, 
.dark-theme .table_formula {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-bottom: 1px solid var(--dark-border-light);
}

.dark-theme .table_text input, 
.dark-theme .table_email input {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .table_text input:focus, 
.dark-theme .table_email input:focus {
    border-color: var(--dark-accent) !important;
    box-shadow: 0 0 5px var(--dark-accent) !important;
}

/* 表格行懸停效果（排除有內聯樣式的 tr 以及特殊表格） */
.dark-theme tbody > tr:not([style*="background"]):hover {
    background-color: var(--dark-bg-tertiary) !important;
}

.dark-theme tbody > tr:not([style*="background"]):nth-child(even) {
    background-color: var(--dark-bg-secondary) !important;
}

.dark-theme tbody > tr:not([style*="background"]):nth-child(odd) {
    background-color: var(--dark-bg-primary) !important;
}

/* productLCAsummary 表格不套用斑馬條紋，保留原始背景色 */
.dark-theme #productLCAsummary tbody > tr:nth-child(even),
.dark-theme #productLCAsummary tbody > tr:nth-child(odd),
.dark-theme #productLCAsummary tbody > tr:hover {
    background-color: initial !important;
}

/* 表格邊框 */
.dark-theme .table th, 
.dark-theme .table td {
    border-color: var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .table tbody td {
    color: var(--dark-text-primary) !important;
}

/* 不套用主題樣式的通用 class */
.dark-theme .no-theme,
.dark-theme .no-theme *,
.dark-theme .alert,
.dark-theme .alert *,
.dark-theme .alert-success,
.dark-theme .alert-success *,
.dark-theme .alert-info,
.dark-theme .alert-info *,
.dark-theme .alert-warning,
.dark-theme .alert-warning *,
.dark-theme .alert-danger,
.dark-theme .alert-danger * {
    background-color: unset !important;
    background-image: unset !important;
    color: unset !important;
}

/* productLCAsummary 表格規則：若有指定字色底色，就不套用佈景主題 */
/* 只為沒有指定字色和底色的元素套用佈景主題文字顏色 */
.dark-theme #productLCAsummary td:not([style*="color"]):not([style*="background"]):not([style]),
.dark-theme #productLCAsummary th:not([style*="color"]):not([style*="background"]):not([style]) {
    color: var(--dark-text-primary) !important;
}

/* 表格標題行（只匹配沒有內聯樣式的） */
.dark-theme .table thead th:not([style*="background"]):not([style*="color"]) {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

/* productLCAsummary 的 thead th：只為沒有 style 的元素套用佈景主題文字顏色 */
.dark-theme #productLCAsummary thead th:not([style]) {
    color: var(--dark-text-primary) !important;
}

/* orgLCAsummary 表格規則：若 tr 有指定字色底色，其內的 td 不套用佈景主題 */
/* 斑馬條紋只套用到沒有 style 的 tr */
.dark-theme #orgLCAsummary tbody > tr:not([style]):nth-child(even) {
    background-color: var(--dark-bg-secondary) !important;
}

.dark-theme #orgLCAsummary tbody > tr:not([style]):nth-child(odd) {
    background-color: var(--dark-bg-primary) !important;
}

.dark-theme #orgLCAsummary tbody > tr:not([style]):hover {
    background-color: var(--dark-bg-tertiary) !important;
}

/* 只為沒有 style 的 tr 內的 td 套用佈景主題文字顏色 */
.dark-theme #orgLCAsummary tbody > tr:not([style]) td {
    color: var(--dark-text-primary) !important;
}

/* 表單元素暗色主題 */
.dark-theme input, 
.dark-theme textarea, 
.dark-theme select {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme input:focus, 
.dark-theme textarea:focus {
    border-color: var(--dark-accent) !important;
    box-shadow: 0 0 5px var(--dark-accent) !important;
}

.dark-theme select {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

/* 表單組標籤 */
.dark-theme .form-group label, 
.dark-theme .col-form-label {
    color: var(--dark-text-primary) !important;
}

/* 表單控制項 */
.dark-theme .form-control {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .form-control:focus {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-accent) !important;
    box-shadow: 0 0 5px var(--dark-accent) !important;
}

/* 輸入組 */
.dark-theme .input-group-text {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
    border: 1px solid var(--dark-border) !important;
}

/* 表單驗證 */
.dark-theme .form-control.is-valid {
    border-color: var(--dark-success) !important;
}

.dark-theme .form-control.is-invalid {
    border-color: var(--dark-danger) !important;
}

.dark-theme .valid-feedback {
    color: var(--dark-success) !important;
}

.dark-theme .invalid-feedback {
    color: var(--dark-danger) !important;
}

/* 複選框和單選按鈕 */
.dark-theme .form-check-input {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .form-check-input:checked {
    background-color: var(--dark-accent) !important;
    border-color: var(--dark-accent) !important;
}

.dark-theme .form-check-label {
    color: var(--dark-text-primary) !important;
}

/* 按鈕暗色主題 */
.dark-theme .btn {
    background: linear-gradient(to right, var(--dark-accent) 0%, var(--dark-accent-hover) 100%) !important;
    border: 1px solid var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .btn:hover {
    background: linear-gradient(to right, var(--dark-accent-hover) 0%, var(--dark-accent) 100%) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .survey_order_btn, 
.dark-theme .survey_order_btn_only, 
.dark-theme .header_button, 
.dark-theme .save_LCAInfo_btn {
    background: var(--dark-bg-secondary) !important;
    color: var(--dark-text-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .survey_order_btn:hover, 
.dark-theme .survey_order_btn_only:hover, 
.dark-theme .header_button:hover, 
.dark-theme .save_LCAInfo_btn:hover {
    background: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-accent) !important;
}

/* 側邊欄暗色主題 */
.dark-theme .side_bar {
    background-color: var(--dark-bg-secondary) !important;
    border-right: 1px solid var(--dark-border);
}

.dark-theme .side_bar_right_vertical_line > div {
    background: var(--dark-border) !important;
}

.dark-theme a.Item div {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-secondary) !important;
}

.dark-theme a.Item:hover div {
    background: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme a.Item_Active div {
    background: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* 頁腳暗色主題 */
.dark-theme .copyright_wrap {
    background: var(--dark-bg-secondary) !important;
    color: var(--dark-text-secondary) !important;
    border-top: 1px solid var(--dark-border);
}

.dark-theme .copyright {
    color: var(--dark-text-secondary) !important;
}

/* 彈出框暗色主題 */
.dark-theme .select_simapro_wrap {
    background: var(--dark-bg-secondary) !important;
    border: 2px solid var(--dark-border) !important;
}

.dark-theme .select_simapro_left {
    background: var(--dark-bg-tertiary) !important;
}

.dark-theme .select_simapro_right {
    background: var(--dark-bg-secondary) !important;
}

.dark-theme .simapro_done {
    background: var(--dark-bg-tertiary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

/* 工具提示暗色主題 */
.dark-theme .tooltip > div:first-child {
    background: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .tooltip > div:first-child + div {
    border-top-color: var(--dark-bg-tertiary) !important;
}

/* 評論框暗色主題 */
.dark-theme .comment_wrap {
    background: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .comment {
    background: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .comment_hint {
    background: var(--dark-danger) !important;
    color: var(--dark-text-primary) !important;
}

/* 表單標籤暗色主題 */
.dark-theme label > p {
    color: var(--dark-text-primary) !important;
}

.dark-theme label > p.active {
    color: var(--dark-accent) !important;
}

/* 分頁暗色主題 */
.dark-theme .page_item {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .page_item.current, 
.dark-theme .page_item:hover {
    background: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* 標籤頁暗色主題 */
.dark-theme .tab {
    color: var(--dark-text-secondary) !important;
}

.dark-theme .active .tab {
    color: var(--dark-text-primary) !important;
}

.dark-theme .content_bg {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

/* 標題暗色主題 */
.dark-theme .title, 
.dark-theme .add_survey_header_title {
    color: var(--dark-accent) !important;
}

/* 鏈接暗色主題 */
.dark-theme a {
    color: var(--dark-text-primary) !important;
}

.dark-theme a:hover {
    color: var(--dark-accent) !important;
}

.dark-theme .inline_link {
    color: var(--dark-text-secondary) !important;
}

.dark-theme .inline_link:hover {
    color: var(--dark-accent) !important;
}

/* 輸入框佔位符暗色主題 */
.dark-theme ::-webkit-input-placeholder {
    color: var(--dark-text-muted) !important;
}

.dark-theme :-moz-placeholder {
    color: var(--dark-text-muted) !important;
    opacity: 1;
}

.dark-theme ::-moz-placeholder {
    color: var(--dark-text-muted) !important;
    opacity: 1;
}

.dark-theme :-ms-input-placeholder {
    color: var(--dark-text-muted) !important;
}

/* 錯誤狀態暗色主題 */
.dark-theme .error {
    border-color: var(--dark-danger) !important;
    box-shadow: 0 0 0 1px var(--dark-danger) !important;
}

/* 選中狀態暗色主題 */
.dark-theme tbody > .survey_order_table_row:hover {
    background: var(--dark-bg-tertiary) !important;
}

.dark-theme tbody > .survey_order_table_row.selected {
    background: var(--dark-bg-tertiary) !important;
}

/* 狀態標籤暗色主題 */
.dark-theme .label-inAnalyze {
    background-color: #8b5cf6 !important;
}

.dark-theme .label-inProgress {
    background-color: #3b82f6 !important;
}

.dark-theme .label-unSigned {
    background-color: #f59e0b !important;
}

.dark-theme .label-rejected {
    background-color: #6b7280 !important;
}

.dark-theme .label-signed {
    background-color: #10b981 !important;
}

.dark-theme .label-completed {
    background-color: #059669 !important;
}

/* 文化選擇面板暗色主題 */
.dark-theme .culture_panel {
    background: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
}

.dark-theme .culture_panel ul li {
    color: var(--dark-text-primary) !important;
}

/* 頁面頂部裝飾線暗色主題 */
.dark-theme .page_top_wrap > div:first-child {
    background: var(--dark-border) !important;
}

.dark-theme .page_top_wrap > div:first-child + div {
    background: var(--dark-border-light) !important;
}

.dark-theme .page_top_wrap > div:first-child + div + div {
    background: var(--dark-text-muted) !important;
}

/* 表單分割線暗色主題 */
.dark-theme .form_split_line {
    background: var(--dark-border) !important;
}

/* 單位標籤暗色主題 */
.dark-theme .unit {
    color: var(--dark-text-secondary) !important;
}

/* 頁面切換按鈕暗色主題 */
.dark-theme .page_change > div {
    background-color: var(--dark-bg-secondary) !important;
}

/* 響應式調整 */
@media screen and (max-width: 768px) {
    .dark-theme .survey_form_body_wrap {
        margin: 10px 0px;
    }
    
    .dark-theme .survey_form_body {
        padding: 8px 4px 8px 8px;
    }
}

/* 滾動條暗色主題 */
.dark-theme ::-webkit-scrollbar {
    width: 8px;
}

.dark-theme ::-webkit-scrollbar-track {
    background: var(--dark-bg-primary);
}

.dark-theme ::-webkit-scrollbar-thumb {
    background: var(--dark-bg-tertiary);
    border-radius: 4px;
}

.dark-theme ::-webkit-scrollbar-thumb:hover {
    background: var(--dark-border);
}

/* 下拉選單暗色主題 */
.dark-theme .dropdown-menu {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
    box-shadow: 0 4px 8px var(--dark-shadow) !important;
}

.dark-theme .dropdown-item {
    color: var(--dark-text-primary) !important;
}

.dark-theme .dropdown-item:hover, 
.dark-theme .dropdown-item:focus {
    background-color: var(--dark-bg-tertiary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .dropdown-divider {
    border-color: var(--dark-border) !important;
}

/* 模態框暗色主題 */
.dark-theme .modal-content {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .modal-content label,
.dark-theme .modal-content .col-form-label,
.dark-theme .modal-content .row label {
    color: var(--dark-text-primary) !important;
}

.dark-theme .modal-content div,
.dark-theme .modal-content span {
    color: var(--dark-text-primary) !important;
}

/* 表單區域暗色主題 */
.dark-theme form,
.dark-theme table-edit-modal,
.dark-theme .edit_form {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .edit_form label,
.dark-theme .edit_form .col-form-label {
    color: var(--dark-text-primary) !important;
}

.dark-theme .modal-header {
    border-bottom: 1px solid var(--dark-border) !important;
}

.dark-theme .modal-footer {
    border-top: 1px solid var(--dark-border) !important;
}

.dark-theme .modal-title {
    color: var(--dark-text-primary) !important;
}

/* 警告框暗色主題 */
.dark-theme .alert {
    background-color: var(--dark-bg-tertiary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .alert-success {
    background-color: rgba(40, 167, 69, 0.2) !important;
    border-color: var(--dark-success) !important;
    color: #90ee90 !important;
}

.dark-theme .alert-warning {
    background-color: rgba(255, 193, 7, 0.2) !important;
    border-color: var(--dark-warning) !important;
    color: #ffeb3b !important;
}

.dark-theme .alert-danger {
    background-color: rgba(220, 53, 69, 0.2) !important;
    border-color: var(--dark-danger) !important;
    color: #ff6b6b !important;
}

.dark-theme .alert-info {
    background-color: rgba(74, 158, 255, 0.2) !important;
    border-color: var(--dark-accent) !important;
    color: #81d4fa !important;
}

/* 進度條暗色主題 */
.dark-theme .progress {
    background-color: var(--dark-bg-tertiary) !important;
}

.dark-theme .progress-bar {
    background-color: var(--dark-accent) !important;
}

/* 卡片暗色主題 */
.dark-theme .card {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .card-header {
    background-color: var(--dark-bg-tertiary) !important;
    border-bottom: 1px solid var(--dark-border) !important;
}

.dark-theme .card-footer {
    background-color: var(--dark-bg-tertiary) !important;
    border-top: 1px solid var(--dark-border) !important;
}

.dark-theme .card-title {
    color: var(--dark-text-primary) !important;
}

/* 列表組暗色主題 */
.dark-theme .list-group-item {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .list-group-item:hover {
    background-color: var(--dark-bg-tertiary) !important;
}

.dark-theme .list-group-item.active {
    background-color: var(--dark-accent) !important;
    border-color: var(--dark-accent) !important;
}

/* 分頁暗色主題增強 */
.dark-theme .pagination .page-link {
    background-color: var(--dark-bg-secondary) !important;
    border: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .pagination .page-link:hover {
    background-color: var(--dark-bg-tertiary) !important;
    border-color: var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .pagination .page-item.active .page-link {
    background-color: var(--dark-accent) !important;
    border-color: var(--dark-accent) !important;
    color: var(--dark-text-primary) !important;
}

/* 導航標籤暗色主題 */
.dark-theme .nav-tabs {
    border-bottom: 1px solid var(--dark-border) !important;
}

.dark-theme .nav-tabs .nav-link {
    color: var(--dark-text-secondary) !important;
    border: 1px solid transparent !important;
}

.dark-theme .nav-tabs .nav-link:hover {
    border-color: var(--dark-border) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .nav-tabs .nav-link.active {
    background-color: var(--dark-bg-secondary) !important;
    border-color: var(--dark-border) var(--dark-border) var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
}

.dark-theme .nav-tabs .nav-link.active:hover {
    border-color: var(--dark-border) var(--dark-border) var(--dark-bg-secondary) !important;
}
