/* =========================================================
   TNUA ANI - AA Accessibility Final CSS
   統一焦點/accesskey/skip link/keyboard navigation
========================================================= */:root { --aa-focus-color: #d60000; --aa-focus-radius: 6px; --aa-header-offset: 120px; }
/* ================= 基本設定 ================= */
html { font-size: 100%; scroll-padding-top: var(--aa-header-offset); }
body { font-size: 1rem; line-height: 1.6; }
:target,[id] { scroll-margin-top: var(--aa-header-offset); }
/* ================= 清除舊 focus ================= */
a:focus,button:focus,input:focus,select:focus,textarea:focus,summary:focus,[tabindex]:focus,[role="button"]:focus { outline: none !important; box-shadow: none !important; }
/* ================= 統一焦點樣式 ================= */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,[role="button"]:focus-visible { outline: 3px solid var(--aa-focus-color) !important; outline-offset: 3px !important; border-radius: var(--aa-focus-radius) !important; box-shadow: none !important; }
/* 滑鼠點擊不顯示 */
a:focus:not(:focus-visible),button:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible),summary:focus:not(:focus-visible),[tabindex]:focus:not(:focus-visible),[role="button"]:focus:not(:focus-visible) { outline: none !important; box-shadow: none !important; }
/* ================= accesskey ================= */
.accesskey { position: absolute; left: -9999px; top: 0; z-index: 99999; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 12px; background: #fff; color: #d60000; border: 3px solid #d60000; border-radius: var(--aa-focus-radius); font-size: 1rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.accesskey:focus,.accesskey:focus-visible { position: fixed !important; left: 12px !important; top: 12px !important; outline: 3px solid var(--aa-focus-color) !important; }
/* ================= skip link ================= */
.skip-links,.skip-link,.header-skip-link { position: absolute; z-index: 99999; }
.skip-links a,.skip-link,.header-skip-link { position: absolute; left: -9999px; top: 0; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; background: #fff; color: #d60000; border: 3px solid #d60000; border-radius: var(--aa-focus-radius); font-size: 1rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.skip-links a:focus,.skip-links a:focus-visible,.skip-link:focus,.skip-link:focus-visible,.header-skip-link:focus,.header-skip-link:focus-visible { position: fixed !important; left: 12px !important; top: 12px !important; }
/* ================= 防止被 header 遮住 ================= */
#top-navigation,#main-content,#content_wrap,#wrap,#webmenu,#menuBox,#footer-info,#accesskey-u,#accesskey-c,#accesskey-n,#accesskey-h { scroll-margin-top: var(--aa-header-offset); }
/* ================= SR only ================= */
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
/* ================= Menu keyboard ================= */
.menu_box li .menu_body { display: none; opacity: 0; visibility: hidden; pointer-events: none; }
.menu_box li.is-open > .menu_body,.menu_box li:hover > .menu_body,.menu_box li:focus-within > .menu_body { display: block; opacity: 1; visibility: visible; pointer-events: auto; }
/* ================= mobile menu ================= */
#menuBox[data-type="1"] { pointer-events: none; }
#menuBox[data-type="2"] { display: block !important; visibility: visible !important; pointer-events: auto !important; }
#menuBox[data-type="2"] .box { overflow-y: auto; }
/* ================= slick 修正 ================= */
.slick-cloned[aria-hidden="true"] a,.slick-cloned[aria-hidden="true"] button { pointer-events: none !important; }
/* ================= prefers-reduced-motion ================= */
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* skip links：平時移出畫面，不顯示框線 */
.skip-links { position: absolute; left: 0; top: 0; z-index: 99999; }
.skip-links a { position: absolute; left: -9999px; top: 0; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; background: #fff; color: #d60000; border: 0 !important; border-radius: 6px; font-size: 1rem; font-weight: 700; line-height: 1.5; text-decoration: none; white-space: nowrap; box-shadow: none !important; }
/* focus 時只顯示一個紅色外框 */
.skip-links a:focus,.skip-links a:focus-visible { position: fixed !important; left: 12px !important; top: 12px !important; background: #fff !important; color: #d60000 !important; outline: 3px solid #d60000 !important; outline-offset: 3px !important; box-shadow: none !important; }
.accesskey { position: absolute; left: -9999px; top: 0; z-index: 99999; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 12px; background: #fff; color: #d60000; border: 0 !important; border-radius: 6px; font-size: 1rem; font-weight: 700; line-height: 1.5; text-decoration: none; white-space: nowrap; box-shadow: none !important; }
.accesskey:focus,.accesskey:focus-visible { position: fixed !important; left: 12px !important; top: 12px !important; background: #fff !important; color: #d60000 !important; outline: 3px solid #d60000 !important; outline-offset: 3px !important; box-shadow: none !important; }



/* =========================================================
   AA 修正：桌機主選單以 JS .is-open 狀態控制
   避免:focus-within 強制展開，造成 Enter 第一次不收合
========================================================= *//* 預設關閉 */
#webmenu .menu_box > ul > li.has-submenu > .menu_body { display: none !important; visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
/* 鍵盤操作展開 */
#webmenu .menu_box > ul > li.has-submenu.is-open > .menu_body { display: block !important; visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; }
/* 滑鼠 hover 展開，但不依賴 +/- */
#webmenu .menu_box > ul > li.has-submenu:hover:not(:focus-within) > .menu_body,#webmenu .menu_box > ul > li.has-submenu.hover-open > .menu_body { display: block !important; visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; }
/* 只有在沒有鍵盤展開、沒有 hover-open、也沒有滑鼠 hover 時才關閉 */
#webmenu .menu_box > ul > li.has-submenu:not(.is-open):not(.hover-open):not(:hover) > .menu_body { display: none !important; visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }
/* =========================================================
   AA 修正：桌機主選單展開按鈕只在鍵盤操作時顯示
   滑鼠 hover 不顯示 +/-
========================================================= */
/* 預設隱藏桌機主選單的 +/- 按鈕 */
#webmenu .menu_box > ul > li.has-submenu > p .menu-toggle,#webmenu .menu_box > ul > li.has-submenu > .bo .menu-toggle { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; width: 0 !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; overflow: hidden !important; }
/* 滑鼠 hover 不顯示 +/-，除非是鍵盤模式 */
body:not(.is-keyboard-user) #webmenu .menu_box > ul > li.has-submenu:hover > p .menu-toggle,body:not(.is-keyboard-user) #webmenu .menu_box > ul > li.has-submenu:hover > .bo .menu-toggle { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; width: 0 !important; min-width: 0 !important; }
/* 只有鍵盤 Tab 操作時，focus-within 才顯示 +/- */
body.is-keyboard-user #webmenu .menu_box > ul > li.has-submenu:focus-within > p .menu-toggle,body.is-keyboard-user #webmenu .menu_box > ul > li.has-submenu:focus-within > .bo .menu-toggle { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; width: 34px !important; min-width: 34px !important; height: 34px !important; padding: 0 !important; border: 1px solid transparent !important; overflow: visible !important; }
/* 滑鼠 hover 不顯示 +/-，除非裡面真的有鍵盤焦點 */
#webmenu .menu_box > ul > li.has-submenu:hover:not(:focus-within) > p .menu-toggle,#webmenu .menu_box > ul > li.has-submenu:hover:not(:focus-within) > .bo .menu-toggle { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; width: 0 !important; min-width: 0 !important; }
