        :root {
            --ad11-bg: #f5f2eb;
            --ad11-paper: #fcfbf8;
            --ad11-line: #d8d0c2;
            --ad11-text: #2b251f;
            --ad11-soft: #7b6f61;
            --ad11-main: #3a3026;
        }

        #news_detail {
            background: linear-gradient(180deg, #f7f4ee 0%, #f4efe6 42%, #f5f2eb 100%);
            color: var(--ad11-text);
            /*
             * 頂部留白須對齊實際 fixed 導覽高度。
             * --height-nav-md 為 7.7vw，但 in_nav_2 的 .header 另有 min-height: --height-nav-mini-md（64px），
             * 平板／窄桌機常出現 7.7vw < 64px，若僅用 vw 預留會被導覽遮住。
             */
            padding-top: var(--height-nav-xs);
            padding-bottom: 50px;
        }

        @media (min-width: 740px) {
            #news_detail {
                padding-top: max(var(--height-nav-md), var(--height-nav-mini-md));
            }
        }

        @media (min-width: 980px) {
            body.countdown_show #news_detail {
                padding-top: calc(max(var(--height-nav-md), var(--height-nav-mini-md)) + var(--height-countdown-lg));
            }
        }

        /*
         * 有圖 banner 時 inpage_v2 的 .banner 另有 margin-top；#news_detail 已預留導覽高度時需抵消，避免雙重留白。
         * 用「第一個 section + style 不含 display:none」判斷，勿用 :has(.banner)（隱藏區塊仍含 .banner 節點）。
         */
        #news_detail > section.inpage:first-of-type:not([style*="display:none"]):not([style*="display: none"]) > .banner {
            margin-top: 0 !important;
        }

        #news_detail > section.banner:first-of-type:not([style*="display:none"]):not([style*="display: none"]) {
            margin-top: 0 !important;
        }

        /* 版心與 article11.html #news_list .container_inside 完全一致 */
        #news_detail *,
        #news_detail *::before,
        #news_detail *::after {
            box-sizing: border-box;
        }

        #news_detail .news_fix_container {
            width: min(1320px, 100% - 56px);
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
            padding-left: 0 !important;
            padding-right: 0 !important;
        }

        /* article_detail11：覆寫舊版 article_detail.css 疊位寬度，改為穩定雙欄 */
        #news_detail .news_fix_container.article {
            display: grid !important;
            grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
            gap: 22px;
            align-items: start;
        }

        #news_detail .news_fix_container .left_area,
        #news_detail .news_fix_container .right_area {
            border-radius: var(--radius-11);
        }

        #news_detail .news_fix_container.article .left_area {
            margin: 0 !important;
            width: auto !important;
            position: static !important;
            top: auto !important;
            order: 1;
            align-self: start;
            z-index: 1;
            border: 0;
            background: transparent;
            box-shadow: none;
            padding: 0;
        }

        /* left_area 內容排版整理 */
        #news_detail .news_fix_container.article .left_area > * + * {
            margin-top: 18px;
        }

        /* 由 JS 依 .news_edit 內 h2 自動生成的目錄 */
        #news_detail .news_fix_container .right_area .news_edit .ad11-toc {
            border: 1px solid rgba(216, 208, 194, 0.78);
            border-radius: var(--radius-11);
            background: rgba(255, 255, 255, 0.62);
            padding: 12px 12px 14px;
            margin: 0 0 18px;
            display: inline-block;
            width: fit-content;
            max-width: 100%;
        }

        #news_detail .news_fix_container .right_area .news_edit .ad11-toc[hidden] {
            display: none !important;
        }

        #news_detail .ad11-toc__title {
            margin: 0 0 10px;
            padding-bottom: 10px;
            border-bottom: 1px solid rgba(216, 208, 194, 0.75);
            font-size: clamp(18px, 1.4vw, 22px) !important;
            line-height: 1.25 !important;
            letter-spacing: -0.01em;
            color: #2a211a;
        }

        #news_detail .ad11-toc__list {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        #news_detail .ad11-toc__list li {
            margin-top: 8px;
        }

        #news_detail .ad11-toc__list li:first-child {
            margin-top: 0;
        }

        #news_detail .ad11-toc__list > li > a {
            font-size: 15px;
            font-weight: 700;
        }

        #news_detail .ad11-toc__list a {
            font-size: 14px;
            line-height: 1.45;
            font-weight: 600;
            color: var(--ad11-main);
            text-decoration: none;
            display: block;
            word-break: break-word;
        }

        #news_detail .ad11-toc__list a:hover {
            text-decoration: underline;
        }

        #news_detail .ad11-toc__sublist {
            list-style: none;
            margin: 8px 0 0;
            padding: 0 0 0 14px;
            border-left: 1px dashed rgba(58, 48, 38, 0.2);
        }

        #news_detail .ad11-toc__sublist li {
            margin-top: 6px;
        }

        #news_detail .ad11-toc__sublist a {
            font-size: 13px;
            font-weight: 500;
            color: #6f6358;
        }

        /* 錨點捲動時避開 fixed 頂列 */
        #news_detail .news_edit h2[id],
        #news_detail .news_edit h3[id] {
            scroll-margin-top: calc(var(--height-nav-xs) + 16px);
        }

        @media (min-width: 740px) {
            #news_detail .news_edit h2[id],
            #news_detail .news_edit h3[id] {
                scroll-margin-top: calc(max(var(--height-nav-md), var(--height-nav-mini-md)) + 16px);
            }
        }

        @media (min-width: 980px) {
            body.countdown_show #news_detail .news_edit h2[id],
            body.countdown_show #news_detail .news_edit h3[id] {
                scroll-margin-top: calc(max(var(--height-nav-md), var(--height-nav-mini-md)) + var(--height-countdown-lg) + 16px);
            }
        }

        /* 區塊 1：檔案下載（獨立一塊） */
        #news_detail .news_fix_container.article .left_area .pd_download {
            border: 1px solid rgba(216, 208, 194, 0.78);
            border-radius: var(--radius-11);
            background: rgba(255, 255, 255, 0.62);
            padding: 12px 12px 10px;
        }

        #news_detail .news_fix_container.article .left_area .section_title.fz-B {
            margin: 0 0 10px;
            padding-bottom: 10px;
            border-bottom: 1px solid rgba(216, 208, 194, 0.75);
            font-size: clamp(20px, 1.6vw, 24px) !important;
            line-height: 1.25 !important;
            letter-spacing: -0.01em;
            color: #2a211a;
        }

        #news_detail .news_fix_container.article .left_area .pd_download .item {
            padding: 12px 0 14px;
            border-bottom: 0;
        }

        #news_detail .news_fix_container.article .left_area .pd_download .item:not(:last-child) {
            border-bottom: 1px solid rgba(216, 208, 194, 0.65);
        }

        #news_detail .news_fix_container.article .left_area .pd_download .item .name {
            font-size: 14px;
            line-height: 1.45;
            font-weight: 600;
            color: var(--ad11-text);
        }

        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap {
            margin-top: 10px;
            gap: 10px;
        }

        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap a {
            width: 28px;
            height: 28px;
            border: 0;
            border-radius: 0;
            background: transparent;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            transition: opacity 0.2s ease, transform 0.2s ease;
        }

        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap a:hover {
            opacity: 0.82;
            transform: translateY(-1px);
        }

        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap a span {
            width: 16px;
            height: 20px;
            background: none !important;
            border: 1.8px solid #5c5247;
            position: relative;
            display: block;
            box-sizing: border-box;
        }

        /* 更像檔案的圖示：右上折角 */
        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap a span::before {
            content: "";
            position: absolute;
            top: -1px;
            right: -1px;
            width: 6px;
            height: 6px;
            background: #fcfbf8;
            border-left: 1.8px solid #5c5247;
            border-bottom: 1.8px solid #5c5247;
            transform: rotate(45deg) translate(1px, -1px);
            transform-origin: top right;
        }

        /* 檔案內文線條 */
        #news_detail .news_fix_container.article .left_area .pd_download .download_item_wrap a span::after {
            content: "";
            position: absolute;
            left: 3px;
            right: 3px;
            top: 7px;
            height: 1.4px;
            background: #5c5247;
            box-shadow: 0 4px 0 #5c5247, 0 8px 0 #5c5247;
            opacity: 0.75;
        }

        #news_detail .news_fix_container.article .left_area .block {
            display: block;
            width: 100%;
            text-decoration: none;
            color: inherit;
            padding: 12px 10px 14px;
            border: 1px solid rgba(216, 208, 194, 0.78);
            border-radius: var(--radius-11);
            background: rgba(255, 255, 255, 0.62);
            margin-top: 10px !important;
            transition: background-color 0.2s ease, box-shadow 0.2s ease;
        }

        /* 區塊 2：上一則/下一則（分成兩張可辨識卡片） */
        #news_detail .news_fix_container.article .left_area .pd_download + .block {
            margin-top: 18px !important;
        }

        #news_detail .news_fix_container.article .left_area .block + .block {
            margin-top: 12px !important;
        }

        #news_detail .news_fix_container.article .left_area .block:hover {
            background: rgba(252, 251, 248, 0.85);
            box-shadow: 0 8px 18px rgba(58, 48, 38, 0.06);
        }

        #news_detail .news_fix_container.article .left_area .block .content_container {
            margin: 0;
            border: 0;
            background: transparent;
            padding: 0;
        }

        #news_detail .news_fix_container.article .left_area .block .content_box {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            padding: 0;
        }

        #news_detail .news_fix_container.article .left_area .block .content_box + .content_box {
            margin-top: 8px;
            padding-top: 8px;
            border-top: 1px solid rgba(216, 208, 194, 0.55);
        }

        #news_detail .news_fix_container.article .left_area .block .title {
            padding-left: 0;
            color: var(--ad11-soft);
            font-size: 12px;
            line-height: 1.5;
        }

        /* 左欄標題不可大於文章主標題 */
        #news_detail .news_fix_container.article .left_area .block .content_box .fz-B {
            margin: 0;
            font-size: clamp(18px, 1.45vw, 22px) !important;
            line-height: 1.28 !important;
            color: #2a211a;
        }

        #news_detail .news_fix_container.article .left_area .block .content_box .fz-C {
            font-size: 13px;
            font-weight: 600;
            color: var(--ad11-soft);
        }

        #news_detail .news_fix_container.article .left_area.fixed,
        #news_detail .news_fix_container.article .left_area.fixed.bottom,
        #news_detail .news_fix_container.article .left_area.none,
        #news_detail .news_fix_container.article .left_area.none.fixed,
        #news_detail .news_fix_container.article .left_area.none.fixed.bottom {
            position: static !important;
            top: auto !important;
            bottom: auto !important;
            margin-top: 0 !important;
        }

        /* 沒有檔案下載與上下則時（left_area = none）：隱藏左欄，右欄滿版 */
        #news_detail .news_fix_container.article .left_area.none {
            display: none !important;
        }

        #news_detail .news_fix_container.article .left_area.none + .right_area {
            grid-column: 1 / -1;
            width: 100% !important;
            max-width: 100% !important;
        }

        #news_detail .news_fix_container.article .right_area {
            margin: 0 !important;
            width: auto !important;
            min-width: 0 !important;
            order: 2;
            padding: clamp(14px, 1.5vw, 20px);
            position: relative;
            z-index: 2;
        }

        #news_detail .news_fix_container .right_area {
            border: 0;
            background: transparent;
            box-shadow: none;
            overflow: hidden;
        }

        #news_detail .news_fix_container.article .right_area .news_title {
            margin-bottom: 18px;
            padding-bottom: 14px;
            border-bottom: 1px solid rgba(216, 208, 194, 0.75);
        }

        #news_detail .news_fix_container.article .right_area .news_title .item {
            width: 100% !important;
            display: block;
        }

        #news_detail .news_fix_container.article .right_area .news_title .item .fz-A {
            width: 100% !important;
        }

        #news_detail .news_fix_container.article .right_area .news_title .item .text_container {
            position: static !important;
            width: 100% !important;
            margin-top: 8px;
        }

        #news_detail .news_fix_container .right_area .news_title h1 {
            letter-spacing: -0.03em;
            color: #2a211a;
        }

        #news_detail .news_fix_container .right_area .news_edit {
            color: var(--ad11-text);
        }

        /* 文章內容圖超過區塊時自動縮至容器寬 */
        #news_detail .news_fix_container .right_area .news_edit img {
            max-width: 100% !important;
            height: auto !important;
        }

        /* 避免上下則文字被全域 right:-20% 推擠到文章欄 */
        #news_detail .news_fix_container.article .left_area .content_box .fz-C {
            right: auto !important;
            position: static !important;
            margin-left: auto;
            white-space: nowrap;
        }

        /* article_detail11 移除 icon（標題資訊、上下則） */
        #news_detail .news_fix_container .icon {
            display: none !important;
        }

        #news_detail .btn-back {
            border-radius: var(--radius-11);
        }

        @media (max-width: 1024px) {
            #news_detail .news_fix_container {
                width: min(1320px, 100% - 26px);
                max-width: 100%;
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

            #news_detail .news_fix_container.article {
                grid-template-columns: 1fr;
                gap: 18px;
            }

            #news_detail .news_fix_container.article .left_area {
                order: 2;
            }

            #news_detail .news_fix_container.article .right_area {
                order: 1;
                padding: 14px;
            }
        }

        @media (max-width: 640px) {
            #news_detail .news_fix_container {
                width: min(1320px, 100% - 18px);
                max-width: 100%;
                padding-left: 0 !important;
                padding-right: 0 !important;
            }
        }
