/* ============================================================
 *  PharmDecision v2 — 決策卡（decision type）v2.8.0
 *
 *  設計語言：森林 / 健康色系 + iOS「分組卡片」風格
 *    - 色票：亮綠 #17c64f、森林綠 #018440、Sacramento #154b3e、
 *            Onyx #2f473f、Off White #fbf7eb
 *    - 版面：卡片浮在米白底上，白卡＋大圓角＋柔和陰影，無左側色條。
 *            顏色語意收斂到「icon 色塊」與內部元件，不整片上色。
 *    - 每個區塊仍有各自的資訊處理方式（判定橫幅／統計磚／量表／
 *      名言卡／警示條／時間軸）。
 * ============================================================ */

.pd2-decision {
    --ink:      #17301f;
    --ink-soft: #5a6b60;
    --paper:    #fbf7eb;
    --surface:  #ffffff;
    --hair:     rgba(21, 75, 62, .10);
    --brand:    #17c64f;
    --forest:   #018440;
    --sacramento:#154b3e;
    --onyx:     #2f473f;

    box-sizing: border-box;
    max-width: 900px;
    margin: 0 auto;
    padding: clamp(16px, 3vw, 30px);
    background: var(--paper);
    border-radius: 26px;
    color: var(--ink);
    font-family: "Noto Sans TC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.72;
    font-size: 16px;
    -webkit-font-smoothing: antialiased;
}
.pd2-decision *, .pd2-decision *::before, .pd2-decision *::after { box-sizing: border-box; }

/* 語意色系（森林調，柔和不刺眼） */
.pd2-decision {
    --t-green-fg:#016b37;  --t-green-bg:#e7f4ec;  --t-green-bd:#cbe6d5;  --t-green-solid:#018440;
    --t-blue-fg:#1f6f5c;   --t-blue-bg:#e5f1ec;   --t-blue-bd:#c7e2d8;   --t-blue-solid:#2e7d6b;
    --t-neutral-fg:#2f473f;--t-neutral-bg:#edf1ee; --t-neutral-bd:#d8e1db; --t-neutral-solid:#2f473f;
    --t-red-fg:#a3372a;    --t-red-bg:#f7ebe7;    --t-red-bd:#eaccc3;    --t-red-solid:#b23b2e;
    --t-amber-fg:#8a5e12;  --t-amber-bg:#f6eeda;  --t-amber-bd:#e7d8ac;  --t-amber-solid:#b6851f;
    --t-gray-fg:#566158;   --t-gray-bg:#edf0ed;   --t-gray-bd:#dae1db;   --t-gray-solid:#566158;
    --t-purple-fg:#3f6f62; --t-purple-bg:#e8f1ed; --t-purple-bd:#cfe1da; --t-purple-solid:#4a7c6f;
}

/* ── Header ─────────────────────────────────── */
.pd2-decision__header { margin-bottom: 22px; }
.pd2-decision__title {
    font-size: clamp(24px, 4vw, 34px);
    font-weight: 800;
    line-height: 1.24;
    letter-spacing: -0.015em;
    margin: 0 0 18px;
    color: var(--sacramento);
}
.pd2-d-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 26px;
    padding: 18px 20px;
    background: var(--surface);
    border: 1px solid var(--hair);
    border-radius: 18px;
    box-shadow: 0 1px 2px rgba(21,75,62,.04);
}
.pd2-d-meta__row { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 3px 0; }
.pd2-d-meta__label { flex: 0 0 84px; font-size: 13px; font-weight: 600; color: var(--ink-soft); letter-spacing: .02em; }
.pd2-d-meta__value {
    font-size: 14px; font-weight: 600; padding: 3px 12px; border-radius: 999px;
    min-width: 0; overflow-wrap: anywhere;
}
.pd2-d-pill--plain  { background: #eef1ee; color: #4a544c; }
.pd2-d-pill--green  { background: var(--t-green-bg);  color: var(--t-green-fg); }
.pd2-d-pill--blue   { background: var(--t-blue-bg);   color: var(--t-blue-fg); }
.pd2-d-pill--amber  { background: var(--t-amber-bg);  color: var(--t-amber-fg); }
.pd2-d-pill--red    { background: var(--t-red-bg);    color: var(--t-red-fg); }
.pd2-d-pill--gray   { background: var(--t-gray-bg);   color: var(--t-gray-fg); }
.pd2-d-pill--purple { background: var(--t-purple-bg); color: var(--t-purple-fg); }

/* ── 區塊（iOS 分組卡：白卡、圓角、柔陰影、無左條）──── */
.pd2-decision__blocks { display: flex; flex-direction: column; gap: 16px; }

.pd2-d-block {
    --tone:      var(--t-neutral-solid);
    --tone-fg:   var(--t-neutral-fg);
    --tone-bg:   var(--t-neutral-bg);
    --tone-bd:   var(--t-neutral-bd);
    background: var(--surface);
    border: 1px solid var(--hair);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(21,75,62,.05), 0 12px 28px -18px rgba(21,75,62,.22);
}
.pd2-d-block--green   { --tone:var(--t-green-solid);  --tone-fg:var(--t-green-fg);  --tone-bg:var(--t-green-bg);  --tone-bd:var(--t-green-bd); }
.pd2-d-block--blue    { --tone:var(--t-blue-solid);   --tone-fg:var(--t-blue-fg);   --tone-bg:var(--t-blue-bg);   --tone-bd:var(--t-blue-bd); }
.pd2-d-block--neutral { --tone:var(--t-neutral-solid);--tone-fg:var(--t-neutral-fg);--tone-bg:var(--t-neutral-bg);--tone-bd:var(--t-neutral-bd); }
.pd2-d-block--red     { --tone:var(--t-red-solid);    --tone-fg:var(--t-red-fg);    --tone-bg:var(--t-red-bg);    --tone-bd:var(--t-red-bd); }
.pd2-d-block--amber   { --tone:var(--t-amber-solid);  --tone-fg:var(--t-amber-fg);  --tone-bg:var(--t-amber-bg);  --tone-bd:var(--t-amber-bd); }
.pd2-d-block--gray    { --tone:var(--t-gray-solid);   --tone-fg:var(--t-gray-fg);   --tone-bg:var(--t-gray-bg);   --tone-bd:var(--t-gray-bd); }
.pd2-d-block--purple  { --tone:var(--t-purple-solid); --tone-fg:var(--t-purple-fg); --tone-bg:var(--t-purple-bg); --tone-bd:var(--t-purple-bd); }

/* 標題列：白底 + app-icon 色塊 + 標題，底下細線 */
.pd2-d-block__head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px 14px;
    border-bottom: 1px solid var(--hair);
}
.pd2-d-block__icon {
    flex: 0 0 auto;
    width: 34px; height: 34px;
    border-radius: 10px;
    background: var(--tone-bg);
    color: var(--tone-fg);
    font-size: 18px;
    display: flex; align-items: center; justify-content: center;
    box-shadow: inset 0 0 0 1px var(--tone-bd);
}
.pd2-d-block__title { font-size: 17.5px; font-weight: 800; color: var(--ink); letter-spacing: -0.01em; }
.pd2-d-block__en {
    font-size: 12px; font-weight: 600; color: var(--ink-soft);
    opacity: .8; letter-spacing: .03em; margin-left: 2px; padding-top: 2px;
}
.pd2-d-block__body { padding: 18px 20px; }
.pd2-d-block__body > *:first-child { margin-top: 0; }
.pd2-d-block__body > *:last-child  { margin-bottom: 0; }

/* ── callout ───────────────────────────────── */
.pd2-d-callout {
    --c-fg:var(--t-neutral-fg); --c-bg:var(--t-neutral-bg); --c-bd:var(--t-neutral-bd);
    display: flex; gap: 11px; padding: 13px 15px; margin: 11px 0;
    background: var(--c-bg); border: 1px solid var(--c-bd); border-radius: 14px;
}
.pd2-d-callout--green   { --c-fg:var(--t-green-fg);  --c-bg:var(--t-green-bg);  --c-bd:var(--t-green-bd); }
.pd2-d-callout--blue    { --c-fg:var(--t-blue-fg);   --c-bg:var(--t-blue-bg);   --c-bd:var(--t-blue-bd); }
.pd2-d-callout--red     { --c-fg:var(--t-red-fg);    --c-bg:var(--t-red-bg);    --c-bd:var(--t-red-bd); }
.pd2-d-callout--amber   { --c-fg:var(--t-amber-fg);  --c-bg:var(--t-amber-bg);  --c-bd:var(--t-amber-bd); }
.pd2-d-callout--purple  { --c-fg:var(--t-purple-fg); --c-bg:var(--t-purple-bg); --c-bd:var(--t-purple-bd); }
.pd2-d-callout--neutral { --c-fg:var(--t-neutral-fg);--c-bg:var(--t-neutral-bg);--c-bd:var(--t-neutral-bd); }
.pd2-d-callout__icon { font-size: 17px; line-height: 1.5; flex: 0 0 auto; }
.pd2-d-callout__body { min-width: 0; font-size: 15.5px; }
.pd2-d-callout__lead { color: var(--c-fg); font-weight: 800; }
.pd2-d-callout__lead::after { content: "："; font-weight: 800; }
.pd2-d-callout__text { color: var(--ink); }

/* ── 子標籤 ────────────────────────────────── */
.pd2-d-sublabel {
    --s-fg:var(--t-neutral-fg);
    display: flex; align-items: center; gap: 8px;
    margin: 18px 0 10px; font-size: 15px; font-weight: 800; color: var(--s-fg);
}
.pd2-d-sublabel--green  { --s-fg:var(--t-green-fg); }
.pd2-d-sublabel--blue   { --s-fg:var(--t-blue-fg); }
.pd2-d-sublabel--red    { --s-fg:var(--t-red-fg); }
.pd2-d-sublabel--amber  { --s-fg:var(--t-amber-fg); }
.pd2-d-sublabel--purple { --s-fg:var(--t-purple-fg); }
.pd2-d-sublabel__icon { font-size: 15px; line-height: 1; }
.pd2-d-sublabel__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--s-fg); flex: 0 0 auto; }
.pd2-d-sublabel:first-child { margin-top: 0; }

/* ── 清單（flex 對齊，icon 不再飛掉）──────────── */
.pd2-d-list { list-style: none; margin: 12px 0; padding: 0; }
.pd2-d-li {
    display: flex; align-items: flex-start; gap: 9px;
    padding: 9px 0; font-size: 15.5px;
    border-bottom: 1px solid var(--hair);
}
.pd2-d-list > .pd2-d-li:last-child { border-bottom: none; }
/* 一般項目：小圓點 */
.pd2-d-li:not(.pd2-d-li--emoji)::before {
    content: ""; flex: 0 0 auto; width: 6px; height: 6px; border-radius: 50%;
    background: var(--tone, #7c8a84); opacity: .5; margin-top: 10px;
}
.pd2-d-li__emoji { flex: 0 0 auto; font-size: 15px; line-height: 1.7; }
.pd2-d-li__lead  { color: var(--tone-fg, var(--ink)); font-weight: 800; }
.pd2-d-li__lead::after { content: "："; }
.pd2-d-li__text  { color: var(--ink); }
.pd2-d-li__body  { min-width: 0; }

/* 編號清單 */
.pd2-d-ordered { margin: 12px 0; padding-left: 0; list-style: none; counter-reset: pd2d; }
.pd2-d-oli {
    counter-increment: pd2d; position: relative;
    padding: 8px 0 8px 40px; font-size: 15.5px;
    border-bottom: 1px solid var(--hair); min-height: 34px;
}
.pd2-d-ordered .pd2-d-oli:last-child { border-bottom: none; }
.pd2-d-oli::before {
    content: counter(pd2d); position: absolute; left: 0; top: 7px;
    width: 26px; height: 26px; background: var(--tone-bg, #e7f4ec);
    color: var(--tone-fg, var(--forest)); border-radius: 50%;
    font-weight: 800; font-size: 13px;
    display: flex; align-items: center; justify-content: center;
}

/* ── 情境標籤 chips ───────────────────────────── */
.pd2-d-tags { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.pd2-d-tag {
    display: inline-flex; align-items: stretch; border-radius: 999px; overflow: hidden;
    font-size: 13.5px; font-weight: 600; border: 1px solid var(--tone-bd, #dae1db);
}
.pd2-d-tag__k { background: var(--tone, #566158); color: #fff; padding: 5px 12px; }
.pd2-d-tag__v { background: var(--tone-bg, #edf0ed); color: var(--tone-fg, #566158); padding: 5px 13px; }

/* ── 證據 ribbon（fallback）──────────────────── */
.pd2-d-evidence {
    display: flex; align-items: flex-start; gap: 9px;
    margin: 6px 0 16px; padding: 11px 15px;
    background: var(--tone-bg, #edf1ee);
    border: 1px solid var(--tone-bd, #d8e1db);
    border-radius: 12px; font-size: 14.5px; font-weight: 600; color: var(--ink);
}
.pd2-d-evidence__icon { font-size: 16px; line-height: 1.4; }

/* ── 比較表 ────────────────────────────────── */
.pd2-d-table-wrap { margin: 14px 0; overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--hair); border-radius: 14px; }
.pd2-d-table { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 480px; }
.pd2-d-table th, .pd2-d-table td {
    padding: 11px 14px; text-align: left; vertical-align: top; line-height: 1.6;
    border-bottom: 1px solid var(--hair); border-right: 1px solid var(--hair);
}
.pd2-d-table th:last-child, .pd2-d-table td:last-child { border-right: none; }
.pd2-d-table thead th {
    background: var(--tone-bg, #edf1ee); color: var(--tone-fg, #2f473f);
    font-weight: 800; font-size: 14px; border-bottom: 2px solid var(--tone-bd, #d8e1db); white-space: nowrap;
}
.pd2-d-table tbody tr:last-child td { border-bottom: none; }
.pd2-d-table tbody tr:nth-child(even) td { background: #fbfcfb; }
.pd2-d-table__rowhead { font-weight: 700; color: var(--ink); background: #f6f8f6 !important; white-space: nowrap; }

/* ── 引言 ─────────────────────────────────── */
.pd2-d-quote {
    margin: 16px 0 4px; padding: 14px 18px;
    background: var(--tone-bg, #f6f8f6);
    border: 1px solid var(--tone-bd, #e2e8e4);
    border-radius: 14px; font-size: 15.5px;
}
.pd2-d-quote__lead { display: block; font-size: 12.5px; font-weight: 800; letter-spacing: .04em; color: var(--tone-fg, var(--ink-soft)); margin-bottom: 4px; }
.pd2-d-quote__text { color: var(--ink); }

/* ── 段落 ─────────────────────────────────── */
.pd2-d-para { margin: 10px 0; font-size: 15.5px; color: var(--ink); }
.pd2-d-para__lead { color: var(--tone-fg, var(--ink)); font-weight: 800; }
.pd2-d-empty { color: #9aa39e; font-size: 14px; font-style: italic; }

/* ============================================================
 *  儀表板元件
 * ============================================================ */

/* 判定橫幅 */
.pd2-d-verdict {
    display: flex; gap: 14px; align-items: flex-start;
    padding: 16px 18px; margin: 2px 0 16px;
    background: var(--t-green-bg); border: 1px solid var(--t-green-bd); border-radius: 16px;
}
.pd2-d-verdict__badge {
    flex: 0 0 auto; width: 40px; height: 40px; border-radius: 12px;
    background: var(--forest); color: #fff; font-size: 20px;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 10px -3px rgba(1,132,64,.5);
}
.pd2-d-verdict__body { min-width: 0; padding-top: 1px; }
.pd2-d-verdict__lead {
    display: block; font-size: 12px; font-weight: 800; letter-spacing: .06em;
    text-transform: uppercase; color: var(--t-green-fg); margin-bottom: 3px;
}
.pd2-d-verdict__text { font-size: 16px; font-weight: 600; line-height: 1.6; color: var(--sacramento); }

/* 統計磚 */
.pd2-d-statlabel { display: flex; align-items: center; gap: 6px; margin: 16px 0 10px; font-size: 14px; font-weight: 800; color: var(--t-blue-fg); }
.pd2-d-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin: 10px 0 4px; }
.pd2-d-stat {
    padding: 15px 16px; border: 1px solid var(--t-blue-bd); border-radius: 16px;
    background: var(--t-blue-bg);
}
.pd2-d-stat__subject { font-size: 13px; font-weight: 800; color: var(--t-blue-fg); margin-bottom: 4px; }
.pd2-d-stat__num {
    font-size: 34px; font-weight: 800; line-height: 1; color: var(--sacramento);
    font-family: Georgia, "Noto Serif TC", serif; letter-spacing: -0.01em;
}
.pd2-d-stat__unit { font-size: 15px; font-weight: 700; margin-left: 3px; color: var(--forest); }
.pd2-d-stat__meta { margin-top: 8px; display: flex; flex-wrap: wrap; gap: 4px 8px; font-size: 12.5px; color: var(--ink-soft); line-height: 1.5; }
.pd2-d-stat__meta span { position: relative; padding-right: 10px; }
.pd2-d-stat__meta span:not(:last-child)::after { content: "·"; position: absolute; right: 2px; color: #a9bcb0; }
.pd2-d-stat--text { background: #f5f8f5; border-color: var(--hair); }
.pd2-d-stat--text .pd2-d-stat__subject { color: var(--onyx); }

/* 名言卡 */
.pd2-d-talk {
    position: relative; margin: 6px 0 12px; padding: 20px 22px 18px 52px;
    background: var(--t-blue-bg); border: 1px solid var(--t-blue-bd); border-radius: 18px;
}
.pd2-d-talk::before {
    content: "\201C"; position: absolute; left: 15px; top: 8px;
    font-family: Georgia, serif; font-size: 56px; line-height: 1; color: var(--t-blue-solid); opacity: .35;
}
.pd2-d-talk__cap { font-size: 12px; font-weight: 800; letter-spacing: .04em; color: var(--t-blue-fg); margin-bottom: 8px; }
.pd2-d-talk__quote { margin: 0; border: none; padding: 0; background: none; font-size: 16px; line-height: 1.85; color: var(--sacramento); font-weight: 500; }

/* 證據進度量表 */
.pd2-d-meters { display: flex; flex-direction: column; gap: 12px; margin: 4px 0 16px; }
.pd2-d-meter {
    --mt: var(--onyx);
    padding: 13px 15px; border: 1px solid var(--hair); border-radius: 14px; background: #fbfcfb;
}
.pd2-d-meter--green   { --mt: var(--forest); }
.pd2-d-meter--amber   { --mt: var(--t-amber-solid); }
.pd2-d-meter--red     { --mt: var(--t-red-solid); }
.pd2-d-meter--neutral { --mt: var(--onyx); }
.pd2-d-meter__top { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.pd2-d-meter__subject { font-size: 14px; font-weight: 800; color: var(--ink); }
.pd2-d-meter__level { font-size: 14px; font-weight: 800; color: var(--mt); }
.pd2-d-meter__track { height: 10px; border-radius: 999px; background: #e6ebe6; overflow: hidden; }
.pd2-d-meter__fill {
    height: 100%; border-radius: 999px; background: var(--mt);
    background: linear-gradient(90deg, var(--mt), color-mix(in srgb, var(--mt) 62%, #17c64f));
    min-width: 6%;
}

/* 準則列 */
.pd2-d-criterias { display: flex; flex-direction: column; gap: 8px; margin: 4px 0; }
.pd2-d-criteria { display: flex; gap: 11px; padding: 12px 14px; background: var(--t-green-bg); border: 1px solid var(--t-green-bd); border-radius: 12px; }
.pd2-d-criteria__check {
    flex: 0 0 auto; width: 22px; height: 22px; border-radius: 50%;
    background: var(--forest); color: #fff; font-size: 12px; font-weight: 800;
    display: flex; align-items: center; justify-content: center; margin-top: 1px;
}
.pd2-d-criteria__body { min-width: 0; }
.pd2-d-criteria__k { font-weight: 800; color: var(--sacramento); margin-right: 6px; }
.pd2-d-criteria__v { color: var(--ink); }

/* 警示條（風險界線 / 加減分）*/
.pd2-d-callout--alert { border-radius: 14px; align-items: flex-start; }
.pd2-d-callout--alert.pd2-d-callout--red   { background: var(--t-red-bg);   border-color: var(--t-red-bd); }
.pd2-d-callout--alert.pd2-d-callout--amber { background: var(--t-amber-bg);  border-color: var(--t-amber-bd); }
.pd2-d-callout--alert.pd2-d-callout--purple{ background: var(--t-purple-bg); border-color: var(--t-purple-bd); }

/* 警示清單：每列一張小卡，icon 用 flex 對齊到第一行 */
.pd2-d-list--alert { display: flex; flex-direction: column; gap: 8px; }
.pd2-d-list--alert .pd2-d-li {
    align-items: flex-start; gap: 10px;
    padding: 11px 14px; border: 1px solid var(--t-red-bd); border-radius: 12px;
    background: var(--t-red-bg); border-bottom: 1px solid var(--t-red-bd);
}
.pd2-d-list--alert .pd2-d-li:not(.pd2-d-li--emoji)::before {
    content: "!"; background: var(--t-red-solid); color: #fff; opacity: 1;
    width: 18px; height: 18px; border-radius: 50%; font-size: 12px; font-weight: 800;
    display: flex; align-items: center; justify-content: center; margin-top: 2px;
}
.pd2-d-list--alert .pd2-d-li__emoji { line-height: 1.6; }
.pd2-d-list--alert .pd2-d-li__lead { color: var(--t-red-fg); }

/* 步驟時間軸 */
.pd2-d-timeline { list-style: none; margin: 4px 0 12px; padding: 0; position: relative; }
.pd2-d-timeline::before { content: ""; position: absolute; left: 10px; top: 10px; bottom: 12px; width: 2px; background: var(--t-green-bd); }
.pd2-d-timeline__step { position: relative; padding: 3px 0 16px 32px; font-size: 15.5px; line-height: 1.7; }
.pd2-d-timeline__step:last-child { padding-bottom: 2px; }
.pd2-d-timeline__dot { position: absolute; left: 3px; top: 8px; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 3px solid var(--forest); z-index: 1; }
.pd2-d-followup {
    margin-top: 8px; padding: 13px 16px; border-radius: 14px;
    background: var(--t-green-bg); border: 1px dashed var(--t-green-solid);
}
.pd2-d-followup__k { display: block; font-size: 13px; font-weight: 800; color: var(--t-green-fg); margin-bottom: 4px; }
.pd2-d-followup__v { color: var(--sacramento); font-size: 15px; }

/* ── 響應式 ───────────────────────────────── */
@media (max-width: 640px) {
    .pd2-decision { font-size: 15.5px; padding: 14px; border-radius: 20px; }
    .pd2-d-meta { grid-template-columns: 1fr; gap: 8px 0; padding: 15px 16px; }
    .pd2-d-meta__label { flex-basis: 76px; }
    .pd2-d-block__head { padding: 14px 16px 12px; }
    .pd2-d-block__body { padding: 16px; }
    .pd2-d-block__title { font-size: 16px; }
    .pd2-d-block__en { display: none; }
    .pd2-d-stats { grid-template-columns: 1fr; }
    .pd2-d-stat__num { font-size: 30px; }
    .pd2-d-talk { padding: 18px 16px 16px 44px; }
    .pd2-d-talk__quote { font-size: 15.5px; }

    /* 比較表 → 堆疊卡片 */
    .pd2-d-table-wrap { overflow: visible; border: none; }
    .pd2-d-table { min-width: 0; border: none; }
    .pd2-d-table thead { display: none; }
    .pd2-d-table tbody tr {
        display: block; margin-bottom: 12px;
        border: 1px solid var(--tone-bd, #d8e1db); border-radius: 12px; overflow: hidden;
    }
    .pd2-d-table tbody tr:nth-child(even) td { background: transparent; }
    .pd2-d-table td { display: block; border: none; border-bottom: 1px solid var(--hair); padding: 9px 14px; }
    .pd2-d-table td:last-child { border-bottom: none; }
    .pd2-d-table td::before {
        content: attr(data-label); display: block;
        font-size: 11.5px; font-weight: 800; letter-spacing: .03em;
        color: var(--tone-fg, var(--ink-soft)); margin-bottom: 2px;
    }
    .pd2-d-table__rowhead { background: var(--tone-bg, #edf1ee) !important; font-size: 15px; }
    .pd2-d-table__rowhead::before { display: none; }
}

/* ── 前台內容鎖 ─────────────────────────────── */
.pd2-decision, .pd2-decision * {
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
    -webkit-touch-callout: none;
}
body.wp-admin .pd2-decision, body.wp-admin .pd2-decision *,
body.elementor-editor-active .pd2-decision, body.elementor-editor-active .pd2-decision * {
    -webkit-user-select: auto; -moz-user-select: auto; -ms-user-select: auto; user-select: auto;
}

/* ============================================================
 *  v2.9.0 — Lucide 線性 icon
 * ============================================================ */
.pd2-d-ic { display: inline-block; vertical-align: -0.14em; flex: 0 0 auto; }
.pd2-d-ic-emoji { display: inline-block; }

/* 標準色系（給獨立 icon：清單標記等） */
.pd2-d-ic--green   { color: var(--t-green-solid); }
.pd2-d-ic--blue    { color: var(--t-blue-solid); }
.pd2-d-ic--red     { color: var(--t-red-solid); }
.pd2-d-ic--amber   { color: var(--t-amber-solid); }
.pd2-d-ic--purple  { color: var(--t-purple-solid); }
.pd2-d-ic--neutral { color: var(--t-neutral-solid); }

/* 區塊標題 icon 色塊：icon 用 tone-fg */
.pd2-d-block__icon .pd2-d-ic { color: var(--tone-fg); display: block; }
/* 判定橫幅徽章：白色 icon */
.pd2-d-verdict__badge { color: #fff; }
.pd2-d-verdict__badge .pd2-d-ic { display: block; }

/* callout / sublabel icon 垂直置中 */
.pd2-d-callout__icon { display: flex; align-items: flex-start; padding-top: 1px; }
.pd2-d-sublabel__icon { display: inline-flex; align-items: center; }

/* 清單 icon：對齊第一行文字 */
.pd2-d-li__emoji { display: flex; align-items: center; height: 1.7em; }
.pd2-d-li__emoji .pd2-d-ic { display: block; }

/* 帶 icon 的小標題改 flex 對齊 */
.pd2-d-statlabel { align-items: center; }
.pd2-d-talk__cap { display: flex; align-items: center; gap: 5px; }
.pd2-d-followup__k { display: flex; align-items: center; gap: 5px; }
.pd2-d-evidence__icon { display: inline-flex; align-items: center; color: var(--tone-fg, var(--onyx)); }
