/* overrides.css：由 index.html 內嵌樣式按原有順序搬出（層疊順序不變）。 */

/* ---- id="uph-company-tag" ---- */
.company-tag{display:inline-block;margin-top:4px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.5}.company-tag.xs{background:#e6f0fb;color:#17497a;border:1px solid #b9d2ee}.company-tag.sh{background:#fff0dc;color:#8a4b08;border:1px solid #f0cd9d}

/* ---- main ---- */
.txn-method{font-weight:700;font-size:13px;color:var(--mute);margin-right:auto}.txn-product{margin:6px 0 0;font-size:14px;line-height:1.45;overflow-wrap:anywhere}.txn-product span{color:var(--mute)}.date-block{margin-bottom:6px}.date-block .field-hint{margin:6px 0}

/* ---- id="uph-bank-rows" ---- */
.bank-card{margin:8px 0}.bank-row{display:grid;grid-template-columns:130px 1fr;gap:8px;padding:2px 0;font-size:13px;word-break:break-all}#bankForm h4{margin:14px 0 6px}

/* ---- id="uph-mobile-polish" ---- */
/* 手機版整理：多選篩選不超出畫面、按鈕夠大、採購入庫產品改卡片 */
.items-wrap,.mv-wrap,.permission-table-wrap,.table-wrap{background:linear-gradient(90deg,#fff 30%,#fff0),linear-gradient(90deg,#fff0,#fff 70%) 100% 0,radial-gradient(farthest-side at 0 50%,#102b4e2e,#0000),radial-gradient(farthest-side at 100% 50%,#102b4e2e,#0000) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}
@media(max-width:820px){
 .multi-select{max-width:100%;width:100%}.multi-select>summary{max-width:none}
 .multi-options{position:static;min-width:0;max-width:100%;box-shadow:none;margin-top:6px}
 main button,main select,main summary,main input:not([type=checkbox]):not([type=radio]){min-height:44px}
 main input[type=checkbox],main input[type=radio]{min-width:22px;min-height:22px}
 table.rc-po{min-width:0!important;display:block}table.rc-po thead{display:none}table.rc-po tbody{display:block}
 table.rc-po tr.rc-card{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:14px;margin:0 0 12px;border:1px solid #d5deea;border-radius:12px;background:#fff}
 table.rc-po td{display:block;padding:0;border:0;min-width:0}
 table.rc-po td::before{content:attr(data-l);display:block;font-size:12px;color:#6b7a8f;margin-bottom:3px}
 table.rc-po td.is-empty{display:none}
 table.rc-po td[data-l="已到貨"],table.rc-po td[data-l="產品名稱"],table.rc-po td[data-l="序列號"],table.rc-po td[data-l="此產品備註"],table.rc-po td[data-l="訂購／已到"]{grid-column:1/-1}
 table.rc-po td[data-l="產品名稱"]{order:-3;font-weight:700;font-size:15px}table.rc-po td[data-l="產品名稱"]::before{display:none}
 table.rc-po td[data-l="已到貨"]{order:-2;display:flex;align-items:center;gap:8px}table.rc-po td[data-l="已到貨"]::before{margin:0}
 table.rc-po td[data-l="數量"]{order:-1}table.rc-po td[data-l="狀態"]{order:-1;align-self:end}
 table.rc-po td[data-l="序列號"]{order:0}
 table.rc-po td input:not([type=checkbox]),table.rc-po td select{width:100%}
 table.rc-po td[data-l="有問題"],table.rc-po td[data-l="寄回廠商"],table.rc-po td[data-l="需要報關"]{display:flex;align-items:center;gap:8px}
 table.rc-po td[data-l="有問題"]::before,table.rc-po td[data-l="寄回廠商"]::before,table.rc-po td[data-l="需要報關"]::before{margin:0;order:2}
}

/* ---- id="uph-green-actions" ---- */
/* 所有「儲存／新增／確認」按鈕統一用綠色（與「確認新增收款」一致） */
.action.primary:not([data-tab]),.confirm,#incomeSubmit,#outgoingSubmit,#staffEditSubmit{background:#0F9D7A;border-color:#0F9D7A;color:#fff}
.action.primary:not([data-tab]):hover,.confirm:hover,#incomeSubmit:hover,#outgoingSubmit:hover,#staffEditSubmit:hover{background:#0b8467;border-color:#0b8467;color:#fff}
.action.primary:not([data-tab]):disabled,.confirm:disabled,#incomeSubmit:disabled,#outgoingSubmit:disabled,#staffEditSubmit:disabled{opacity:.55}
#outgoingSubmit{box-shadow:0 4px 12px #0f9d7a33}
.action.primary:not([data-tab]):focus-visible{outline:2px solid #0b8467;outline-offset:2px}

/* 字型統一:所有控制項沿用頁面字型(瀏覽器預設會用系統字型,造成粗幼不一) */
button,input,select,textarea,summary{font-family:inherit}

/* ── 審計修正 round2 ── */
/* C2 表單標籤與必填星號同一行 */
.form-field>.lbl{display:block;line-height:1.4}.form-field>.lbl .required{display:inline;margin-left:2px;color:#c14343}
.form-grid{align-items:start}
.form-field select,.form-field input:not([type=checkbox]):not([type=radio]),.form-field textarea{width:100%;box-sizing:border-box}
/* C3 側欄只留一個高亮:收付款總覽表平時是低調強調色 */
.side .nav.nav-treasury:not(.active){background:transparent;border:1px solid transparent;border-left:4px solid #e0b25566;color:#f0dcb9;font-weight:600}
.side .nav.nav-treasury:not(.active):hover{background:#ffffff12}
/* C5 多選與其他控件字體一致 */
.multi-select,.multi-select>summary,.multi-options label{font-size:15px}
/* C6 次要文字最小 12px;手機版表格欄名及備註 13px */
table.rc-po td::before,.act-note,.act-meta{font-size:13px}
/* C9 鍵盤焦點 */
:focus-visible{outline:3px solid #2f6fe0;outline-offset:2px;border-radius:6px}
.side button:focus-visible,.mobile button:focus-visible{outline-color:#e8c779}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0}
/* C7 手機觸控範圍 ≥44px */
@media(max-width:860px){button,.action,.ghost,.hw-edit,.act-open,.date-preset,.mv-quick,select,input:not([type=checkbox]):not([type=radio]){min-height:44px!important}
 main input[type=checkbox],main input[type=radio]{min-width:24px;min-height:24px}
 /* C4 手機頂部:標題與按鈕分行,不擠 */
 .top{flex-direction:column;align-items:stretch;gap:10px}.top .topright{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}
 .top .muted{display:none}.heading{font-size:22px;word-break:keep-all;overflow-wrap:anywhere}}
/* C1 手機貨幣卡片:兩欄、數字不換行 */
@media(max-width:480px){.report-currency-cards,.currency-cards,.cur-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cur-grid .amount,.currency-cards .amount{font-size:17px;white-space:nowrap}}

/* ── 外觀提升 polish ── */
:root{--shadow-sm:0 1px 2px #0f23420d,0 2px 8px #0f23420a;--shadow-md:0 2px 4px #0f23420d,0 10px 28px #0f234214;--ring:0 0 0 3px #c9a96a33}
body{background:linear-gradient(180deg,#f4f7fb 0,#eef2f8 100%) fixed}
/* 卡片:更柔和的層次 */
.card,.form-card,.news-card,.news-row,.panel,.tablewrap{box-shadow:var(--shadow-sm)}
.news-card,.news-row,button,.action,select,input,textarea{transition:box-shadow .18s ease,border-color .18s ease,background-color .18s ease,transform .18s ease}
.news-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}
.news-row:hover{box-shadow:var(--shadow-md);border-color:#b9cbe6;background:#f8fbff}
.news-card{border-radius:16px;gap:6px}
.news-card .news-ic{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#f0f4fa;font-size:17px}
.n-in .news-ic{background:#e6f6ef;color:#087a60}.n-out .news-ic{background:#fdeceb;color:#ad3e2c}.n-pend .news-ic{background:#fff3d9;color:#a06a00}.n-hold .news-ic{background:#f6ecd9;color:#8a5a00}
.news-card .news-n{font-size:26px;letter-spacing:-.01em}
.news-sub{display:flex;align-items:center;gap:10px;color:#0b1f3a}.news-sub::before{content:"";width:5px;height:.85em;border-radius:3px;background:linear-gradient(#c9a96a,#e0b255)}
/* 「新」標籤不要被格線拉長 */
.news-row .new-tag{justify-self:end;margin:0;padding:2px 10px;white-space:nowrap;line-height:1.4}
/* 待核實橫幅:較柔和 */
.news-pending #attentionBanner{border:1px solid #f0c99a!important;border-left:5px solid #d9822b!important;background:linear-gradient(90deg,#fff6ea,#fffaf3)!important;border-radius:12px!important;padding:14px 16px!important;font-weight:600!important;box-shadow:var(--shadow-sm)}
/* 輸入控件:金色聚焦環、圓角一致 */
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{border-radius:10px;border-color:#cbd7e5}
input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:#ab8e54;box-shadow:var(--ring);outline:none}
input:not([type=checkbox]):not([type=radio]):hover,select:hover,textarea:hover{border-color:#a9bad0}
/* 主要按鈕:輕微漸層與按壓回饋 */
.action.primary,button.primary{background:linear-gradient(180deg,#12a583,#0b8566);box-shadow:0 2px 6px #0b856640}
.action.primary:hover,button.primary:hover{box-shadow:0 4px 14px #0b856659;filter:brightness(1.04)}
button:active:not(:disabled){transform:translateY(1px)}
/* 側欄:當前頁左側金色指示條,選單更有層次 */
.side .nav.active{box-shadow:inset 3px 0 0 #c9a96a,0 4px 14px #00000033}
.side .nav:hover:not(.active){background:#ffffff10}
/* 表格:斑馬紋與懸停 */
table tbody tr:nth-child(even) td{background-color:#fbfcfe}
table tbody tr:hover td{background-color:#f1f6fd}
thead th{position:sticky;top:0;background:#f3f6fb;color:#44566c;letter-spacing:.02em}
/* 頁面標題:更細緻 */
.heading{color:#0b1f3a}
.eyebrow{color:#8697ad}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:860px){.news-card:hover{transform:none}}

/* 快捷操作與下方橫幅/內容之間留空 */
#quickActions{margin-bottom:24px}#quickActions .actions{margin-bottom:0}
#quickActions+*,#quickActions~.hero{margin-top:0}
.hero{margin-top:8px}
/* 快捷操作:付款類按鈕統一紅色(不被 primary 綠色覆蓋) */
#quickActions .action[data-tab='outgoing'],#quickActions .action[data-tab='add-outgoing']{background:linear-gradient(180deg,#9a4237,#84382f)!important;border-color:#84382f!important;color:#fff!important;box-shadow:0 2px 6px #84382f40}
