/* 建立圖控精靈（2026-10-21 重新設計：老闆定的四步主流程；深色、高對比、有立體層次；字級只用 14/16/18/22/24/28） */
.apw{--bg:#0a1220;--pan:#121f33;--pan2:#0e192a;--ln:#28405f;--ln2:#1c2e47;--tx:#eaf1f9;--tx2:#a9b9cc;--acc:#3b8cff;--acc2:#1f6fe0;--ok:#2fbf71;--warn:#ffb020;--bad:#ff4d4f;
  position:fixed;inset:0;z-index:9000;background:var(--bg);display:flex;flex-direction:column;font-family:"Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;color:var(--tx);font-size:16px;
  --run:#1fb14a;--stop:#6b7480;--fault:#e0262b;--nfb:#f2cc00;--pv:#7CFC00;--pvbg:#0f1720}
.apw{--k17294a:#17294a;--k0f1d36:#0f1d36;--k2f4d78:#2f4d78;--k22344f:#22344f;--k16263c:#16263c;--kcfeedd:#cfeedd;--k8fc0ff:#8fc0ff;--k24385a:#24385a;--k1a2b46:#1a2b46;--k35527c:#35527c;--k0d2340:#0d2340;--k2c5b94:#2c5b94;--kd6e6f8:#d6e6f8;--k1a2c48:#1a2c48;--k122036:#122036;--k2a4468:#2a4468;--k0b1626:#0b1626;--kcfe0f5:#cfe0f5;--k0f1b2d:#0f1b2d;--k0b1525:#0b1525;--k3d6aa6:#3d6aa6;--k1d3a66:#1d3a66;--k152b4b:#152b4b;--k18294a:#18294a;--k132239:#132239;--k0a1424:#0a1424;--k10301f:#10301f;--k1d3358:#1d3358;--k16284a:#16284a;--k9fc3ee:#9fc3ee;--k6f84a0:#6f84a0;--k17325a:#17325a;--k112544:#112544;--k7f93ad:#7f93ad;--kff7a7c:#ff7a7c;--k5fe39a:#5fe39a;--k1a2638:#1a2638;--k2c3e57:#2c3e57;--k8fa3bd:#8fa3bd}
/* 淺色（圖控切淺色佈景或精靈右上「深／淺色」） */
.apw.light{--bg:#eef2f7;--pan:#ffffff;--pan2:#f7f9fc;--ln:#b9c7d8;--ln2:#d9e1ec;--tx:#14202e;--tx2:#4a5b70;--k17294a:#ffffff;--k0f1d36:#eef2f7;--k2f4d78:#b6c6d9;--k22344f:#ffffff;--k16263c:#e9eef5;--kcfeedd:#1d6b40;--k8fc0ff:#1f5fbf;--k24385a:#ffffff;--k1a2b46:#e9eff6;--k35527c:#aebfd3;--k0d2340:#e7f0fd;--k2c5b94:#8fb3e4;--kd6e6f8:#1d3550;--k1a2c48:#ffffff;--k122036:#eef3f9;--k2a4468:#c3d0df;--k0b1626:#eef3f9;--kcfe0f5:#24405f;--k0f1b2d:#f4f7fb;--k0b1525:#e9eef5;--k3d6aa6:#7ea3d6;--k1d3a66:#dbe8fb;--k152b4b:#c9dcf7;--k18294a:#ffffff;--k132239:#f1f5fa;--k0a1424:#ffffff;--k10301f:#e3f6ea;--k1d3358:#e6eef9;--k16284a:#e3ebf6;--k9fc3ee:#2b5a8f;--k6f84a0:#6b7c90;--k17325a:#e3eefc;--k112544:#d3e3f8;--k7f93ad:#66788d;--kff7a7c:#c92a2a;--k5fe39a:#1a8a4a;--k1a2638:#eef1f5;--k2c3e57:#cfd8e3;--k8fa3bd:#7d8da1}
.apw.light .apwf,.apw.light .apwd,.apw.light .apind,.apw.light .apsys,.apw.light .apgrp,.apw.light .apbtn{box-shadow:0 2px 8px #1b2a4026,inset 0 1px 0 #ffffff}
.apw.light .apbtn.pri,.apw.light .apadv button.on,.apw.light .apspd button.on{color:#fff}
.apw.hidden{display:none}
.apw .sp{flex:1}
/* 上方：標題＋步驟條 */
.apwh{display:flex;align-items:center;gap:14px;background:linear-gradient(var(--k17294a),var(--k0f1d36));border-bottom:1px solid var(--k2f4d78);box-shadow:0 2px 10px #0008;padding:10px 18px;flex-wrap:wrap}
.apwh>b{font-size:22px;letter-spacing:1px}.apwsys{color:var(--tx2);font-size:16px}
.apwnav{display:flex;align-items:center;gap:0;flex-wrap:wrap}
.apwnav button{display:flex;align-items:center;gap:8px;background:none;border:0;color:var(--tx2);font:inherit;font-size:16px;padding:6px 10px;cursor:pointer;position:relative}
.apwnav button+button::before{content:"";width:22px;height:2px;background:var(--ln);margin-right:6px}
.apwnav button i{font-style:normal;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;background:linear-gradient(var(--k22344f),var(--k16263c));border:2px solid var(--ln);color:var(--tx2)}
.apwnav button.done i{background:linear-gradient(#2fbf71,#1d8f50);border-color:#57d78f;color:#fff}.apwnav button.done{color:var(--kcfeedd)}
.apwnav button.on i{background:linear-gradient(#5aa2ff,#1f6fe0);border-color:#9cc6ff;color:#fff;box-shadow:0 0 0 4px #3b8cff33}.apwnav button.on{color:#fff;font-weight:700}
.apwnav button.opt span{font-style:italic}
/* 主區 */
.apwb{flex:1;display:grid;grid-template-columns:minmax(460px,40%) 1fr;gap:14px;padding:14px;min-height:0}
.apw.nodiag .apwb{grid-template-columns:1fr}.apw.nodiag .apwd{display:none}
.apw.flowmode .apwb{grid-template-columns:340px 1fr}
.apwf,.apwd{display:flex;flex-direction:column;background:linear-gradient(var(--pan),var(--pan2));border:1px solid var(--ln2);border-radius:12px;box-shadow:0 8px 24px #0009,inset 0 1px 0 #ffffff12;min-height:0}
.apwform{flex:1;overflow:auto;padding:18px 22px}
.apwform h2{display:flex;align-items:center;gap:12px;margin:0 0 14px;font-size:24px}
.apwform h2 i{font-style:normal;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:18px;background:linear-gradient(#5aa2ff,#1f6fe0);box-shadow:0 2px 6px #0008}
.apwform h3{margin:20px 0 10px;font-size:18px;color:var(--k8fc0ff)}
.apwfoot{display:flex;padding:12px 18px;border-top:1px solid var(--ln2);gap:10px;flex-wrap:wrap}
.apbtn{background:linear-gradient(var(--k24385a),var(--k1a2b46));border:1px solid var(--k35527c);border-radius:8px;padding:8px 16px;font:inherit;font-size:16px;cursor:pointer;color:var(--tx);display:inline-flex;align-items:center;gap:6px;box-shadow:0 2px 4px #0006,inset 0 1px 0 #ffffff14}
.apbtn:hover{border-color:#5d86c0}.apbtn.pri{background:linear-gradient(#4a97ff,#1f6fe0);border-color:#7fb4ff;color:#fff;font-weight:700}
.apbtn.sm{padding:6px 12px;font-size:14px}.apbtn:disabled{opacity:.4;cursor:default}
.aptip{background:var(--k0d2340);border:1px solid var(--k2c5b94);border-left:4px solid var(--acc);border-radius:8px;padding:10px 14px;margin-bottom:16px;line-height:1.7;font-size:16px;color:var(--kd6e6f8)}
.apnote{color:var(--tx2);font-size:14px;line-height:1.6}
/* 1. 產業卡片 */
.apinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.apind{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:6px;background:linear-gradient(var(--k1a2c48),var(--k122036));border:2px solid var(--k2a4468);border-radius:14px;padding:18px;cursor:pointer;font:inherit;color:inherit;box-shadow:0 6px 16px #0008,inset 0 1px 0 #ffffff18;transition:.15s}
.apind:hover{border-color:#4f7fbf;transform:translateY(-2px)}.apind.on{border-color:var(--acc);box-shadow:0 0 0 3px #3b8cff55,0 6px 16px #0008}
.apind .ico{font-size:28px}.apind b{font-size:22px}.apind small{color:var(--tx2);font-size:16px}
.apind em{display:flex;flex-wrap:wrap;gap:6px;font-style:normal;margin-top:4px}.apind em u{text-decoration:none;background:var(--k0b1626);border:1px solid var(--k2f4d78);border-radius:12px;padding:2px 10px;font-size:14px;color:var(--kcfe0f5)}
.apcases{display:flex;flex-direction:column;gap:6px}.apcase{display:flex;align-items:center;gap:10px;background:var(--k0f1b2d);border:1px solid var(--ln2);border-radius:8px;padding:8px 12px}.apcase small{color:var(--tx2);flex:1;font-size:14px}
/* 2. 系統切換＋設備清單 */
.apsyss{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}.apsyss.col{flex-direction:column}
.apsys{display:flex;align-items:stretch;border:2px solid var(--k2a4468);border-radius:10px;overflow:hidden;background:var(--k0f1b2d);box-shadow:0 3px 8px #0007}
.apsys label{display:flex;align-items:center;gap:6px;padding:0 10px;background:var(--k0b1525);border-right:1px solid var(--k2a4468);font-size:14px;color:var(--tx2);cursor:pointer}
.apsys button{display:flex;align-items:center;gap:8px;background:none;border:0;color:var(--tx);font:inherit;font-size:16px;padding:9px 14px;cursor:pointer;text-align:left;flex:1}
.apsys.sel{border-color:var(--k3d6aa6)}.apsys.cur{border-color:var(--acc);background:linear-gradient(var(--k1d3a66),var(--k152b4b))}.apsys.cur button{font-weight:700}
.apsys .ico{font-size:18px}
.apeq{width:100%;border-collapse:separate;border-spacing:0 6px}.apeq th{text-align:left;font-size:14px;color:var(--tx2);font-weight:600;padding:0 10px}
.apeq td{background:linear-gradient(var(--k18294a),var(--k132239));padding:10px;border-top:1px solid var(--k2a4468);border-bottom:1px solid var(--k0a1424);vertical-align:middle}
.apeq td:first-child{border-radius:10px 0 0 10px;font-size:22px;width:40px;text-align:center;border-left:1px solid var(--k2a4468)}.apeq td:last-child{border-radius:0 10px 10px 0;border-right:1px solid var(--k2a4468)}
.apeq td b{display:block;font-size:18px}.apeq td small{color:var(--tx2);font-size:14px}
.apul{margin:0;padding-left:20px;line-height:1.8;color:var(--kd6e6f8)}
/* 4. 點位 */
.apsum2{background:var(--k0f1b2d);border:1px solid var(--ln);border-radius:8px;padding:10px 14px;margin:10px 0;font-size:16px}.apsum2 b{color:var(--k8fc0ff);font-size:18px;margin:0 4px}
.apmap tr.ok td{background:var(--k10301f)}.apmap input{width:100%;box-sizing:border-box}
.apadv{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.apadv button{background:var(--k0f1b2d);border:1px solid var(--k2f4d78);color:var(--tx2);border-radius:18px;padding:6px 14px;font:inherit;font-size:16px;cursor:pointer}.apadv button.on{background:linear-gradient(#4a97ff,#1f6fe0);color:#fff;border-color:#7fb4ff}
/* 表單元件 */
.aprow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0}
.apgrp{border:1px solid var(--ln);border-radius:12px;margin-bottom:14px;overflow:hidden;background:var(--k0f1b2d);box-shadow:0 4px 10px #0007}
.apgh{display:flex;align-items:center;gap:10px;background:linear-gradient(var(--k1d3358),var(--k16284a));padding:10px 14px;border-bottom:1px solid var(--ln)}.apgh b{font-size:18px}.apgh small{color:var(--tx2);font-size:14px}.apgh .ico{font-size:22px}
.apgrid{display:grid;grid-template-columns:170px 1fr;gap:10px 14px;padding:12px 14px;align-items:center}
.apgrid>label{color:var(--k9fc3ee);font-weight:600;font-size:14px;align-self:start;padding-top:6px}
.apgrid small{color:var(--tx2);font-size:14px}.apsubg{background:var(--k0b1525);border-radius:8px;padding:8px 10px;margin-top:4px;line-height:2.1}
.apw select,.apw input[type=text],.apw input[type=date]{font:inherit;font-size:16px;padding:6px 8px;border:1px solid var(--k35527c);border-radius:7px;background:var(--k0a1424);color:var(--tx);max-width:100%}.apw select.wide{min-width:280px}
.apw input::placeholder{color:var(--k6f84a0)}
.apnum{display:inline-flex;align-items:center;vertical-align:middle;margin:1px 2px}
.apnum button{width:30px;height:34px;border:1px solid var(--k35527c);background:linear-gradient(var(--k24385a),var(--k1a2b46));color:var(--tx);cursor:pointer;font-size:16px;padding:0}.apnum button:first-child{border-radius:7px 0 0 7px}.apnum button:nth-of-type(2){border-radius:0 7px 7px 0}
.apnum input{height:34px;box-sizing:border-box;border-radius:0!important;border-left:0!important;border-right:0!important;text-align:center}.apnum i{font-style:normal;color:var(--tx2);margin-left:6px;font-size:14px}
.apchk{display:flex;align-items:flex-start;gap:8px;margin:6px 0;cursor:pointer;flex-wrap:wrap}.apchk input{margin-top:4px;width:16px;height:16px}.apchk em{flex-basis:100%;font-style:normal;color:var(--tx2);font-size:14px;margin-left:24px}
.aprad{display:flex;gap:10px;flex-wrap:wrap}.aprad label{display:flex;flex-direction:column;gap:4px;border:2px solid var(--k2a4468);border-radius:10px;padding:10px 14px;cursor:pointer;min-width:200px;background:linear-gradient(var(--k18294a),var(--k132239));font-size:16px}
.aprad label.on{border-color:var(--acc);box-shadow:0 0 0 3px #3b8cff44}.aprad input{display:none}.aprad small{color:var(--tx2);font-size:14px}
.apord{display:inline-flex;align-items:center;gap:4px;margin-right:12px;white-space:nowrap}
.aptbl{width:100%;border-collapse:collapse;font-size:14px}.aptbl th{background:var(--k16284a);text-align:left;padding:7px 8px;font-weight:600;color:var(--k9fc3ee);border-bottom:1px solid var(--ln)}
.aptbl td{padding:6px 8px;border-bottom:1px solid var(--ln2);vertical-align:middle}.aptbl tr.off td{color:var(--k6f84a0)}.aptbl tr.off .apnum,.aptbl tr.off select{opacity:.45}.aptbl tr.dis td{opacity:.5}.aptbl tr.cust td{background:var(--k10301f)}
.apgrp>.apbtn{margin:10px 14px}
.apadd{border:2px solid var(--acc);border-radius:12px;padding:12px 14px;margin:12px 0;background:var(--k0d2340)}.apadd.hidden{display:none}.apadd h3{margin-top:0}
.appts{display:flex;flex-wrap:wrap;gap:6px;max-height:160px;overflow:auto;margin-top:8px}.appts button{font-size:14px;border:1px solid var(--k35527c);background:var(--k0a1424);color:var(--tx);border-radius:6px;padding:4px 8px;cursor:pointer;text-align:left}.appts button.on{background:var(--acc2);color:#fff}
.apq{background:var(--k0f1b2d);border:1px solid var(--ln2);border-radius:10px;padding:12px 14px;margin-bottom:12px}.apq>b{display:block;margin-bottom:8px}
.aphol{display:inline-flex;align-items:center;gap:4px;background:var(--k0a1424);border:1px solid var(--k35527c);border-radius:14px;padding:2px 6px 2px 10px;margin:2px;font-size:14px}.aphol button{border:0;background:none;cursor:pointer;color:var(--bad);font-size:16px}
.aplist{display:flex;flex-direction:column;gap:2px;margin-top:8px}.tag{font-style:normal;background:var(--k16284a);color:var(--k9fc3ee);border-radius:10px;padding:0 8px;font-size:14px}
.apsum{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.apsum div{background:linear-gradient(var(--k18294a),var(--k132239));border:1px solid var(--k2a4468);border-radius:10px;padding:8px;text-align:center}.apsum b{display:block;font-size:24px;color:var(--k8fc0ff)}.apsum small{color:var(--tx2);font-size:14px}
.apouts{display:flex;flex-direction:column;gap:8px}.apout{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--k0f1b2d);border:1px solid var(--ln2);border-radius:10px;padding:10px 14px}.apout>b{min-width:140px;font-size:16px}.apout small{flex:1;color:var(--tx2);min-width:160px;font-size:14px}
.apout.big{border:2px solid var(--acc);background:linear-gradient(var(--k17325a),var(--k112544))}.apout.big>b{font-size:18px}
.apok{background:var(--k10301f);border:1px solid #2fbf71;border-radius:10px;padding:10px 14px;margin-top:12px;display:flex;align-items:center;gap:12px}
.apw details summary{cursor:pointer;color:var(--k8fc0ff);font-size:14px;margin-top:6px}
/* 右邊：自動流程圖 */
.apwd{overflow:hidden}
.apwdh{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--ln2);flex-wrap:wrap}.apwdh b{font-size:18px}.apwdh small{color:var(--tx2);font-size:14px}
.apspd{display:inline-flex}.apspd button{border:1px solid var(--k35527c);background:linear-gradient(var(--k24385a),var(--k1a2b46));color:var(--tx);padding:5px 11px;cursor:pointer;font-size:14px}.apspd button:first-child{border-radius:7px 0 0 7px}.apspd button:last-child{border-radius:0 7px 7px 0}.apspd button.on{background:linear-gradient(#4a97ff,#1f6fe0);color:#fff;border-color:#7fb4ff}
.apwdt{display:flex;align-items:center;gap:16px;padding:8px 14px;font-size:14px;flex-wrap:wrap;background:var(--k0b1525);color:var(--tx2)}.apwdt input[type=range]{vertical-align:middle;width:180px}.apclk{font-variant-numeric:tabular-nums;color:var(--kcfe0f5);font-weight:600}.aphint{color:var(--tx2);font-size:14px}
.apwsvg{flex:1;min-height:0;overflow:auto;background:#0b1320}.apsvg{width:100%;height:auto;display:block}
.apwlog{height:150px;border-top:1px solid var(--ln2);display:flex;flex-direction:column}.apwlogh{padding:6px 14px;font-size:14px;color:var(--tx2);background:var(--k0b1525)}
.apwlog ol{list-style:none;margin:0;padding:4px 14px;overflow:auto;font-size:14px;flex:1}.apwlog li{padding:3px 0;border-bottom:1px dashed var(--ln2)}.apwlog time{color:var(--k7f93ad);margin-right:10px;font-variant-numeric:tabular-nums}
.apwlog li.lead{color:var(--k8fc0ff);font-weight:600}.apwlog li.bad{color:var(--kff7a7c);font-weight:600}.apwlog li.run{color:var(--k5fe39a)}
.apw.flowmode .apwlog{height:120px}
/* 小跳圖 */
.appop{position:absolute;z-index:5;width:340px;background:var(--pan);border:1px solid var(--k3d6aa6);border-radius:12px;box-shadow:0 10px 30px #000a;color:var(--tx)}.appop.hidden{display:none}
.apph{display:flex;align-items:center;gap:8px;background:linear-gradient(var(--k1d3a66),var(--k152b4b));padding:8px 12px;border-radius:12px 12px 0 0}.apph button{background:none;border:0;color:#fff;font-size:18px;cursor:pointer}
.appb{padding:10px 12px;font-size:14px}.appb button{border:1px solid var(--k35527c);background:linear-gradient(var(--k24385a),var(--k1a2b46));color:var(--tx);border-radius:7px;padding:5px 10px;margin:2px;cursor:pointer;font-size:14px}.appb button.on{background:#1fb14a;color:#fff;border-color:#178a3a}.appb button.on.bad{background:#e0262b;border-color:#b31d22}.appb button.pri{background:linear-gradient(#4a97ff,#1f6fe0);color:#fff}
.appb i.bad{color:var(--kff7a7c);font-style:normal;font-weight:700}.appb i.run{color:var(--k5fe39a);font-style:normal;font-weight:700}.apsub{margin:10px 0 4px;color:var(--tx2);font-size:14px}
.apw .blinkfill{animation:apblink 1s steps(2) infinite}@keyframes apblink{50%{opacity:.35}}
.apwtoast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--k1d3a66);border:1px solid #5d86c0;color:#fff;padding:10px 18px;border-radius:10px;opacity:0;transition:.25s;pointer-events:none;z-index:9100;font-size:16px}.apwtoast.show{opacity:1}.apwtoast.bad{background:#7a1518;border-color:#ff4d4f}
@media (max-width:900px){.apwb,.apw.flowmode .apwb{grid-template-columns:1fr;overflow:auto}.apwf{min-height:70vh}.apwd{min-height:80vh}.apgrid{grid-template-columns:1fr}.apsum{grid-template-columns:repeat(2,1fr)}.apw select.wide{min-width:0}.apwnav button span{display:none}.apwnav button.on span{display:inline}}
.aptbl td.apfn{min-width:170px}.aptbl td.apfn b{display:block;font-weight:600}.aptbl td.apfn small{color:var(--tx2);font-size:14px;line-height:1.4;display:block}

/* 精靈畫面：設備右上 R/A 小方塊字照字型標準（主畫面 1730 寬時顯示 14px） */
#apwiz small{font-size:14px}
#apwiz .apbtn:disabled{opacity:1;background:var(--k1a2638);border-color:var(--k2c3e57);color:var(--k8fa3bd);box-shadow:none;font-weight:400}
/* 沒選產業就按下一步 */
.apneed{background:#3a2a06;border:2px solid var(--warn);color:#ffd27a;border-radius:10px;padding:10px 14px;margin-bottom:14px;font-size:18px;font-weight:700}
.apinds.need .apind{border-color:var(--warn)}
.apw.light .apneed{background:#fff4dc;color:#7a4b00}
.apvrt{display:inline-block;background:var(--k0f1b2d);border:1px dashed var(--ln);border-radius:6px;padding:2px 10px;color:var(--tx2)}
/* 自動流程圖這步：上面一條（系統／頁面＋上一步下一步），下面流程圖整頁寬，字照 1:1 */
.apw.flowmode .apwb{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
.apw.flowmode .apwf{flex-direction:row;align-items:center;flex-wrap:wrap}
.apw.flowmode .apwform{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 14px;overflow:visible;flex:1}
.apw.flowmode .apwform h2{margin:0;font-size:22px}.apw.flowmode .apwform h2 i{width:32px;height:32px}
.apw.flowmode .apsyss{margin:0}.apw.flowmode .apsys button{padding:6px 12px}
.apflowsum{color:var(--tx2);font-size:16px}
.apw.flowmode .apwfoot{border-top:0;padding:8px 14px}
.apw.flowmode .apwdh small{display:none}
.apw.flowmode .apwlog{height:110px}
/* 手機：步驟條一行、設備表改直式卡片、表單不超出右邊 */
@media (max-width:900px){
  .apwh{padding:8px 10px;gap:8px}.apwh>b{font-size:18px}.apwsys{display:none}
  .apwnav button:not(.on){display:none}.apwnav button.on::before{display:none}.apwnav button.on span{display:inline}.apwnav button.on i::after{content:'/6';font-size:14px;margin-left:1px}.apwnav button.on i{width:auto;min-width:26px;padding:0 8px;border-radius:14px}
  .apwb{padding:8px;gap:8px}.apwf{min-width:0}.apwform{padding:12px;overflow-x:hidden}
  .apeq{border-spacing:0}.apeq thead{display:none}
  .apeq tr{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:linear-gradient(var(--k18294a),var(--k132239));border:1px solid var(--k2a4468);border-radius:10px;padding:8px;margin-bottom:8px}
  .apeq td{background:none!important;border:0!important;border-radius:0!important;padding:2px 4px;min-width:0}
  .apeq td:first-child{display:none}.apeq td:nth-child(2){grid-column:1/-1}
  .aprad label{min-width:0;flex:1 1 100%}
  .apw select{min-width:0!important;max-width:100%}.apgrid>div{min-width:0;overflow-wrap:anywhere}
  .apadv button{font-size:14px;padding:6px 10px}
  .apsys label{padding:0 6px}.apsys button{padding:8px 10px}
  .aptbl,.aptbl tbody{display:block}.aptbl thead{display:none}.aptbl tr{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;border-bottom:1px solid var(--ln);padding:6px 0}.aptbl td{border:0;padding:2px 4px;min-width:0;max-width:100%}.aptbl td.apfn{flex-basis:100%}
  .apwfoot .apbtn{flex:1 1 auto;justify-content:center}
  /* 自動流程圖這步：標題、系統鈕、摘要各占一整行，上一步／下一步在下面一排，流程圖緊接著 */
  .apw.flowmode .apwf{flex-direction:column;align-items:stretch;min-height:0}
  .apw.flowmode .apwform{flex:none;width:100%;box-sizing:border-box;gap:8px}
  .apw.flowmode .apwform h2{flex-basis:100%;white-space:nowrap}
  .apw.flowmode .apsyss{flex-basis:100%}.apw.flowmode .apsys button{white-space:nowrap}
  .apw.flowmode .apflowsum{flex-basis:100%}
  .apw.flowmode .apwfoot{width:100%;box-sizing:border-box}
}
.apw.light .apwnav button.on{color:var(--tx)}.apw.light .apwnav button.done{color:#1d6b40}
.apwtoast.bad{background:#5c3d00;border-color:var(--warn)}
/* 第6輪：字級照字型標準（欄位名 18px、手機 16px；表格內文 16px；虛擬點標籤 16px 對比加強）、完成頁統計卡自動排 */
.apgrid>label{font-size:18px}
.aptbl{font-size:16px}.apeq th{font-size:16px}.apsum small{font-size:16px}.apsys label{font-size:16px}
.apsum{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}
.apvrt{font-size:16px;font-weight:700;color:var(--k9fc3ee);border:1px solid var(--k2f4d78);background:var(--k16284a)}
.apw .apwform{padding-bottom:88px}
@media (max-width:900px){.apgrid>label{font-size:16px}.apadv button{font-size:16px}.apsum{grid-template-columns:repeat(2,1fr)}}
svg.apico{width:84px;height:54px;display:block}
/* 第7輪：自動流程圖預覽整張放進框裡（不切下緣）；手機改成原尺寸左右滑；設備小圖墊淺底，深色模式也看得清楚 */
.apw.flowmode .apwsvg{overflow:hidden}.apw.flowmode .apsvg{width:100%;height:100%}
svg.apico{background:linear-gradient(#f4f7fb,#dfe6ef);border:1px solid var(--ln);border-radius:8px;padding:3px;box-sizing:border-box}
.apswipe{display:none}
@media (max-width:900px){
  .apw.flowmode .apwsvg{overflow:auto;-webkit-overflow-scrolling:touch}.apw.flowmode .apsvg{width:1700px;height:auto;max-width:none}
  .apw.flowmode .apwd{min-height:0}.apw.flowmode .apwsvg{height:auto;flex:none;max-height:none}
  .apw.flowmode .apswipe{display:block;padding:6px 14px;color:var(--tx2);font-size:16px}
}
#main svg.aplscr .lr, #main svg.aplscr .am { font-size: 15.54px; }

/* 圖片匯入（第 1 步）：左圖右清單；點圖標設備 */
.apimgwrap{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,2fr);gap:14px;margin:10px 0 4px}
.apimgbox{position:relative;align-self:start;border:1px solid var(--ln);border-radius:8px;overflow:hidden;background:var(--pan2)}
.apimgbox img{display:block;width:100%;height:auto;cursor:crosshair}
.apimgbox.none{padding:14px}
.apimgpt{position:absolute;transform:translate(-50%,-50%);background:var(--acc2);color:#fff;font-size:14px;font-weight:700;padding:1px 6px;border-radius:6px;border:2px solid #fff;pointer-events:none;white-space:nowrap}
.apimgpt.pend{background:var(--warn);color:#1a1200}
.apimgside{min-width:0;display:flex;flex-direction:column;gap:8px}
.apimglist{margin:0;padding-left:22px;max-height:260px;overflow:auto;font-size:14px}.apimglist li{display:flex;align-items:center;gap:8px;padding:2px 0}.apimglist li .apbtn{margin-left:auto}
.apimgsum{background:var(--pan2);border:1px solid var(--ln2);border-radius:8px;padding:8px 12px;font-size:16px;line-height:1.6}
.apimgbad{color:var(--warn);font-size:14px;margin-top:4px}
.apimgck{margin-top:8px;background:var(--pan2);border:1px solid var(--warn);border-radius:8px;padding:8px 12px;font-size:16px}.apimgck.ok{border-color:var(--ok)}.apimgck small{display:block;color:var(--tx2);font-size:14px;margin-top:2px}
@media (max-width:900px){.apimgwrap{grid-template-columns:1fr}}
