/* ── 10-28 手機版：團隊管理組（用戶管理／招募計劃／晉升進度／團隊業績／業績匯入／設定／短片工作台／佣金表）──
   以 iPhone Air（420×912）做整齊標準；每條規則都以 html[data-dev="phone"] 開頭 —— iPad／電腦一條都唔中（mob-zero.sh 逐頁驗；tools/mobile-team.test.js A2 逐條查）。
   例外只得一樣：html:not([data-dev="phone"]) .tp-sort（手機轉 iPad 時收埋留低嘅排序列）。排序底片 10-31 起用全站 TH.phoneMenu.sheet（shell.css）。
   對線：框（卡、搜尋格、列表）左右＝頁邊 12px；框外文字（頁題、卡外標題、副題）再入 4px＝16px；卡入面行內距 12px。
   規矩：唔准打橫拉、唔准切字（摺行）、唔准疊字、撳位 ≥44px、互動唔郁位（#415）；同頁轉內容＝底線分頁樣；改條件＝.mseg；講解句入 ⓘ。
   淨係呢幾頁載呢份檔（<link> 喺各頁 html），所以 selector 以 body[data-page] 分頁；共用部份寫喺最頂。 */

/* ═══ 共用：頁題、底線分頁（將舊 .seg 分頁喺手機畫成 .utabs 樣）、細字、撳位 ═══ */
/* 頁題：手機頂欄已經寫住頁名 → 頁面 h1 唔再出一次（同設定頁 notify.css 900px 以下一樣做法）；副題照出、入 16px */
html[data-dev="phone"] .um-head h1,html[data-dev="phone"] .pk-head h1,html[data-dev="phone"] .pf-head h1,html[data-dev="phone"] .st-head h1,html[data-dev="phone"] .cm-head h1{display:none}
html[data-dev="phone"] .st-head{gap:var(--sp-3);margin-bottom:var(--sp-3);padding-bottom:0;border-bottom:0}
html[data-dev="phone"] .st-head .meta{padding:0 var(--sp-1)}
html[data-dev="phone"] .um-head,html[data-dev="phone"] .pk-head,html[data-dev="phone"] .pf-head{padding:0 var(--sp-1);margin-bottom:var(--sp-3);row-gap:2px}
html[data-dev="phone"] .um-head .meta,html[data-dev="phone"] .pk-head .meta,html[data-dev="phone"] .pf-head .meta{flex:1 1 100%;line-height:1.6}
html[data-dev="phone"] .um-head .meta b,html[data-dev="phone"] .pf-head .meta b{white-space:nowrap}

/* 底線分頁：#adTabs（用戶管理）#stTabs（設定）#avTabs（晉升進度）#piTabs（業績匯入）#cwSeg（短片工作台）—— 同頁轉內容 */
html[data-dev="phone"] #adTabs,html[data-dev="phone"] #stTabs,html[data-dev="phone"] #avTabs,html[data-dev="phone"] #piTabs,html[data-dev="phone"] #cwSeg{
  display:flex;flex-wrap:wrap;width:100%;gap:0 var(--sp-5);padding:0 var(--sp-1);background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}
html[data-dev="phone"] #adTabs button,html[data-dev="phone"] #stTabs button,html[data-dev="phone"] #avTabs button,html[data-dev="phone"] #piTabs button,html[data-dev="phone"] #cwSeg button{
  position:relative;flex:none;min-height:44px;min-width:44px;padding:0;border:0;border-radius:0;background:none;font:inherit;font-size:var(--fs-md);font-weight:500;line-height:1.3;color:var(--muted);white-space:nowrap}
html[data-dev="phone"] #adTabs button:hover,html[data-dev="phone"] #stTabs button:hover,html[data-dev="phone"] #avTabs button:hover,html[data-dev="phone"] #piTabs button:hover,html[data-dev="phone"] #cwSeg button:hover{background:none;color:var(--ink)}
html[data-dev="phone"] #adTabs button.on,html[data-dev="phone"] #stTabs button.on,html[data-dev="phone"] #avTabs button.on,html[data-dev="phone"] #piTabs button.on,html[data-dev="phone"] #cwSeg button.on{background:none;color:var(--ink);font-weight:700}
html[data-dev="phone"] #adTabs button.on::after,html[data-dev="phone"] #stTabs button.on::after,html[data-dev="phone"] #avTabs button.on::after,html[data-dev="phone"] #piTabs button.on::after,html[data-dev="phone"] #cwSeg button.on::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:2px;background:var(--accent)}

/* .mseg（細分段掣：改條件）＋ ⓘ —— 呢幾頁未載 ui-kit.css 嘅照 ui-kit.css 畫（同一個樣；載咗都係一樣） */
html[data-dev="phone"] .mseg{position:relative;display:inline-flex;align-items:center;height:44px;padding:0 2px;flex:none;isolation:isolate}
html[data-dev="phone"] .mseg::before{content:"";position:absolute;left:0;right:0;top:4px;bottom:4px;background:var(--mseg-trough,#EEEFEC);border-radius:var(--r-md);z-index:-1}
html[data-dev="phone"] .mseg button{position:relative;border:0;background:transparent;height:44px;padding:0 12px;font:inherit;font-size:var(--fs-sm);font-weight:500;color:var(--ink2);cursor:pointer;white-space:nowrap}
html[data-dev="phone"] .mseg button::before{content:"";position:absolute;left:0;right:0;top:6px;bottom:6px;border-radius:8px;z-index:-1;background:transparent}
html[data-dev="phone"] .mseg button.on{color:var(--accent-ink);font-weight:700}
html[data-dev="phone"] .mseg button.on::before{background:var(--accent)}
html[data-dev="phone"] .ibtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-14px -14px -14px -10px;border:0;background:transparent;color:var(--muted);cursor:pointer;flex:none;padding:0;vertical-align:middle}
html[data-dev="phone"] .ibtn svg{width:16px;height:16px;stroke:currentColor;fill:none}
html[data-dev="phone"] .ibtn[aria-expanded="true"]{color:var(--link)}
html[data-dev="phone"] .ipop{position:relative;background:#EEF2EC;color:var(--ink);font-size:var(--fs-sm);line-height:1.6;font-weight:400;border-radius:var(--r-md);padding:10px 44px 10px 12px;margin:8px 0;white-space:normal;text-align:left;font-family:var(--sans)}
html[data-dev="phone"] .ipop[hidden]{display:none}
html[data-dev="phone"] .ipop p{margin:0}
html[data-dev="phone"] .ipop p+p{margin-top:var(--sp-1h)}
html[data-dev="phone"] .ipop .x{position:absolute;right:0;top:0;width:44px;height:44px;border:0;background:transparent;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
html[data-dev="phone"] .ipop .x svg{width:14px;height:14px;stroke:currentColor;fill:none}

/* 動作掣：手機撳位 44 */
html[data-dev="phone"] main .btn{min-height:44px}
html[data-dev="phone"] main .btn.sm{min-height:44px;padding:0 var(--sp-3);font-size:var(--fs-sm)}
html[data-dev="phone"] main input[type=search],html[data-dev="phone"] main input[type=text],html[data-dev="phone"] main input[type=number],html[data-dev="phone"] main input[type=email],html[data-dev="phone"] main input[type=tel],html[data-dev="phone"] main input[type=date],html[data-dev="phone"] main input:not([type]),html[data-dev="phone"] main select{min-height:44px;font-size:16px}   /* iPhone Safari：細過 16px 撳落去會自動放大成頁 */

/* ═══ 用戶管理（admin）═══ */
html[data-dev="phone"] body[data-page="admin"] .um-tabs{gap:var(--sp-2);margin-bottom:var(--sp-3)}
html[data-dev="phone"] body[data-page="admin"] #adTabs button .n{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="admin"] .um-tabs > .pill{margin-left:var(--sp-1)}
html[data-dev="phone"] body[data-page="admin"] .um-tools{gap:var(--sp-2);margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="admin"] .um-tools .search{flex:1 1 100%}
html[data-dev="phone"] body[data-page="admin"] .um-tools input[type=search]{width:100%;min-width:0}
html[data-dev="phone"] body[data-page="admin"] .um-tools select{flex:1 1 0;min-width:0}
html[data-dev="phone"] body[data-page="admin"] .um-tools .clear{min-height:44px;padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="admin"] .um-tools .cnt{flex:1 1 100%;margin-left:0;padding:0 var(--sp-1);line-height:24px}
html[data-dev="phone"] body[data-page="admin"] .um-tools select{flex:1 1 calc(50% - 4px)}
html[data-dev="phone"] body[data-page="admin"] .um-psort{margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="admin"] .um-psort .mseg{display:flex;width:100%}
html[data-dev="phone"] body[data-page="admin"] .um-psort .mseg button{flex:1 1 0}
/* 表格 → 列表行（卡＝列表；冇表頭；成行撳＋右邊 ›） */
html[data-dev="phone"] body[data-page="admin"] .um-wrap{max-height:none;min-height:0;overflow:visible}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl,html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tbody{display:block;width:100%}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl thead{display:none}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tr{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:2px var(--sp-2);padding:var(--sp-2h) var(--sp-3);border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tr:last-child{border-bottom:0}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tr:has(.usercell){padding-left:calc(var(--sp-3) + 40px)}   /* 第二行起對齊名（頭像 30＋間 10）；頭像格自己 −40 拉返出去 */
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tr.link{padding-right:calc(var(--sp-3) + 18px)}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl tr.link::after{content:"";position:absolute;right:var(--sp-3);top:50%;width:7px;height:7px;margin-top:-4px;border-right:1.6px solid var(--faint);border-top:1.6px solid var(--faint);transform:rotate(45deg)}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl td{display:block;padding:0;border:0;white-space:normal;background:none!important;min-width:0;font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl td.dim{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl td[colspan]{flex:1 1 100%}
html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl .usercell .nm,html[data-dev="phone"] body[data-page="admin"] .um-wrap .tbl .usercell .sub{overflow-wrap:anywhere}
/* 用戶：第一行 頭像＋名／電郵｜狀態；第二行（對齊名）代理人編號 · 角色 · 最近活動；網頁功能／在線／建立日期喺詳情抽屜 */
html[data-dev="phone"] body[data-page="admin"] .um-tbl tr::before{content:"";order:3;flex:1 1 100%;height:0}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(1){order:1;flex:1 1 0;margin-left:-40px}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(4){order:2;flex:none}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(2){order:4;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(3){order:5;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(7){order:6}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(3)::before,html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(7)::before{content:"·";margin-right:var(--sp-2);color:var(--faint)}
html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(5),html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(6),html[data-dev="phone"] body[data-page="admin"] .um-tbl td:nth-child(8){display:none}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl tr::before{content:"";order:3;flex:1 1 100%;height:0}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(1){order:1;flex:1 1 0;margin-left:-40px}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(5){order:2;flex:none;font-size:var(--fs-xs);text-align:right;max-width:45%}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(2){order:4;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(7){order:5}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(7)::before{content:"·";margin-right:var(--sp-2);color:var(--faint)}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(3){order:6;flex:1 1 100%}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(8){order:7;flex:1 1 100%;margin-top:var(--sp-1h)}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(8):empty{display:none}
html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(4),html[data-dev="phone"] body[data-page="admin"] #secSessions .tbl td:nth-child(6){display:none}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl tr::before{content:"";order:3;flex:1 1 100%;height:0}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(2){order:1;flex:1 1 0;margin-left:-40px}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(3){order:2;flex:none;text-align:right;max-width:45%;font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(1){order:4;flex:1 1 100%}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(4){order:5;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(5){order:6}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(5)::before{content:"·";margin-right:var(--sp-2);color:var(--faint)}
html[data-dev="phone"] body[data-page="admin"] #secEvents .tbl td:nth-child(6){display:none}
/* 操作紀錄（#secAudit）：動作｜時間 ／ 對象 ／ 內容 ／ 管理員 · 來源 */
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(3){order:1;flex:1 1 0;font-weight:700}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(1){order:2;flex:none}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(4){order:3;flex:1 1 100%;font-size:var(--fs-sm);color:var(--ink2)}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(5){order:4;flex:1 1 100%;font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(2){order:5;overflow-wrap:anywhere}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(6){order:6}
html[data-dev="phone"] body[data-page="admin"] #secAudit .tbl td:nth-child(6)::before{content:"·";margin-right:var(--sp-2);color:var(--faint)}
/* 詳情抽屜：全闊；掣、開關撳位 44；細字 ≥12 */
html[data-dev="phone"] body[data-page="admin"] .um-drawer{width:100vw;border-left:0}
html[data-dev="phone"] body[data-page="admin"] .um-drawer .dh{padding:var(--sp-2) var(--sp-1) var(--sp-2) var(--sp-4);align-items:center}
html[data-dev="phone"] body[data-page="admin"] .um-drawer .x{width:44px;height:44px;flex:none}
html[data-dev="phone"] body[data-page="admin"] .um-drawer .db{padding:var(--sp-3) var(--sp-3) calc(var(--sp-6) + env(safe-area-inset-bottom,0px));gap:var(--sp-3)}
html[data-dev="phone"] body[data-page="admin"] .um-drawer .btn{min-height:44px}
html[data-dev="phone"] body[data-page="admin"] .um-block .bd{padding:var(--sp-2) var(--sp-3)}
html[data-dev="phone"] body[data-page="admin"] .um-kv{grid-template-columns:auto minmax(0,1fr)}
html[data-dev="phone"] body[data-page="admin"] .sw{min-height:44px}
html[data-dev="phone"] body[data-page="admin"] .sw .l s,html[data-dev="phone"] body[data-page="admin"] .um-grp,html[data-dev="phone"] body[data-page="admin"] .um-row .when,html[data-dev="phone"] body[data-page="admin"] .um-row .what s,html[data-dev="phone"] body[data-page="admin"] .permchips i{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="admin"] .um-row{flex-wrap:wrap}
html[data-dev="phone"] body[data-page="admin"] .um-row .what s{white-space:normal}
html[data-dev="phone"] body[data-page="admin"] .um-row .btn{min-height:44px;padding:0 var(--sp-3)}
html[data-dev="phone"] body[data-page="admin"] select.rolesel{min-height:44px}

/* ═══ 招募計劃（packages）═══ */
html[data-dev="phone"] body[data-page="packages"] .pk-warn{margin-bottom:var(--sp-3)}
html[data-dev="phone"] body[data-page="packages"] .pkm-entry{flex-wrap:wrap;gap:var(--sp-3);padding:var(--sp-3h) var(--sp-4)}
html[data-dev="phone"] body[data-page="packages"] .pkm-entry .t{flex:1 1 100%}
html[data-dev="phone"] body[data-page="packages"] .pkm-entry .btn{margin-left:0;padding:0 var(--sp-5)}
html[data-dev="phone"] body[data-page="packages"] .pk-tools{gap:var(--sp-2);margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="packages"] .pk-tools .search{flex:1 1 100%;order:1}
html[data-dev="phone"] body[data-page="packages"] .pk-tools input[type=search]{width:100%;min-width:0}
html[data-dev="phone"] body[data-page="packages"] .pk-tools .cnt{order:3;flex:1 1 100%;margin-left:0;padding:0 var(--sp-1);line-height:24px}
/* 類別＝改條件 → .mseg 樣（灰槽、揀中金色），太多就摺行 */
html[data-dev="phone"] body[data-page="packages"] #pkCat{order:2;display:flex;flex-wrap:wrap;width:100%;gap:0;padding:2px;background:var(--mseg-trough,#EEEFEC);border:0;border-radius:var(--r-md)}
html[data-dev="phone"] body[data-page="packages"] #pkCat button{position:relative;flex:1 1 auto;height:44px;padding:0 var(--sp-2h);border-radius:8px;background:transparent;font-size:var(--fs-sm);font-weight:500;color:var(--ink2);z-index:0}
html[data-dev="phone"] body[data-page="packages"] #pkCat button.on{background:var(--accent);color:var(--accent-ink);font-weight:700}
html[data-dev="phone"] body[data-page="packages"] .pk-qhint{padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="packages"] .pk-psort{margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="packages"] .pk-psort .mseg{display:flex;width:100%}
html[data-dev="phone"] body[data-page="packages"] .pk-psort .mseg button{flex:1 1 0;padding:0 var(--sp-2)}
html[data-dev="phone"] body[data-page="packages"] .pk-rule{padding:0 var(--sp-1)}
/* 計劃表 → 列表行：計劃名（＋英文名）／類別 · 年齡／津貼種類＋金額；津貼期、獎金、約束期喺計劃頁 */
html[data-dev="phone"] body[data-page="packages"] .pk-tablewrap{max-height:none;min-height:0;overflow:visible}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl,html[data-dev="phone"] body[data-page="packages"] .pk-tbl tbody{display:block;width:100%}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl thead{display:none}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl tr{position:relative;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--sp-2);padding:var(--sp-2h) calc(var(--sp-3) + 18px) var(--sp-2h) var(--sp-3);border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl tr:last-child{border-bottom:0}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl tr.link::after{content:"";position:absolute;right:var(--sp-3);top:50%;width:7px;height:7px;margin-top:-4px;border-right:1.6px solid var(--faint);border-top:1.6px solid var(--faint);transform:rotate(45deg)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td{display:block;padding:0;border:0;background:none!important;max-width:none;min-width:0}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td[colspan]{flex:1 1 100%}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td.nm{flex:1 1 100%}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td.nm b{font-size:var(--fs-md)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(2),html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(3){font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(3)::before{content:"·";margin-right:var(--sp-2);color:var(--faint)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td.pay{flex:1 1 100%;margin-top:var(--sp-1)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td.pay b{font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td.pay span{margin-top:1px}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(5),html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(6),html[data-dev="phone"] body[data-page="packages"] .pk-tbl td:nth-child(7){display:none}
/* 計劃頁：卡內距 12；數字格（.pk-kpi）唔准盒中盒 → 列表行（分隔線、冇底色）；表格摺行唔打橫拉；原文分頁＝底線分頁樣 */
html[data-dev="phone"] body[data-page="packages"] .pk-back{min-height:44px;margin-bottom:var(--sp-1);padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="packages"] .pk-phead{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="packages"] .pk-phead h1{font-size:var(--fs-xl)}
html[data-dev="phone"] body[data-page="packages"] .pk-phead .m{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="packages"] .pk-grid{gap:var(--sp-3);margin-top:var(--sp-3)}
html[data-dev="phone"] body[data-page="packages"] .pk-card{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="packages"] .pk-card h2{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:var(--sp-2);font-size:17px}
html[data-dev="phone"] body[data-page="packages"] .pk-card h2 .sub{margin-left:0}
html[data-dev="phone"] body[data-page="packages"] .pk-kpis{display:block;margin:var(--sp-2) 0}
html[data-dev="phone"] body[data-page="packages"] .pk-kpi{background:none;border-radius:0;padding:var(--sp-2h) 0;border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="packages"] .pk-kpi:last-child{border-bottom:0}
html[data-dev="phone"] body[data-page="packages"] .pk-kpi .l{white-space:normal}
html[data-dev="phone"] body[data-page="packages"] .pk-kpi .v.mono{font-size:var(--fs-lg)}
html[data-dev="phone"] body[data-page="packages"] .pk-in{gap:var(--sp-2h)}
html[data-dev="phone"] body[data-page="packages"] .pk-in label,html[data-dev="phone"] body[data-page="packages"] .pk-in input,html[data-dev="phone"] body[data-page="packages"] .pk-in select{width:100%;max-width:none;min-width:0}
html[data-dev="phone"] body[data-page="packages"] .pk-card .scroll{overflow:visible}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2{table-layout:auto}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 th,html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 td{white-space:normal;padding:var(--sp-1h) var(--sp-2);overflow-wrap:anywhere}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 th:first-child,html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 td:first-child{padding-left:0}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 th:last-child,html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 td:last-child{padding-right:0}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 thead th{background:none;border-bottom:1px solid var(--line)}
html[data-dev="phone"] body[data-page="packages"] .pk-tbl2 td.w{min-width:0}
html[data-dev="phone"] body[data-page="packages"] .pk-secbar{gap:var(--sp-2)}
html[data-dev="phone"] body[data-page="packages"] .pk-secbar h2{flex:1 1 100%}
html[data-dev="phone"] body[data-page="packages"] #pkTab{display:flex;width:100%;gap:0 var(--sp-5);padding:0;background:none;border:0;border-bottom:1px solid var(--line);border-radius:0}
html[data-dev="phone"] body[data-page="packages"] #pkTab button{position:relative;min-height:44px;padding:0;border-radius:0;background:none;font-size:var(--fs-md);font-weight:500;color:var(--muted)}
html[data-dev="phone"] body[data-page="packages"] #pkTab button.on{color:var(--ink);font-weight:700}
html[data-dev="phone"] body[data-page="packages"] #pkTab button.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:2px;background:var(--accent)}
html[data-dev="phone"] body[data-page="packages"] .pk-card ul{padding-left:var(--sp-4)}
/* 一齊傾 */
html[data-dev="phone"] body[data-page="packages"] .pkm-q{font-size:var(--fs-xl)}
html[data-dev="phone"] body[data-page="packages"] .pkm-opt{padding:var(--sp-3) var(--sp-3h);min-height:56px}
html[data-dev="phone"] body[data-page="packages"] .pkm-card{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="packages"] .pkm-nav{flex-wrap:wrap}

/* ═══ 晉升進度（advancement）═══
   卡：標題（17px）喺卡外、卡頂講解句入 ⓘ（advancement.js phoneInfo）；卡入面一層（行與行一條線），唔准盒中盒。
   做法：.av-card 本身透明，h2／ⓘ 框以外嘅子元素連埋一齊畫成一張卡（頂一個圓角、底一個圓角）。 */
html[data-dev="phone"] body[data-page="advancement"] .av-card{background:none;border:0;box-shadow:none;padding:0;margin:0 0 var(--sp-5)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > h2{font-size:17px;margin:0 var(--sp-1) var(--sp-2);gap:var(--sp-2);min-height:24px}
html[data-dev="phone"] body[data-page="advancement"] .av-card > h2 .tag{margin-left:auto}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .ipop{margin:0 0 var(--sp-2)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > :not(h2):not(.ipop):not(.sub){background:var(--card);border:1px solid var(--line);border-width:0 1px;padding-left:var(--sp-3);padding-right:var(--sp-3);margin:0!important}
html[data-dev="phone"] body[data-page="advancement"] .av-card > h2 + :not(.ipop):not(.sub),html[data-dev="phone"] body[data-page="advancement"] .av-card > .ipop + :not(.sub),html[data-dev="phone"] body[data-page="advancement"] .av-card > .sub + *,html[data-dev="phone"] body[data-page="advancement"] .av-card > :first-child:not(h2){border-top-width:1px;border-top-left-radius:var(--r-md);border-top-right-radius:var(--r-md);padding-top:var(--sp-1)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > :last-child:not(h2):not(.ipop){border-bottom-width:1px;border-bottom-left-radius:var(--r-md);border-bottom-right-radius:var(--r-md);padding-bottom:var(--sp-1)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .sub{padding:0 var(--sp-1);margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .av-note{padding-top:var(--sp-2h);padding-bottom:var(--sp-2h);border-top:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .av-ladder{padding-top:var(--sp-2h);padding-bottom:var(--sp-2h)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .av-id{padding-top:var(--sp-3);padding-bottom:var(--sp-3)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .btn{display:flex;width:auto;border-radius:0 0 var(--r-md) var(--r-md)}
html[data-dev="phone"] body[data-page="advancement"] .av-card > .av-empty{padding:var(--sp-5) var(--sp-3)}
/* 身分帶：名＋職級一行；資料格兩欄對齊 */
html[data-dev="phone"] body[data-page="advancement"] .av-id{gap:var(--sp-3)}
html[data-dev="phone"] body[data-page="advancement"] .av-id .who{flex:1 1 100%}
html[data-dev="phone"] body[data-page="advancement"] .av-id .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2h) var(--sp-3);width:100%}
html[data-dev="phone"] body[data-page="advancement"] .av-id .facts div{white-space:normal;min-width:0}
html[data-dev="phone"] body[data-page="advancement"] .av-id .facts span{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="advancement"] .av-id .facts b{font-variant-numeric:tabular-nums}
/* 進度行：標題｜數字｜狀態 一行；進度條／註解下一行全闊 */
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row{flex-wrap:wrap;gap:var(--sp-1h) var(--sp-2);padding-top:var(--sp-2h);padding-bottom:var(--sp-2h)}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .k{order:1;flex:1 1 auto;white-space:normal}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .n{order:2;white-space:normal;text-align:right;font-variant-numeric:tabular-nums;max-width:100%}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .tag{order:3;font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .v{order:4;flex:1 1 100%;min-width:0}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .v:empty{display:none}
html[data-dev="phone"] body[data-page="advancement"] .av-card .av-row .v s{margin-top:0}
html[data-dev="phone"] body[data-page="advancement"] .av-ladder span{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="advancement"] .av-map{grid-template-columns:1fr}
html[data-dev="phone"] body[data-page="advancement"] .tag{font-size:var(--fs-xs)}
/* 團隊表（窄位 5 欄＋撳行展開）→ 列表行：名＋職級｜進度 ／ 年資 · 要求 · 年初至今；撳行原位展開其餘 */
html[data-dev="phone"] body[data-page="advancement"] .av-psort{padding-top:var(--sp-2);padding-bottom:var(--sp-2);border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="advancement"] .av-psort .mseg{display:flex;width:100%}
html[data-dev="phone"] body[data-page="advancement"] .av-psort .mseg button{flex:1 1 0;padding:0 var(--sp-2)}
html[data-dev="phone"] body[data-page="advancement"] .av-wrap{overflow:visible}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow,html[data-dev="phone"] body[data-page="advancement"] .av-narrow tbody{display:block;width:100%}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow thead{display:none}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 20px;grid-template-areas:"nm nm pc x" "sv rq yt x";gap:var(--sp-1) var(--sp-2);align-items:center;padding:var(--sp-2h) 0;border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td{display:block;padding:0;border:0;background:none!important;min-width:0;white-space:normal}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(1){grid-area:nm}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(2){grid-area:sv;text-align:left;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(3){grid-area:rq;text-align:left;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(4){grid-area:yt;text-align:left;font-size:var(--fs-xs);color:var(--ink2)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(5){grid-area:pc;text-align:right}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td.av-x{grid-area:x;width:auto}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-row td:nth-child(2)::before{content:attr(data-l)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-more{display:block}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-more[hidden]{display:none}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-more td{display:block;padding:var(--sp-2h) 0;background:none;border-bottom:1px solid var(--line2)}
html[data-dev="phone"] body[data-page="advancement"] .av-narrow tr.av-more dl{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-dev="phone"] body[data-page="advancement"] .av-wrap .av-narrow tr:last-child{border-bottom:0}
html[data-dev="phone"] body[data-page="advancement"] #avTabs:has(> button:only-child){display:none}   /* 得一個分頁（顧問淨係「我」）就唔使分頁列 */

/* ═══ 共用：team-phone.js 標咗 data-pl 嘅表格 → 列表行（團隊業績／業績匯入／佣金表／短片工作台）═══
   第一格＝行題（全闊、粗字）；名次格（第一格 .num）浮喺左邊、行題緊貼；其餘每格＝細字欄名（data-l）＋數值，一行排幾格對齊。 */
html:not([data-dev="phone"]) .tp-sort{display:none}
html[data-dev="phone"] .tbl[data-pl],html[data-dev="phone"] .tbl[data-pl] > tbody{display:block;width:100%;min-width:0!important}
html[data-dev="phone"] .tbl[data-pl] > thead{display:none}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:var(--sp-1h) var(--sp-3);padding:var(--sp-2h) 0;border-bottom:1px solid var(--line2)}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr:last-child{border-bottom:0}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td{display:block;padding:0;border:0;white-space:normal;text-align:left;min-width:0;max-width:none;background:none;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:first-child{grid-column:1 / -1;font-size:var(--fs-md);font-weight:700;color:var(--ink);line-height:22px}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td[data-l]:not(:first-child)::before{content:attr(data-l);display:block;font-family:var(--sans);font-size:var(--fs-xs);font-weight:400;color:var(--muted);line-height:1.4;margin-bottom:1px}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td[colspan]{grid-column:1 / -1}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:empty{display:none}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td [style*="font-size:11px"]{font-size:var(--fs-xs)!important}
/* 名次表（第一格 .num）：左邊一條 28px 名次欄，行題同其餘格全部對齊名次右邊（三格一行，逐格指定欄，唔會跌返入名次欄） */
html[data-dev="phone"] .tbl[data-pl] > tbody > tr:has(> td:first-child.num){grid-template-columns:28px repeat(3,minmax(0,1fr))}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:first-child.num{grid-column:1;grid-row:1;font-size:var(--fs-sm);line-height:22px;text-align:left}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:first-child.num .rankno{min-width:24px;padding:2px 4px;line-height:18px}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:first-child.num + td{grid-column:2 / -1;grid-row:1;font-size:var(--fs-md);font-weight:700;color:var(--ink);line-height:22px}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:first-child.num + td[data-l]::before{display:none}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr:has(> td:first-child.num) > td:nth-child(3n):not([colspan]){grid-column:2}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr:has(> td:first-child.num) > td:nth-child(3n+4):not([colspan]){grid-column:3}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr:has(> td:first-child.num) > td:nth-child(3n+5):not([colspan]){grid-column:4}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.link{padding-right:22px;cursor:pointer}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.link::after{content:"";position:absolute;right:6px;top:calc(var(--sp-2h) + 8px);width:7px;height:7px;border-right:1.6px solid var(--faint);border-top:1.6px solid var(--faint);transform:rotate(45deg)}   /* 去詳情：› */
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.link:has(.pk-caret)::after{border-top:0;border-bottom:1.6px solid var(--faint);top:calc(var(--sp-2h) + 5px)}   /* 原位展開：⌄／⌃ */
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.link.open:has(.pk-caret)::after{transform:rotate(225deg);top:calc(var(--sp-2h) + 10px)}
html[data-dev="phone"] .tbl[data-pl] .pk-caret{display:none}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.me{background:var(--accent-soft);margin:0 calc(-1 * var(--sp-3));padding-left:var(--sp-3);padding-right:var(--sp-3)}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.pk-det{display:block;padding:var(--sp-2) 0}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr.pk-det > td{background:none;padding:0}
html[data-dev="phone"] .tbl[data-pl] .tbl[data-pl] > tbody > tr > td:first-child.num + td,html[data-dev="phone"] .tbl[data-pl] .tbl[data-pl] > tbody > tr > td:first-child{font-size:var(--fs-sm)}
html[data-dev="phone"] .tbl[data-pl] td.pk-state{min-width:0;max-width:none;grid-column:1 / -1}
html[data-dev="phone"] .tbl[data-pl] td.pk-state .pk-flags li b{white-space:normal}
html[data-dev="phone"] .tbl[data-pl] .pk-flags li{font-size:var(--fs-xs)}
/* 表格外框：唔使打橫捲、唔使限高 */
html[data-dev="phone"] .scroll:has(> .tbl[data-pl]),html[data-dev="phone"] .pf-tablewrap:has(> .tbl[data-pl]){overflow:visible;max-height:none;min-height:0}
/* 排序列 */
html[data-dev="phone"] .tp-sort{display:flex;border-bottom:1px solid var(--line2)}
html[data-dev="phone"] .tp-sbtn{display:inline-flex;align-items:center;gap:var(--sp-1h);min-height:44px;padding:0;border:0;background:none;font:inherit;font-size:var(--fs-sm);color:var(--ink2);cursor:pointer}
html[data-dev="phone"] .tp-sbtn .k{color:var(--muted)}
html[data-dev="phone"] .tp-sbtn b{font-weight:700;color:var(--ink)}
html[data-dev="phone"] .tp-sbtn .d{font-family:var(--mono);color:var(--ink)}
html[data-dev="phone"] .tp-sbtn svg{width:14px;height:14px;fill:none;stroke:var(--muted);stroke-width:2}
/* 排序底片 10-31 起用全站 TH.phoneMenu.sheet（.th-sheet.phm-sh，樣式喺 shell.css），呢度唔再有自己個殼 */

/* ═══ 團隊業績（performance：本頁＋組長卡 unit.js＋招募計劃進度 package-progress.js）═══ */
html[data-dev="phone"] body[data-page="perf"] .hero{padding:var(--sp-4) var(--sp-4);border-radius:var(--r-md)}
html[data-dev="phone"] body[data-page="perf"] .hero .hrow{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="perf"] .hero .lead{grid-column:1 / -1}
html[data-dev="phone"] body[data-page="perf"] .hero .hsub{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="perf"] .hero .hval{font-size:var(--fs-xl)}
html[data-dev="phone"] body[data-page="perf"] .hero .lead .hval{font-size:var(--fs-2xl)}
html[data-dev="phone"] body[data-page="perf"] .hero .div{border-left:0;padding-left:0}
html[data-dev="phone"] body[data-page="perf"] .okbox{padding:var(--sp-2h) var(--sp-3)}
html[data-dev="phone"] body[data-page="perf"] .okbox a,html[data-dev="phone"] body[data-page="perf"] .issues a,html[data-dev="phone"] body[data-page="perf"] .pf-head .meta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;margin:-12px 0;vertical-align:middle}
html[data-dev="phone"] body[data-page="perf"] .pf-grid{gap:var(--sp-5)}
html[data-dev="phone"] body[data-page="perf"] #unitMain,html[data-dev="phone"] body[data-page="perf"] #pkgMain{margin-top:var(--sp-5)!important}
/* 卡：標題（17px）喺卡外、內容一張卡 —— .pf-card 透明，h2／ⓘ 以外嘅子元素連埋畫成一張卡 */
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card{background:none;border:0;box-shadow:none;padding:0;margin-top:var(--sp-5)!important}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-grid > .pf-card,html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) #unitMain > .pf-card:first-child,html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) #pkgMain > .pf-card:first-child,html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-grid + div > .pf-card{margin-top:0!important}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > h2{font-size:17px;margin:0 var(--sp-1) var(--sp-2);row-gap:2px;column-gap:var(--sp-2)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > h2 small{flex:1 1 100%;font-size:var(--fs-xs);line-height:1.5}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > h2 a{display:inline-flex;align-items:center;justify-content:flex-end;min-height:44px;min-width:44px;margin:-10px 0 -10px auto;font-size:var(--fs-sm)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .ipop{margin:0 0 var(--sp-2)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > :not(h2):not(.ipop){background:var(--card);border:1px solid var(--line);border-width:0 1px;padding-left:var(--sp-3);padding-right:var(--sp-3);margin:0!important;border-radius:0}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > h2 + :not(.ipop),html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .ipop + *,html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > :first-child:not(h2){border-top-width:1px;border-top-left-radius:var(--r-md);border-top-right-radius:var(--r-md);padding-top:var(--sp-2)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > :last-child:not(h2):not(.ipop){border-bottom-width:1px;border-bottom-left-radius:var(--r-md);border-bottom-right-radius:var(--r-md);padding-bottom:var(--sp-2)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .okbox,html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .issues{border-radius:0;border-color:var(--line);color:inherit}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .issues{max-height:none;overflow:visible;font-size:var(--fs-sm)}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-card > .pf-state{padding:var(--sp-5) var(--sp-3)}
/* 數字格：資料唔准似掣 → 冇框、兩格一行、分隔線 */
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--sp-3);padding-top:var(--sp-1)!important;padding-bottom:var(--sp-1)!important}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-kpis .kpi{background:none;border:0;border-bottom:1px solid var(--line2);border-radius:0;padding:var(--sp-2) 0}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-kpis .kpi .l{white-space:normal}
html[data-dev="phone"] :is(body[data-page="perf"],body[data-page="perf-import"]) .pf-kpis .kpi .v{font-size:var(--fs-lg)}
/* 圖 */
html[data-dev="phone"] body[data-page="perf"] .chart .chart-tick,html[data-dev="phone"] body[data-page="perf"] .chart .chart-val{font-size:12px}
html[data-dev="phone"] body[data-page="perf"] .chart{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
html[data-dev="phone"] body[data-page="perf"] .pf-note{padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="perf"] .rankno{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="perf"] .pk-dhead span{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="perf"] .pk-dnote{padding:var(--sp-2) var(--sp-3)}

/* ═══ 業績匯入（performance-import；卡同團隊業績一樣：標題喺卡外）═══ */
html[data-dev="phone"] body[data-page="perf-import"] #piTabs{margin-bottom:var(--sp-4)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-files{grid-template-columns:1fr;gap:var(--sp-2h)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-file{padding:var(--sp-3)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-file input[type=file]{min-height:44px;width:100%;font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-row{gap:var(--sp-2h)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-row label.chk{flex-wrap:wrap;width:100%}
html[data-dev="phone"] body[data-page="perf-import"] .imp-row input[type=date],html[data-dev="phone"] body[data-page="perf-import"] .imp-row input[data-dtext]{flex:1 1 auto;min-height:44px}
html[data-dev="phone"] body[data-page="perf-import"] .imp-row .btn.primary{flex:1 1 100%}
html[data-dev="phone"] body[data-page="perf-import"] .bind-sel{max-width:100%;min-height:44px;width:100%}
html[data-dev="phone"] body[data-page="perf-import"] .pf-card h3{font-size:var(--fs-md)!important}
html[data-dev="phone"] body[data-page="perf-import"] .scroll[style*="max-height"]{max-height:none!important}
html[data-dev="phone"] body[data-page="perf-import"] .imp-files{gap:0;margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="perf-import"] .imp-file,html[data-dev="phone"] body[data-page="perf-import"] .imp-file.ok{border:0;border-bottom:1px solid var(--line2);border-radius:0;background:none;padding:var(--sp-3) 0}   /* 手機冇拖放 → 唔使虛線框（唔准盒中盒）；揀咗檔案嘅狀態行照顯示 */
html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools{display:flex;flex-direction:column;gap:var(--sp-1h);padding-top:var(--sp-3)!important}
html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools .search{position:relative}
html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools .pf-note{padding:0}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td .pill{white-space:normal;line-height:1.45}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:last-child:has(> select, > .btn){grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;white-space:normal!important}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:last-child:has(> select, > .btn)::before{flex:1 1 100%;margin-bottom:0}
html[data-dev="phone"] .tbl[data-pl] > tbody > tr > td:last-child > select{flex:1 1 100%;max-width:100%}

/* ═══ 佣金表（commission）═══ */
html[data-dev="phone"] body[data-page="commission"] .cm-head{padding:0 var(--sp-1);margin-bottom:var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-head .meta{flex:1 1 100%;line-height:1.6}
html[data-dev="phone"] body[data-page="commission"] .cm-warn{margin-bottom:var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-tools{gap:var(--sp-2);margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="commission"] .cm-tools .search{flex:1 1 100%}
html[data-dev="phone"] body[data-page="commission"] .cm-tools input[type=search]{width:100%;min-width:0}
html[data-dev="phone"] body[data-page="commission"] .cm-tools .cnt{flex:1 1 100%;margin-left:0;padding:0 var(--sp-1);line-height:24px}
html[data-dev="phone"] body[data-page="commission"] .cm-tools .cnt:empty{display:none}
html[data-dev="phone"] body[data-page="commission"] .cm-qhint{padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="commission"] .cm-qhint:empty{display:none}
html[data-dev="phone"] body[data-page="commission"] .cm-rule{padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="commission"] .cm-crumb{padding:0 var(--sp-1);margin-bottom:var(--sp-1)}
html[data-dev="phone"] body[data-page="commission"] .cm-crumb button{min-height:44px}
/* 類別：一張卡入面一類一行（名＋產品數｜例子；右邊 ›），唔再一格一張卡 */
html[data-dev="phone"] body[data-page="commission"] .cm-funnel{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard{position:relative;width:100%;border:0;border-bottom:1px solid var(--line2);border-radius:0;background:none;padding:var(--sp-2h) calc(var(--sp-3) + 18px) var(--sp-2h) var(--sp-3);gap:2px;box-shadow:none}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard:last-child{border-bottom:0}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard:active{background:var(--bg2)}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard::after{content:"";position:absolute;right:var(--sp-3);top:50%;width:7px;height:7px;margin-top:-4px;border-right:1.6px solid var(--faint);border-top:1.6px solid var(--faint);transform:rotate(45deg)}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard .t b{font-size:var(--fs-md)}
html[data-dev="phone"] body[data-page="commission"] .cm-fcard .go{display:none}   /* CTA 用設計唔用文字（鐵律 2）：成行撳＋右邊 › */
/* 產品表 → 列表行（team-phone.js 標 data-pl）：產品名＋英文名；代號細字 */
html[data-dev="phone"] body[data-page="commission"] .cm-tablewrap{max-height:none;min-height:0;overflow:visible;padding:0 var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl td.nm b{font-size:var(--fs-md)}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl td.nm span{font-weight:400;font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl td.code{grid-column:1 / -1;font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl > tbody > tr > td:nth-child(2){display:none}   /* 類別：麵包屑已經講咗 */
/* 產品頁：卡內距 12；數字格唔准盒中盒；表格摺行唔打橫拉 */
html[data-dev="phone"] body[data-page="commission"] .cm-back{min-height:44px;margin-bottom:var(--sp-1);padding:0 var(--sp-1)}
html[data-dev="phone"] body[data-page="commission"] .cm-phead{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-phead h1{font-size:var(--fs-xl)}
html[data-dev="phone"] body[data-page="commission"] .cm-grid{gap:var(--sp-3);margin-top:var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-card{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="commission"] .cm-card h2{font-size:17px}
html[data-dev="phone"] body[data-page="commission"] .cm-kpis{display:block;margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="commission"] .cm-kpis .kpi{background:none;border:0;border-bottom:1px solid var(--line2);border-radius:0;padding:var(--sp-2) 0}
html[data-dev="phone"] body[data-page="commission"] .cm-kpis .kpi .l{white-space:normal}
html[data-dev="phone"] body[data-page="commission"] .cm-card .scroll{overflow:visible}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 th,html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 td{white-space:normal;padding:var(--sp-1h) var(--sp-2);overflow-wrap:anywhere}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 th:first-child,html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 td:first-child{padding-left:0}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 th:last-child,html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 td:last-child{padding-right:0}
html[data-dev="phone"] body[data-page="commission"] .cm-tbl2 thead th{background:none;border-bottom:1px solid var(--line)}
html[data-dev="phone"] body[data-page="commission"] .cm-in label,html[data-dev="phone"] body[data-page="commission"] .cm-in input,html[data-dev="phone"] body[data-page="commission"] .cm-in select{width:100%;max-width:none;min-width:0}
html[data-dev="phone"] body[data-page="commission"] .cm-hints .hl::before{font-size:var(--fs-xs)}

/* ═══ 短片工作台（clips）═══ 手機：任務磚兩格一行、字唔截（摺行）；稿件表＋詳情上下疊；動作列唔黐底（黐底會蓋住內容同底部導航爭位） */
html[data-dev="phone"] body[data-page="clips"] .cw-head{padding:var(--sp-4);gap:var(--sp-3)}
html[data-dev="phone"] body[data-page="clips"] .cw-head .meta{font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="clips"] .cw-head .acts{width:100%}
html[data-dev="phone"] body[data-page="clips"] .cw-head .acts .btn{flex:1 1 0}
html[data-dev="phone"] body[data-page="clips"] .cw-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}
html[data-dev="phone"] body[data-page="clips"] .cw-tile{min-height:44px}
html[data-dev="phone"] body[data-page="clips"] .cw-tile .t,html[data-dev="phone"] body[data-page="clips"] .cw-tile .w{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="clips"] .cw-tile .w{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.45}
html[data-dev="phone"] body[data-page="clips"] .cw-bar{gap:var(--sp-2);margin-bottom:var(--sp-2)}
html[data-dev="phone"] body[data-page="clips"] .cw-bar .dim{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="clips"] #cwSeg{flex:1 1 100%}
html[data-dev="phone"] body[data-page="clips"] .cw-side .tbl td.ttl small,html[data-dev="phone"] body[data-page="clips"] .cw-main .card>h2 .sub,html[data-dev="phone"] body[data-page="clips"] .cw-pgrid b,html[data-dev="phone"] body[data-page="clips"] .cw-sent .n,html[data-dev="phone"] body[data-page="clips"] .cw-sent .scene,html[data-dev="phone"] body[data-page="clips"] .cw-hv b,html[data-dev="phone"] body[data-page="clips"] .cw-topic .sig,html[data-dev="phone"] body[data-page="clips"] .cw-topic .act a,html[data-dev="phone"] body[data-page="clips"] .cw-cat h2 .sub{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="clips"] .cw-side .tbl th,html[data-dev="phone"] body[data-page="clips"] .cw-side .tbl td{padding-left:var(--sp-3);padding-right:var(--sp-3)}
html[data-dev="phone"] body[data-page="clips"] .cw-side .tbl tbody tr{cursor:pointer}
html[data-dev="phone"] body[data-page="clips"] .cw-main .card{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="clips"] .cw-main .card>h2{font-size:17px}
html[data-dev="phone"] body[data-page="clips"] .cw-main .card>h2 .sub{flex:1 1 100%}
html[data-dev="phone"] body[data-page="clips"] .cw-main input[type=text],html[data-dev="phone"] body[data-page="clips"] .cw-main select{min-height:44px;font-size:16px}
html[data-dev="phone"] body[data-page="clips"] .cw-main textarea{font-size:16px}
html[data-dev="phone"] body[data-page="clips"] .cw-sent{grid-template-columns:24px minmax(0,1fr)}
html[data-dev="phone"] body[data-page="clips"] .cw-sent .cmt{min-height:44px}
html[data-dev="phone"] body[data-page="clips"] .cw-check{min-height:44px}
html[data-dev="phone"] body[data-page="clips"] .cw-actions{position:static;flex-wrap:wrap;padding:var(--sp-3) 0 0}
html[data-dev="phone"] body[data-page="clips"] .cw-actions .msg{flex:1 1 100%;min-width:0;order:9}
html[data-dev="phone"] body[data-page="clips"] .cw-actions .btn.primary{flex:1 1 100%}
html[data-dev="phone"] body[data-page="clips"] .cw-tgrid{grid-template-columns:minmax(0,1fr)}
html[data-dev="phone"] body[data-page="clips"] .cw-topic .act a{display:inline-flex;align-items:center;min-height:44px}

/* ═══ 設定（settings：個人資料／通知／保安／理財假設／iPad 同步）═══ 卡內距 12；細字 ≥12；通知類型行摺行唔截字 */
html[data-dev="phone"] body[data-page="settings"] .st-head .meta{font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="settings"] .pr-card,html[data-dev="phone"] body[data-page="settings"] .nf-card,html[data-dev="phone"] body[data-page="settings"] .st-card{padding:var(--sp-3h) var(--sp-3)}
html[data-dev="phone"] body[data-page="settings"] .pr-card h2,html[data-dev="phone"] body[data-page="settings"] .nf-card > h2,html[data-dev="phone"] body[data-page="settings"] .st-card > h2{font-size:17px;flex-wrap:wrap}
html[data-dev="phone"] body[data-page="settings"] .pr-card h2 small{flex:1 1 100%}
html[data-dev="phone"] body[data-page="settings"] .pr-f .hint,html[data-dev="phone"] body[data-page="settings"] .pr-f .cnt,html[data-dev="phone"] body[data-page="settings"] .pr-avatar .note,html[data-dev="phone"] body[data-page="settings"] .nt-meta,html[data-dev="phone"] body[data-page="settings"] .nf-row .cad,html[data-dev="phone"] body[data-page="settings"] .nf-row .lock{font-size:var(--fs-xs)}
html[data-dev="phone"] body[data-page="settings"] .pr-f input,html[data-dev="phone"] body[data-page="settings"] .pr-f select{height:44px}
html[data-dev="phone"] body[data-page="settings"] .pr-avatar .row .btn{min-height:44px}
/* 通知類型一行：名｜開關 ／ 講咩（全句摺行）／ 幾時發＋提前幾耐 */
html[data-dev="phone"] body[data-page="settings"] .nf-row{flex-wrap:wrap;gap:var(--sp-1h) var(--sp-2);padding:var(--sp-2h) var(--sp-3)}
html[data-dev="phone"] body[data-page="settings"] .nf-row .nm{order:1;flex:1 1 0;min-width:0;white-space:normal}
html[data-dev="phone"] body[data-page="settings"] .nf-row .nf-sw{order:2}
html[data-dev="phone"] body[data-page="settings"] .nf-row .ds{order:3;flex:1 1 100%;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.5}
html[data-dev="phone"] body[data-page="settings"] .nf-row .cad{order:4}
html[data-dev="phone"] body[data-page="settings"] .nf-row select{order:5;font-size:16px;min-height:44px}
html[data-dev="phone"] body[data-page="settings"] .nf-row .lock{order:6}
html[data-dev="phone"] body[data-page="settings"] .nf-line{gap:var(--sp-2)}
html[data-dev="phone"] body[data-page="settings"] .nf-line .k{white-space:normal}
html[data-dev="phone"] body[data-page="settings"] .nf-line input[type=time]{min-height:44px;font-size:16px}
html[data-dev="phone"] body[data-page="settings"] .nf-actions .btn{flex:1 1 0}
html[data-dev="phone"] body[data-page="settings"] .nt-row{flex-direction:column;gap:var(--sp-2)}
html[data-dev="phone"] body[data-page="settings"] .nt-acts{justify-content:flex-start;width:100%}
html[data-dev="phone"] body[data-page="settings"] .nt-acts .btn{padding:0 var(--sp-3);font-size:var(--fs-sm)}
html[data-dev="phone"] body[data-page="settings"] .nf-prev .r{flex-wrap:wrap}
html[data-dev="phone"] body[data-page="settings"] .st-form{grid-template-columns:1fr}
html[data-dev="phone"] body[data-page="settings"] .st-form input{min-height:44px;font-size:16px}
html[data-dev="phone"] body[data-page="settings"] .st-card .sub a,html[data-dev="phone"] body[data-page="settings"] .pr-card .sub a{display:inline-flex;align-items:center;min-height:44px;margin:-12px 0;vertical-align:middle}
html[data-dev="phone"] body[data-page="settings"] .nf-card .seg button{min-height:44px}
/* 開關：樣子照 iOS 51×31，撳位 51×44（掣本身透明，軌同掣頭用 ::before／::after 畫） */
html[data-dev="phone"] :is(body[data-page="settings"],body[data-page="admin"]) .nf-sw{width:51px;height:44px;border:0;border-radius:0;background:transparent!important}
html[data-dev="phone"] :is(body[data-page="settings"],body[data-page="admin"]) .nf-sw::before{content:"";position:absolute;left:0;right:0;top:6.5px;height:31px;border-radius:var(--r-pill);background:var(--bg2);box-shadow:inset 0 0 0 1px var(--line);transition:background .15s}
html[data-dev="phone"] :is(body[data-page="settings"],body[data-page="admin"]) .nf-sw.on::before{background:var(--primary);box-shadow:none}
html[data-dev="phone"] :is(body[data-page="settings"],body[data-page="admin"]) .nf-sw::after{top:8.5px;left:2px;width:27px;height:27px;z-index:1}
html[data-dev="phone"] :is(body[data-page="settings"],body[data-page="admin"]) .nf-sw.on::after{transform:translateX(20px)}
html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools .search,html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools input[type=search]{width:100%;text-align:left}
html[data-dev="phone"] body[data-page="perf-import"] .mpf-tools .pf-note{text-align:left}
/* 要留意：每行一粒「已處理」實心掣 → 手機每畫面最多一粒實心（設計語言 v1），改次要樣 */
html[data-dev="phone"] body[data-page="settings"] .nt-acts .btn.primary{background:var(--card);color:var(--ink);border-color:var(--line)}
html[data-dev="phone"] main input::placeholder,html[data-dev="phone"] main textarea::placeholder{font-size:var(--fs-md)}   /* 輸入字 16px（防放大）；提示字 14px，長提示唔使截 */
/* 審查 🟡（10-29）：講解句手機收入 ⓘ 唔再剷 DOM —— 手機收埋原句；轉返 iPad／電腦由 team-phone.js th:device 清走 ⓘ、放返原句 */
html[data-dev="phone"] .pf-card > p.pf-note.tp-pnote{display:none}
