/* 沿用 mailbot 的低清 wireframe 外觀（灰階線框），只換內容 */
:root{
  --bg:#f2f4f7; --paper:#fbfcfd;
  --line:#c3c8d0; --line-soft:#e3e7ec; --fill:#e4e8ee;
  --ink:#495057; --soft:#6b7280; --faint:#9aa2ad;
  --b:#3b5bdb; --b-soft:#f2f5fc; --b-line:#c7d2fe;     /* 商業 */
  --n:#e8590c; --n-soft:#fbf6f2; --n-line:#ffd8a8;     /* 非商業 */
  --ok:#2b8a3e; --ok-soft:#ebfbee; --warn:#c92a2a; --warn-soft:#fff5f5; --amb:#b7791f; --amb-soft:#fff8e6;
}
*{box-sizing:border-box;}
html{scrollbar-gutter:stable;}
[hidden]{display:none !important;}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;font-size:14px;}

.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;
  gap:12px;padding:10px 18px;background:var(--bg);border-bottom:1.5px solid var(--line);flex-wrap:wrap;}
.brand{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.brand strong{font-size:15px;letter-spacing:.02em;}
.ver,.mailbox{font-size:11.5px;color:var(--faint);font-family:Consolas,monospace;}
.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto;}
.counts{font-size:12.5px;color:var(--soft);}
.nlabel{font-size:12.5px;color:var(--soft);}
.runbox+.runbox{margin-top:10px;}
.runbox{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--paper);border:1.5px solid var(--line);border-radius:8px;padding:12px 14px;}
.nlabel input{width:64px;padding:3px 6px;border:1.5px solid var(--line);border-radius:6px;font:inherit;}

.btn{border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:7px;
  padding:5px 12px;font-size:12.5px;cursor:pointer;font-family:inherit;}
.btn:hover{background:#eef1f5;}
.btn:disabled{opacity:.55;cursor:default;}
.btn.primary{background:#e9edf5;border-color:#aab4c6;font-weight:700;color:#39424f;}
.btn.primary:hover{background:#dfe4ee;}
.btn:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--b);outline-offset:1px;}

main{padding:12px 18px 40px;}
.hint{background:var(--paper);border:1.5px dashed var(--line);border-radius:8px;padding:9px 12px;
  font-size:12.5px;color:var(--soft);line-height:1.7;margin-bottom:10px;}
.hint b{color:var(--ink);}

.tabs{display:flex;gap:4px;border-bottom:1.5px solid var(--line);margin-bottom:10px;}
.tab{border:1.5px solid var(--line);border-bottom:none;background:#eef1f5;color:var(--soft);
  padding:6px 14px;border-radius:8px 8px 0 0;cursor:pointer;font:inherit;font-size:13px;}
.tab.on{background:var(--paper);color:var(--ink);font-weight:700;}

.prog{background:var(--paper);border:1.5px solid var(--line);border-radius:8px;padding:8px 12px;margin-bottom:10px;}
.prog-head{display:flex;gap:10px;align-items:baseline;font-size:12.5px;}
.prog-title{font-weight:700;}
.prog-meta{color:var(--soft);flex:1;}
.prog-x{border:none;background:none;cursor:pointer;color:var(--soft);font-size:14px;}
.prog-bar{height:6px;background:var(--fill);border-radius:3px;margin-top:6px;overflow:hidden;}
.prog-fill{height:100%;width:0;background:#8796b0;transition:width .3s;}

.filters{display:flex;gap:8px;align-items:center;margin-bottom:8px;flex-wrap:wrap;}
.filters select,.filters input{border:1.5px solid var(--line);border-radius:7px;padding:5px 8px;font:inherit;font-size:13px;background:#fff;}
.filters input{min-width:200px;}
.fcount{font-size:12.5px;color:var(--soft);}
.pager{margin-left:auto;display:flex;gap:2px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--soft);
  font-variant-numeric:tabular-nums;}
.lnk{border:none;background:none;padding:2px 6px;font:inherit;color:var(--b);cursor:pointer;border-radius:4px;}
.lnk:hover{text-decoration:underline;}
.lnk:disabled{color:var(--faint);cursor:default;text-decoration:none;}
.pgcur{padding:2px 6px;font-weight:700;color:var(--ink);}
.qsum{font-size:12.5px;color:var(--ink);}
.qsum .lnk{color:var(--soft);padding:0 4px;}
/* 查詢彈出視窗 */
.qdlg{border:1.5px solid var(--line);border-radius:12px;padding:0;background:var(--paper);color:var(--ink);
  width:min(440px,calc(100vw - 32px));}
.qdlg::backdrop{background:rgba(57,66,79,.35);}
.qdlg form{display:flex;flex-direction:column;gap:12px;padding:18px 20px 16px;}
.qdlg h3{margin:0;font-size:15px;}
.qdlg .field select,.qdlg .drange input{border:1.5px solid var(--line);border-radius:7px;padding:7px 8px;font:inherit;
  font-size:13.5px;font-weight:400;color:var(--ink);background:#fff;}
.qdlg .drange{display:flex;gap:6px;align-items:center;}
.qdlg .drange input{flex:1;min-width:0;}
.fhint{font-weight:400;font-size:11.5px;color:var(--faint);}
.qerr{background:var(--warn-soft);border:1px solid #f0a9a9;color:var(--warn);border-radius:7px;padding:6px 10px;font-size:12.5px;}
.qbtns{display:flex;gap:8px;align-items:center;}
.qbtns .sp{flex:1;}

.listwrap{background:var(--paper);border:1.5px solid var(--line);border-radius:8px;overflow:auto;max-height:calc(100vh - 170px);}
table.list{border-collapse:collapse;width:100%;font-size:12.5px;}
.list th{position:sticky;top:0;background:#eef1f5;text-align:left;font-weight:600;color:var(--soft);
  padding:7px 8px;border-bottom:1.5px solid var(--line);white-space:nowrap;}
.list td{padding:6px 8px;border-bottom:1px dashed var(--line-soft);vertical-align:top;}
.list tr{cursor:pointer;}
.list tbody tr:hover{background:#f5f7fa;}
.list tr.sel{background:var(--b-soft);}
.c-date{white-space:nowrap;width:1%;font-family:Consolas,monospace;font-size:11.5px;color:var(--soft);}
.c-from{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.subj{overflow-wrap:anywhere;min-width:260px;}
table.list{min-width:860px;}

.tag{display:inline-block;font-size:11.5px;padding:1px 7px;border-radius:999px;border:1px solid var(--line);white-space:nowrap;}
.tag.biz{background:var(--b-soft);border-color:var(--b-line);color:var(--b);}
.tag.non{background:var(--n-soft);border-color:var(--n-line);color:var(--n);}
.tag.unk{background:#f1f3f5;color:var(--soft);}
.tag.auto{background:var(--ok-soft);border-color:#b2f2bb;color:var(--ok);}
.tag.review{background:var(--amb-soft);border-color:#ffe08a;color:var(--amb);}
.tag.human{background:var(--warn-soft);border-color:#f0a9a9;color:var(--warn);}
.tag.err{background:var(--warn-soft);border-color:#f0a9a9;color:var(--warn);}
.tag.lab-ok{background:var(--ok-soft);border-color:#b2f2bb;color:var(--ok);}
.tag.lab-bad{background:var(--warn-soft);border-color:#f0a9a9;color:var(--warn);}
.tag.ai{background:var(--n-soft);border-color:var(--n-line);color:var(--n);}   /* AI 判定：一律橘色，不分商業／非商業 */
.tag.mine{background:#e7f5ff;border-color:var(--b);color:var(--b);font-weight:700;}   /* 你標的：與詳情裡的藍框按鈕同色 */
.prob{font-family:Consolas,monospace;font-variant-numeric:tabular-nums;}

/* 信件詳情彈出視窗 */
.ddlg{border:1.5px solid var(--line);border-radius:12px;padding:0;background:var(--paper);color:var(--ink);
  width:min(1240px,calc(100vw - 32px));height:calc(100vh - 48px);max-height:none;overflow:hidden;}
.ddlg[open]{display:flex;flex-direction:column;}
.ddlg::backdrop{background:rgba(57,66,79,.35);}
.ddlg-x{position:absolute;top:10px;right:12px;font-size:16px;color:var(--soft);z-index:2;}
/* 詳情：上標題、中間左右對照（各自捲動）、下標註 */
.detail{flex:1;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;}
.dhead{padding:14px 48px 10px 20px;border-bottom:1.5px dashed var(--line);}
.dhead h3{margin:0 0 4px;font-size:16px;overflow-wrap:anywhere;}
.dcols{display:grid;grid-template-columns:57% 43%;min-height:0;}
.dleft,.dright{overflow:auto;padding:12px 18px;min-width:0;}
.dright{border-left:1.5px dashed var(--line);background:#f6f8fa;}
@media (max-width:900px){.dcols{grid-template-columns:1fr;overflow:auto}.dleft,.dright{overflow:visible}.dright{border-left:0;border-top:1.5px dashed var(--line);}}
.dleft pre.body{max-height:none;font-size:13px;line-height:1.75;}
.atts{margin-bottom:10px;font-size:12.5px;color:var(--soft);}
.att{display:inline-block;border:1.5px solid var(--line);border-radius:6px;padding:1px 8px;margin:0 0 4px 6px;background:#fff;color:var(--ink);}
mark{background:#fff3bf;color:inherit;border-bottom:2px solid #fab005;border-radius:2px;padding:0 1px;cursor:pointer;}
mark.act{background:#ffe066;outline:2px solid #f08c00;}
details.quote{margin-top:12px;border:1.5px dashed var(--line);border-radius:8px;padding:6px 10px;}
details summary{cursor:pointer;color:var(--soft);font-size:12.5px;}
.fact{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:8px;align-items:start;background:#fff;
  border:1.5px solid var(--line-soft);border-radius:8px;padding:7px 10px;margin-bottom:7px;cursor:pointer;font-size:13px;}
.fact:hover{border-color:var(--line);}
.fact.act{border-color:#f08c00;box-shadow:0 0 0 2px #ffe066;}
.fact .k{color:var(--soft);font-size:12px;}
.fact .v{overflow-wrap:anywhere;}
.src{font-size:11.5px;color:var(--ok);white-space:nowrap;}
.src.no{color:var(--warn);font-weight:700;}
.meta.warn{color:var(--warn);}
.dfoot{border-top:1.5px dashed var(--line);padding:9px 18px 10px;display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;
  font-size:12.5px;max-height:40vh;overflow:auto;}
.dfoot>b{padding-top:3px;}
.dfoot .labgrid{flex:1;min-width:0;}
.dfoot .more{width:100%;display:flex;gap:18px;flex-wrap:wrap;}
.dfoot details[open]{width:100%;}
.chipbtn{border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:2px 9px;font:inherit;font-size:12px;cursor:pointer;color:var(--ink);}
.chipbtn:focus-visible{outline:2px solid var(--b);outline-offset:1px;}
.chipbtn.ai{background:#fff4e6;border-color:#ffc078;}
.chipbtn.on{border-color:var(--b);color:var(--b);font-weight:700;box-shadow:inset 0 0 0 1px var(--b);}
.chipbtn.on:not(.ai){background:#e7f5ff;}
.c-open{width:1%;white-space:nowrap;}
.c-open .lnk{padding:0 2px;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.detail .empty{color:var(--faint);font-size:13px;padding:30px 0;text-align:center;}
.detail h3{margin:0 0 4px;font-size:15px;overflow-wrap:anywhere;}
.meta{font-size:12px;color:var(--soft);line-height:1.7;overflow-wrap:anywhere;}
.box{border:1.5px solid var(--line-soft);border-radius:8px;padding:9px 11px;margin-top:10px;}
.box h4{margin:0 0 6px;font-size:12.5px;color:var(--soft);font-weight:700;letter-spacing:.02em;}
.bars{display:grid;grid-template-columns:auto 1fr auto;gap:4px 8px;align-items:center;font-size:12.5px;}
.bar{height:8px;background:var(--fill);border-radius:4px;overflow:hidden;}
.bar i{display:block;height:100%;background:#8796b0;}
.labgrid{display:flex;flex-wrap:wrap;gap:5px;}
.labgrid .btn{padding:3px 9px;font-size:12px;}
.labgrid .btn.ai{background:#fff4e6;border-color:#ffc078;color:var(--n);}                 /* AI 判定：淡橘 */
.labgrid .btn.on{border-color:var(--b);color:var(--b);font-weight:700;box-shadow:inset 0 0 0 1px var(--b);}  /* 你標的：藍框 */
.labgrid .btn.on:not(.ai){background:#e7f5ff;}
.lablegend{float:right;font-weight:400;font-size:11.5px;color:var(--soft);display:inline-flex;align-items:center;gap:4px;}
.lablegend .sw{display:inline-block;width:12px;height:12px;border-radius:3px;border:1.5px solid;}
.lablegend .sw.ai{background:#fff4e6;border-color:#ffc078;}
.lablegend .sw.on{background:#e7f5ff;border-color:var(--b);margin-left:6px;}
.bars span.yes{font-weight:700;color:var(--ink);}
.c-ai .tag{margin:0 3px 3px 0;}
.c-ai{min-width:150px;}
.c-ai .mine-row{margin-top:2px;}   /* AI 判定在上、你標的在下 */
dl.facts{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;margin:0;font-size:12.5px;}
dl.facts dt{color:var(--soft);white-space:nowrap;}
dl.facts dd{margin:0;overflow-wrap:anywhere;}
dl.facts ul{margin:0;padding-left:1.1em;}
pre.body{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12.5px;line-height:1.6;margin:0;max-height:340px;overflow:auto;}
pre.body.q{color:var(--faint);}

/* 登入者與登出 */
.whoami{font-size:12.5px;color:var(--soft);}
.whoami b{color:var(--ink);}

/* 登入頁 */
body.login-page{min-height:100vh;display:flex;}
.login-wrap{flex:1;display:flex;align-items:center;justify-content:center;
  padding:24px max(16px,env(safe-area-inset-right,0px)) 24px max(16px,env(safe-area-inset-left,0px));}
.login-card{width:100%;max-width:360px;background:var(--paper);border:1.5px solid var(--line);border-radius:12px;
  padding:26px 26px 20px;display:flex;flex-direction:column;gap:12px;}
.login-brand{display:flex;align-items:baseline;gap:10px;}
.login-brand strong{font-size:19px;letter-spacing:.04em;}
.field{display:flex;flex-direction:column;gap:5px;font-size:12.5px;color:var(--soft);font-weight:600;}
.field input{border:1.5px solid var(--line);border-radius:7px;padding:8px 10px;font:inherit;font-size:14px;
  font-weight:400;color:var(--ink);background:#fff;}
.field input:focus-visible{outline:2px solid var(--b);outline-offset:1px;border-color:var(--b-line);}
.login-err{background:var(--warn-soft);border:1px solid #f0a9a9;color:var(--warn);border-radius:7px;
  padding:7px 10px;font-size:12.5px;}
.login-btn{padding:8px 12px;font-size:14px;}

.toast{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:max(18px,env(safe-area-inset-bottom,0px));
  background:#39424f;color:#fff;padding:9px 14px;border-radius:8px;font-size:13px;max-width:420px;}

/* ERP 採購對帳 */
.recon{margin-top:10px;background:var(--paper);border:1.5px solid var(--line);border-radius:8px;padding:10px 14px;}
.recon-head{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;}
.rok{color:var(--ok);font-weight:700;}
.rbad{color:var(--warn);font-weight:700;}
.recon-list{margin-top:8px;}
.recon-list summary{cursor:pointer;color:var(--b);font-size:13px;}
.rtab{border-collapse:collapse;font-size:12.5px;margin:4px 0 10px;}
.rtab th,.rtab td{border:1px solid var(--line-soft);padding:3px 8px;text-align:left;}
.rtab th{background:var(--fill);font-weight:600;}

/* ERP 採購頁籤 */
.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
.list th.num{text-align:right;}
.nowrap{white-space:nowrap;}
.faint{color:var(--faint);}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:1px;}
.dot.red{background:var(--warn);}
.polist{min-width:980px;}
.field.checks{gap:6px;font-weight:400;color:var(--ink);}
.field.checks label{display:flex;gap:6px;align-items:center;}
.pdlg{border:1.5px solid var(--line);border-radius:12px;padding:0;background:var(--paper);color:var(--ink);
  width:min(1000px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;}
.pdlg::backdrop{background:rgba(57,66,79,.35);}
.pcols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:0;}
.pcols>div{padding:12px 18px;}
.pcols>div+div{border-left:1.5px dashed var(--line);background:#f6f8fa;}
@media (max-width:800px){.pcols{grid-template-columns:1fr}.pcols>div+div{border-left:0;border-top:1.5px dashed var(--line);}}
.pcols h4{margin:4px 0 6px;font-size:13.5px;}
.pcols h4+table,.pcols h4+p{margin-top:0;}
table.kv{border-collapse:collapse;font-size:13px;margin-bottom:12px;width:100%;}
table.kv th{text-align:left;font-weight:400;color:var(--soft);padding:3px 12px 3px 0;white-space:nowrap;width:1%;vertical-align:top;}
table.kv td{padding:3px 0;overflow-wrap:anywhere;}
.rtab.chain{width:100%;background:#fff;}
.rtab tr.sum td{font-weight:700;border-top:1.5px solid var(--line);}
.rtab td.num,.rtab th.num{text-align:right;}
.rtab td.from{color:var(--soft);white-space:nowrap;}
/* 詳情：一個視窗＝一張單；上方料號表固定高度、自己捲動，點一列在下方看那個料號 */
.blines{max-height:240px;overflow:auto;padding:0 18px 4px;border-bottom:1.5px dashed var(--line);}
.rtab.bl{width:100%;background:#fff;margin:10px 0 8px;}
.rtab.bl thead th{position:sticky;top:0;}
.rtab.bl tbody tr{cursor:pointer;}
.rtab.bl tbody tr:hover{background:#f5f7fa;}
.rtab.bl tbody tr.on td{background:var(--b-soft);color:var(--b);font-weight:700;}
.rtab.bl tbody tr:focus-visible{outline:2px solid var(--b);outline-offset:-2px;}
.warn-ico{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;
  background:var(--warn);color:#fff;font-weight:700;font-size:11.5px;line-height:1;cursor:help;vertical-align:-2px;}
.warn-ico:focus-visible{outline:2px solid var(--b);outline-offset:1px;}
/* 庫存頁籤 */
.old{display:inline-block;padding:0 6px;border-radius:4px;font-size:11.5px;background:var(--amb-soft);color:var(--amb);border:1px solid #ffe08a;}
.rtab tr.zero td{color:var(--faint);}
/* 定時執行頁 */
.runmode .rmode{display:inline-flex;gap:6px;align-items:center;font-size:13.5px;cursor:pointer;}
.runmode .sp{width:28px;}
.runsteps{display:block;}
.rtab.steps{width:100%;margin:8px 0 6px;background:#fff;}
.rtab.steps td{padding:6px 10px;}
.rtab.steps td.sicon{width:28px;text-align:center;font-weight:700;}
.ramb{color:var(--amb);font-weight:700;}
.rtab.steps .prog-bar{height:8px;margin:2px 0 3px;max-width:420px;}
.rtab.steps .prog-fill{background:var(--ok);}
.rtab.steps .step-plabel{font-size:12px;color:var(--soft);}
.prog-bar.ind .prog-fill{animation:pind 1.3s ease-in-out infinite;transition:none;}
@keyframes pind{0%{margin-left:-30%}100%{margin-left:100%}}
/* Log 查詢 */
.runsteps .recon-head #btnRunLog{margin-left:auto;}
.logwrap{padding:10px 18px 16px;max-height:calc(100vh - 160px);overflow:auto;}
.rtab.logtab{width:100%;background:#fff;}
.rtab.logtab thead th{position:sticky;top:0;z-index:1;}
.rtab.logtab td.sicon,.rtab.logtab th.sicon{width:30px;text-align:center;}
.rtab.logtab tr.logrow{cursor:pointer;}
.rtab.logtab tr.logrow:hover td{background:#f5f7fa;}
.rtab.logtab tr.logrow.on td{background:var(--b-soft);}
.rtab.logtab tr.logrow:focus-visible{outline:2px solid var(--b);outline-offset:-2px;}
.rtab.logtab tr.logdetail>td{background:#f6f8fa;}
.rtab.logtab .logtg{color:var(--b);font-size:12px;text-align:right;}
.rtab.logtab tr.logrow:hover .logtg{text-decoration:underline;}
.rtab.logtab tr.logdetail .rtab.steps{margin:4px 0;}
/* 規格書確認視窗 */
.cfcols{flex:1;min-height:0;display:grid;grid-template-columns:52% 48%;}
.cfleft{display:flex;flex-direction:column;min-height:0;border-right:1.5px dashed var(--line);}
.cfleft iframe{flex:1;border:0;width:100%;min-height:0;background:#525659;}
.cfquote{padding:6px 12px;border-bottom:1px dashed var(--line);background:#fffdf3;}
.cfquote mark{cursor:default;}
.cfright{overflow:auto;padding:10px 16px;}
.cfright h4{margin:10px 0 4px;font-size:13.5px;}
.cfright table{width:100%;border-collapse:collapse;font-size:12.5px;}
.cfright td{border-bottom:1px dashed var(--line-soft);padding:3px 4px;vertical-align:middle;}
.cfright td.k{width:30%;color:var(--soft);cursor:pointer;white-space:nowrap;}
.cfright td.k:hover{color:var(--b);text-decoration:underline;}
.cfright td.pg{width:14%;color:var(--faint);font-size:11.5px;white-space:nowrap;cursor:pointer;}
.cfright input{width:100%;border:1.5px solid var(--line);border-radius:6px;padding:4px 7px;font:inherit;font-size:12.5px;}
.cfright tr.chk td{background:var(--amb-soft);}
.cfright tr.on td{background:var(--b-soft);}
.cfright .req{color:var(--warn);font-weight:700;}
.cfright input.miss{border-color:var(--warn);background:var(--warn-soft);}
.cffoot{border-top:1.5px dashed var(--line);padding:8px 16px 10px;font-size:12.5px;}
.cffoot .rels label{margin-right:14px;}
.cffoot select{font:inherit;font-size:12.5px;}
@media (max-width:900px){.cfcols{grid-template-columns:1fr;overflow:auto}.cfleft{height:60vh;border-right:0}}
/* 規格書詳情 */
.spsec{padding:8px 18px 10px;}
.spsec+.spsec{border-top:1.5px dashed var(--line);}
.spsec h4{margin:4px 0 6px;font-size:13.5px;}
.rtab.spv{width:100%;background:#fff;}
.rtab.spv tr.copy td{color:var(--soft);font-size:11.5px;}
.rtab.spv tr.copy td:first-child{padding-left:18px;}
.rtab.cmp{width:100%;background:#fff;table-layout:fixed;}
.rtab.cmp td,.rtab.cmp th{overflow-wrap:anywhere;}
.rtab.cmp tr.df td{background:var(--amb-soft);}
.rtab.erpc tr.bad td{color:var(--warn);font-weight:700;}
.pg-lk{font-size:11px;margin-left:4px;}
.pill-new{display:inline-block;font-size:11px;padding:0 6px;border-radius:999px;background:var(--b-soft);color:var(--b);border:1px solid var(--b-line);}

/* 問答頁籤 */
.qa-box{background:var(--paper);border:1.5px solid var(--line);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;min-height:calc(100vh - 140px);}
.qa-head{display:flex;align-items:center;gap:8px;}
.qa-head .sp,.qa-foot .sp{flex:1;}
.qa-thread{flex:1;display:flex;flex-direction:column;gap:10px;}
.qa-q{align-self:flex-end;max-width:75%;background:var(--b-soft);border:1.5px solid var(--b-line);border-radius:8px;padding:8px 12px;white-space:pre-wrap;}
.qa-a{max-width:92%;border:1.5px solid var(--line);border-radius:8px;padding:10px 12px;background:#fff;}
.qa-wait{color:var(--soft);}
.qa-err{color:var(--warn);}
.qa-a.qa-err{background:var(--warn-soft);border-color:#ffc9c9;}
.qa-text{line-height:1.7;}
.qa-warn{margin:6px 0;padding:4px 8px;background:var(--amb-soft);color:var(--amb);border-radius:6px;font-size:12.5px;}
.qa-res{margin-top:8px;}
.qa-tw{overflow-x:auto;}
.qa-res .rtab td.num{text-align:right;}
.qa-src{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;}
.qa-chip{border:1.5px solid var(--b-line);border-radius:6px;font-size:12px;}
.qa-how{margin-top:6px;font-size:12.5px;color:var(--soft);}
.qa-how summary{cursor:pointer;}
.qa-how ul{margin:4px 0;padding-left:18px;}
.qa-foot{display:flex;align-items:center;gap:6px;margin-top:8px;}
.qa-fb.on{background:var(--fill);font-weight:700;}
.qa-ask{display:flex;gap:8px;align-items:flex-end;}
.qa-ask textarea{flex:1;resize:vertical;padding:8px 10px;border:1.5px solid var(--line);border-radius:7px;font:inherit;}
