/* 「揀基金比較」右抽屜（fund-picker.js；強積金／投連資料庫、RADAR 共用）—— 10-03 樣板 v8。
   右邊滑出 420px（窄屏全闊），圖仍然見到左半；組頭 sticky 實底色（後面嗰組蓋住前面，頂部永遠係而家睇緊嗰組）；撳範圍 ≥ 44px；字 ≥ 12。 */
.fd-scrim{position:fixed;inset:0;background:rgba(10,22,40,.14);opacity:0;transition:opacity .2s;z-index:68}
.fd-scrim.on{opacity:1}
.fd-drawer{position:fixed;right:0;top:0;bottom:0;width:min(420px,100vw);background:var(--card);box-shadow:-18px 0 40px rgba(10,22,40,.18);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .24s ease;z-index:69;color:var(--ink);font-size:var(--fs-md)}
.fd-drawer.on{transform:none}
.fd-drawer svg.i{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.fd-drawer .logo{width:28px;height:28px;border-radius:var(--r-sm);background:#fff;border:1px solid var(--line2);object-fit:contain;padding:2px;flex:none}
.fd-drawer .logo.sm{width:24px;height:24px}
.fd-drawer span.logo{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;color:var(--ink2);background:var(--card2)}
.fd-dr-hd{padding:var(--sp-3h) var(--sp-4) var(--sp-2h);border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-2)}   /* minmax(0,…)：長基金名嘅已揀 chip 唔准撐闊抽屜頭（10-06 用戶截圖：× 同「已揀」被擠出畫面；強積金／投連長名一樣中） */
.fd-dr-hd .r1{display:flex;align-items:center;gap:var(--sp-2h)}
.fd-dr-hd h3{margin:0;font-size:var(--fs-lg);flex:1}
.fd-dr-hd .cap{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap}
.fd-dr-hd .cap b{font-family:var(--mono);color:var(--ink)}
.fd-xbtn{border:0;background:var(--bg2);width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ink2);flex:none}
.fd-xbtn:hover{background:var(--line)}
.fd-inp{display:flex;align-items:center;gap:var(--sp-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:0 var(--sp-3);background:var(--card);color:var(--muted)}
.fd-inp input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:var(--fs-md);color:var(--ink);min-height:44px}
.fd-inp:focus-within{border-color:var(--brand-green-deep)}
/* 已揀基金：兩欄細格（10-05 用戶截圖：三隻各佔一行太嘥位）；名最多兩行，唔截短（「宏利MPF…」開頭全部一樣，截咗分唔到） */
.fd-pk-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-1h);min-width:0}   /* min-width:0：配合 .fd-dr-hd minmax(0,1fr)（10-06 長名 chip 唔准撐闊抽屜頭） */
.fd-pk-chips .fd-note{grid-column:1/-1}
.fd-tchip{display:flex;align-items:center;gap:var(--sp-1h);border:1px solid var(--line);border-radius:var(--r-sm);padding:0 0 0 var(--sp-2);min-height:44px;font-size:var(--fs-xs);font-weight:600;min-width:0;background:var(--card)}
.fd-tchip .d{width:10px;height:10px;border-radius:50%;flex:none}
.fd-tchip .t{flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;padding:var(--sp-1) 0}
.fd-tchip .pill{margin-right:var(--sp-2)}
.fd-tchip button{border:0;background:transparent;width:44px;height:44px;margin:-1px 0;border-radius:var(--r-sm);cursor:pointer;color:var(--muted);flex:none;display:flex;align-items:center;justify-content:center}
.fd-tchip button svg.i{width:16px;height:16px}
.fd-tchip button:hover{background:var(--neutral-soft);color:var(--ink)}
.fd-note{font-size:var(--fs-xs);color:var(--muted)}
.fd-note.pad{margin:var(--sp-1) var(--sp-4) var(--sp-2h)}
.fd-note.grow{flex:1}
.fd-dr-body{flex:1;overflow:auto;overscroll-behavior:contain}
.fd-pk-loading{padding:var(--sp-5);color:var(--muted);text-align:center}
.fd-pk-loading.err{color:var(--bad)}
.fd-pk-sec{display:flex;align-items:baseline;gap:var(--sp-2);padding:var(--sp-3h) var(--sp-4) var(--sp-1h);font-size:var(--fs-md);font-weight:700;color:var(--ink);border-top:1px solid var(--line2)}
.fd-pk-sec:first-child{border-top:0}
.fd-pk-sec span{font-size:var(--fs-xs);font-weight:400;color:var(--muted);margin-left:auto;text-align:right}
/* 組頭：同一層 sticky、實底色；右邊兩格對齊下面 1 年／3 年欄 */
.fd-pk-sub{position:sticky;top:0;z-index:3;display:grid;grid-template-columns:1fr 78px 84px;align-items:center;font-size:var(--fs-xs);font-weight:700;color:var(--ink2);background:var(--card2);padding:var(--sp-2) 0 var(--sp-2) var(--sp-4);border-top:1px solid var(--line2)}
.fd-pk-sub .c{text-align:right;padding-right:var(--sp-2h);color:var(--muted);font-weight:500}
.fd-pk-plan{position:sticky;top:0;z-index:3;font-size:var(--fs-xs);color:var(--muted);background:var(--bg2);padding:var(--sp-1h) var(--sp-4) var(--sp-1h) 30px;border-top:1px solid var(--line2)}
.fd-pk-more{display:flex;align-items:center;justify-content:center;gap:var(--sp-1h);width:100%;min-height:44px;border:0;border-top:1px solid var(--line2);background:var(--card);color:var(--link);font-weight:700;font-size:var(--fs-sm);cursor:pointer}
.fd-acc{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:var(--sp-2h);width:100%;min-height:52px;border:0;border-top:1px solid var(--line2);background:var(--card);padding:4px 12px 4px 16px;cursor:pointer;text-align:left;font:inherit;font-size:var(--fs-md);font-weight:600;color:var(--ink)}
.fd-acc:hover{background:var(--bg2)}
.fd-acc .grow{flex:1;min-width:0}
.fd-acc .c{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);font-weight:500;white-space:nowrap}
.fd-acc .cv{width:16px;height:16px;color:var(--muted);transition:transform .15s}
.fd-acc.open .cv{transform:rotate(90deg)}
.fd-acc.l2{padding-left:30px;font-weight:500;font-size:var(--fs-sm);background:var(--bg2);min-height:48px}
.fd-acc.l2.open{background:var(--accent-soft)}
.fd-tag-home{font-size:var(--fs-xs);font-weight:700;background:var(--primary);color:var(--primary-ink);border-radius:var(--r-pill);padding:0 7px;line-height:18px;white-space:nowrap}
table.fd-dtbl{border-collapse:collapse;width:100%;table-layout:fixed}
.fd-dtbl col.c-ck{width:46px}.fd-dtbl col.c-v{width:78px}.fd-dtbl col.c-v+col.c-v{width:84px}
.fd-dtbl td{height:48px;border-bottom:1px solid var(--line2);vertical-align:middle;padding:0 var(--sp-2h) 0 0}
.fd-dtbl td.chk{padding:0}
.fd-dtbl td.nmc{white-space:normal}
.fd-dtbl td.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:var(--fs-sm);text-align:right;white-space:nowrap}
.fd-dtbl td.empty{height:auto;padding:var(--sp-3) var(--sp-4);color:var(--muted);font-size:var(--fs-xs)}
.fd-dtbl tr.dis{opacity:.45}
.fd-dtbl .nmb{border:0;background:transparent;padding:2px 0;text-align:left;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:var(--sp-2);width:100%;font:inherit;color:inherit}
.fd-dtbl .nmw{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;min-width:0}
.fd-dtbl .nm{font-weight:700;font-size:var(--fs-md);color:var(--ink);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}
.fd-dtbl .nmb:hover .nm{color:var(--link)}
.fd-schip{flex:none;font-size:var(--fs-xs);font-weight:700;color:var(--ink2);background:var(--neutral-soft);border-radius:var(--r-pill);padding:0 7px;line-height:18px;white-space:nowrap}
/* 剔選格：整格 46×48 撳範圍 */
.fd-ck{display:flex;align-items:center;justify-content:center;width:46px;height:48px;border:0;background:transparent;cursor:pointer;padding:0}
.fd-ck i{width:22px;height:22px;border:1.5px solid var(--faint);border-radius:6px;background:var(--card);display:flex;align-items:center;justify-content:center;transition:all .12s}
.fd-ck.on i{background:var(--primary);border-color:var(--primary)}
.fd-ck.on i::after{content:"";width:6px;height:11px;border:solid var(--primary-ink);border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.fd-ck.fx{opacity:.55;cursor:not-allowed}
.fd-dr-foot{display:flex;align-items:center;gap:var(--sp-2h);padding:var(--sp-2h) var(--sp-4);border-top:1px solid var(--line);background:var(--card)}
.fd-dr-foot .btn{min-width:150px;min-height:44px}
.fd-dr-foot .btn svg.i{width:18px;height:18px}
/* 計劃模式（10-04 組合模擬器「自己配搭」）：每行細字＝細類 · 推出年月 · 派息 · 已停止接受新供款；組頭隻數 */
.fd-dtbl .fd-sub{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;font-size:var(--fs-xs);color:var(--muted);line-height:1.35}
.fd-schip.warn{color:var(--warn);background:var(--warn-soft)}
.fd-pk-sub .n{font-family:var(--mono);font-weight:500;color:var(--muted);margin-left:var(--sp-1)}
/* ── 10-05 A 方案（用戶批樣板）：同類推介｜按公司兩格切換、主場優先、只出 3 年回報 ── */
.fd-pk-tabs .seg{display:flex;width:100%}
.fd-pk-tabs .seg button{flex:1;min-height:44px}
.fd-pk-tabs .seg .cnt{font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;opacity:.75;margin-left:var(--sp-1h)}
.fd-base{padding:var(--sp-2h) var(--sp-4);font-size:var(--fs-xs);color:var(--muted);background:var(--card)}
.fd-base b{color:var(--ink)}
.fd-base .sm{display:block;margin-top:2px}
.fd-pk-sub.one{grid-template-columns:1fr auto}
.fd-pk-sub .srt{border:0;background:transparent;font:inherit;font-weight:700;color:var(--ink);cursor:pointer;min-height:44px;margin:-6px 0;padding:0 var(--sp-2h);display:flex;align-items:center;gap:3px;white-space:nowrap}
.fd-pk-sub .srt:hover{color:var(--link)}
.fd-pk-sub .srt svg.srt-i{width:13px;height:13px;stroke-width:2.4}
.fd-dtbl col.c-v3{width:96px}
.fd-pk-more.quiet{color:var(--muted);font-weight:500}
.fd-code{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);white-space:nowrap}
.fd-code mark{background:var(--accent-soft);color:var(--ink);border-radius:3px;padding:0 1px}
.fd-schip.div{color:var(--info);background:var(--info-soft)}
.fd-jump{display:flex;align-items:center;gap:var(--sp-2);width:100%;min-height:56px;border:0;border-top:1px solid var(--line2);background:var(--card2);padding:var(--sp-2) var(--sp-4);text-align:left;font:inherit;cursor:pointer;color:var(--ink2)}
.fd-jump:hover{background:var(--bg2)}
.fd-jump .grow{flex:1;min-width:0}
.fd-jump b{color:var(--link);display:block;font-size:var(--fs-sm)}
.fd-jump small{font-size:var(--fs-xs);color:var(--muted)}
.fd-jump svg.i{width:16px;height:16px;color:var(--link)}
.fd-flash{animation:fdFlash 1.2s ease}
@keyframes fdFlash{0%{background:var(--accent-soft)}100%{background:inherit}}
@media (prefers-reduced-motion:reduce){.fd-flash{animation:none}}
/* ── 10-23 設計語言 v1：抽屜頂「按公司 → 計劃｜同類推介」＝.utabs 底線分頁（抽屜入面轉內容）——
   同 ui-kit.css .utabs 一模一樣（RADAR／銀行基金頁未載 ui-kit.css，呢度鏡像一份，載咗都係同一個樣）；
   已揀 chip 冇框（色點＋名＋✕）；組頭實底色（sticky）但冇灰底；同類推介／搜尋每行細字計劃名。 */
.fd-pk-tabs .utabs{display:flex;gap:28px;border-bottom:1px solid var(--line);flex-wrap:wrap;margin:0 calc(-1 * var(--sp-4)) calc(-1 * var(--sp-2h));padding:0 var(--sp-4)}
.fd-pk-tabs .utabs button{position:relative;border:0;background:transparent;padding:0;min-height:44px;font:inherit;font-size:var(--fs-lg);font-weight:500;color:var(--muted);cursor:pointer;white-space:nowrap;flex:none}
.fd-pk-tabs .utabs button:hover{color:var(--ink)}
.fd-pk-tabs .utabs button.on{color:var(--ink);font-weight:700}
.fd-pk-tabs .utabs button.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:2px;background:var(--accent)}
.fd-pk-tabs .utabs button.na{color:var(--faint);cursor:not-allowed}
.fd-pk-tabs .utabs button:focus-visible{outline:2px solid var(--brand-green);outline-offset:2px}
.fd-pk-tabs .utabs .cnt{font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;color:var(--muted);margin-left:var(--sp-1h)}
.fd-pk-tabs[hidden]{display:none}
.fd-dr-hd:has(.fd-pk-tabs:not([hidden])){border-bottom:0}
.fd-drawer .fd-tchip{border:0;border-radius:0;background:transparent;padding:0 0 0 2px}
.fd-pk-sub{background:var(--card);border-top:0;border-bottom:1px solid var(--line2);color:var(--muted)}
.fd-pk-plan{background:var(--card)}
.fd-dtbl .fd-plan{flex-basis:100%;font-size:var(--fs-xs);color:var(--muted);line-height:1.3;font-weight:400}
.fd-base{display:flex;align-items:center;gap:var(--sp-1);flex-wrap:wrap}
.fd-base .tx{flex:1;min-width:0}
.fd-base .ibtn{margin:-12px -10px -12px -6px}
.fd-base .ipop{flex-basis:100%;margin:6px 0 0}

/* 10-29 iPhone 手機版選單掣＋底片 → 已搬去 shell.css（全站 TH.phoneMenu，#423） */

/* 10-31 手機 v2 底片統一：揀基金抽屜手機改全站 .th-sheet 殼（fund-picker.js：.th-sheet.on.fd-pkw > .scrim ＋ aside.box.fd-drawer）——
   由底升高身底片、底＝導航列頂（shell .th-sheet 管）、開收動畫 thShUp／thShDown（shell 管）；呢度淨係令 .fd-drawer 做 .box（蓋過右抽屜嗰套）。
   高＝殼高扣頂安全區（同 shell 底片 max-height 一樣），入面 .fd-dr-body 照舊 flex:1 自己捲。left:50%＋translateX(-50%)：shell thShUp 係 translate(-50%,…)。
   暗位 pointer-events:none：撳暗位唔收（10-06 規矩，手指落咗 .th-sheet 殼冇 handler）；淨 closeAll（撳底部導航）嘅 .click() 到 .scrim → 收。
   淨限 .fd-pkw（FundPicker 自己）：client-save-drawer（.csd）、yf-policy-drawer（.apd）照舊右抽屜。 */
html[data-dev="phone"] .th-sheet.fd-pkw>.scrim{pointer-events:none}
html[data-dev="phone"] .th-sheet.fd-pkw>.box.fd-drawer{position:absolute;top:auto;right:auto;bottom:0;left:50%;width:100%;transform:translateX(-50%);transition:none;z-index:auto;
  display:flex;flex-direction:column;overflow:hidden;padding:0 0 env(safe-area-inset-bottom,0px);background:var(--card);border-radius:16px 16px 0 0;
  height:calc(100% - env(safe-area-inset-top,0px) - var(--sp-6));max-height:calc(100% - env(safe-area-inset-top,0px) - var(--sp-6))}
html[data-dev="phone"] body.th-has-tabbar .th-sheet.fd-pkw>.box.fd-drawer{padding-bottom:0}
/* shell .th-sheet 通用規則（.btn.primary 全闊、h3 大字＋底距）唔准滲入抽屜內容：底部「完成／比較」、標題照舊 */
html[data-dev="phone"] .th-sheet.fd-pkw .fd-dr-foot .btn.primary{width:auto;padding:8px 14px}
html[data-dev="phone"] .th-sheet.fd-pkw .fd-dr-hd h3{font-size:var(--fs-lg);margin:0}
