:root{font-family:Inter,"Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;color:#18263d;background:#f4f6fa;font-size:16px;line-height:1.6;--blue:#2654ed;--line:#e4e9f1;--muted:#66748a}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8eaeff;outline-offset:3px}button{transition:background .15s}button:hover:not(:disabled){filter:brightness(.97)}[hidden]{display:none!important}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;background:#111e34;color:#dce6f8;padding:32px 20px;display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;gap:12px;font-weight:750;font-size:23px;padding:0 10px}.mark{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--blue);color:white;font-weight:700;font-size:22px}.brand small,.profile small{display:block;color:#8c9db7;font-size:12px;font-weight:400;letter-spacing:1px}.nav-label{color:#7f91ad;font-size:12px;letter-spacing:2px;margin:46px 14px 12px}.nav{display:flex;gap:12px;align-items:center;border:0;background:transparent;color:#aebed6;padding:13px 14px;width:100%;border-radius:8px;text-align:left;font-size:15px;margin:5px 0}.nav span{font-size:22px;line-height:1}.nav b{font-size:12px;background:#ffffff22;padding:1px 7px;border-radius:5px;margin-left:auto}.nav.active{color:#fff;background:#2654ed}.side-note{margin:auto 12px 24px;padding-top:24px}.small-label{font-size:12px;color:#7f91ad;display:block}.side-note strong{font-size:14px;font-weight:500}.side-note p{font-size:13px;color:#8c9db7}.profile{border-top:1px solid #2d3a4e;padding:22px 10px 0;display:flex;gap:12px;font-size:14px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#344562;color:#dbe6ff}.app{margin-left:238px}.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line);padding:0 38px;display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--muted)}.topbar>div{display:flex;gap:16px;align-items:center}.slash{padding:0 14px;color:#b7c0d0}.mode-pill{color:#a36112;background:#fff4dc;border:1px solid #f4dfb5;border-radius:5px;padding:3px 10px;font-size:13px}.button{border:1px solid #d8dfeb;background:white;color:#354761;border-radius:7px;padding:8px 16px;font-size:14px;font-weight:550}.button.small{padding:6px 12px}.primary{background:var(--blue);color:#fff;border-color:var(--blue)}main{max-width:1560px;margin:auto;padding:26px 38px 45px}.banner{display:flex;gap:16px;align-items:center;padding:12px 18px;border:1px solid #d4defa;background:#edf2ff;color:#3f5692;border-radius:8px;font-size:14px}.banner strong{white-space:nowrap}.heading{display:flex;justify-content:space-between;align-items:end;margin:30px 0 24px}.eyebrow{font-size:11px;letter-spacing:2px;color:#7787a0;font-weight:700}h1{font-size:29px;letter-spacing:-.6px;margin:3px 0 5px;line-height:1.5}h2{font-size:17px;margin:0;font-weight:700}.heading p{margin:0;color:var(--muted);font-size:14px}.updated{font-size:12px;color:#8190a5}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:27px}.stat{background:white;border:1px solid var(--line);border-radius:10px;padding:20px 23px;border-top:3px solid transparent}.stat:first-child{border-top-color:var(--blue)}.stat label{display:block;color:var(--muted);font-size:14px}.stat strong{font-size:32px;letter-spacing:-1px;display:block;margin:5px 0;color:#1b2e4b;font-variant-numeric:tabular-nums}.stat p{font-size:12px;margin:0;color:#8490a2}.stat.alert strong{color:#c25c30}.panel{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden}.panel-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 24px 18px}.panel-top p{font-size:12px;color:#8590a2;margin:3px 0 0}#result-count{font-size:12px;color:#71849b;margin-left:6px;font-weight:400}.search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;padding:7px 12px;width:265px}.search input{font-size:14px;border:0;outline:none;width:100%;background:transparent}.filters{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:0 24px 16px}.tabs{display:flex;gap:4px;background:#f2f4f8;border-radius:7px;padding:4px}.tabs button{border:0;background:transparent;border-radius:5px;color:#6a7890;font-size:13px;padding:5px 10px;white-space:nowrap}.tabs .selected{background:#fff;box-shadow:0 1px 3px #13203a15;color:var(--blue);font-weight:650}.filter-right{display:flex;gap:14px;align-items:center;color:#6a7890;font-size:12px}.filter-right select{padding:7px 8px;border:1px solid var(--line);border-radius:6px;font-size:13px;background:white}.filter-right label{display:flex;align-items:center;gap:5px}input[type=checkbox]{accent-color:var(--blue)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap;font-size:14px}th{font-size:12px;color:#8090a6;font-weight:500;background:#f8f9fc;padding:12px 18px;border-block:1px solid var(--line)}td{padding:18px;border-bottom:1px solid #eef1f6}th:first-child,td:first-child{padding-left:25px}.order-id{border:0;background:transparent;padding:0;color:#294b84;font-size:14px;font-weight:650}.sub{display:block;font-size:12px;color:#8b97a8;margin-top:3px}.amount{font-weight:700;letter-spacing:.2px;font-variant-numeric:tabular-nums}.type{font-size:12px;color:#7c8b9f;margin-right:8px}.badge{display:inline-block;font-size:12px;font-weight:500;border-radius:5px;padding:4px 9px;background:#f0f3f8;color:#697c99}.badge.blue{background:#eaf0ff;color:#4163c5}.badge.orange{background:#fff1de;color:#b37621}.badge.red{background:#fceae8;color:#b95248}.badge.green{background:#e7f5ef;color:#338367}.wait{color:#ac5e2e}.arrow{border:0;background:transparent;color:#9aa6b8;font-size:20px}.panel-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;color:#8490a3;font-size:12px}.panel-footer>div{display:flex;gap:16px;align-items:center}.footnote{color:#8591a3;font-size:12px;margin:15px 0}.app-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin:0 38px;padding:20px 0;color:#8f9bae;font-size:12px}.empty{padding:50px;text-align:center;color:var(--muted)}.empty .button{display:block;margin:15px auto}.error{background:#fff0ec;border:1px solid #f0cec5;padding:14px;border-radius:8px;margin-bottom:20px}dialog{border:0;box-shadow:0 20px 100px #0a183a40;border-radius:14px;padding:0;width:min(610px,calc(100vw - 28px));max-height:90vh;color:#18263d}dialog::backdrop{background:#111e3477;backdrop-filter:blur(3px)}.detail-head{padding:24px 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.detail-head h2{font-size:22px}.icon-button{border:0;background:#f2f5fa;border-radius:50%;width:34px;height:34px;font-size:23px;color:#77859c}#detail-body{padding:24px 28px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.detail-grid label{color:#7b899e;font-size:13px;display:block}.detail-grid strong{font-size:16px;font-weight:600;overflow-wrap:anywhere}.callout{border-left:3px solid var(--blue);background:#f1f5fe;padding:14px 16px;font-size:14px;margin:18px 0}.timeline{list-style:none;padding:0;margin:18px 0}.timeline li{border-left:2px solid #e2e9f6;padding:0 0 23px 19px;position:relative;font-size:14px}.timeline li:before{content:'';position:absolute;left:-5px;top:7px;width:8px;height:8px;border-radius:50%;background:#9bb0e7}.timeline small{display:block;color:#8b98ab;font-size:12px}.ledger-banner{background:#162b4c;color:white;padding:24px 28px;border-radius:10px;margin-bottom:22px;display:flex;justify-content:space-between;gap:20px}.ledger-banner p{font-size:14px;color:#b9c9e4;margin:6px 0}.ledger-banner strong{font-size:30px}.ledger-banner small{display:block;color:#b9c9e4;font-size:13px}.group-card{margin-bottom:20px}.group-title{padding:20px 24px;display:flex;justify-content:space-between;align-items:center}.group-title p{margin:3px 0;color:#8591a3;font-size:13px}.permissions{display:flex;gap:6px;flex-wrap:wrap}.login-form,#login-form{padding:34px}#login-form label{display:block;font-size:14px}#login-form input{display:block;width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;margin:8px 0 18px}#login-form p{font-size:14px;color:var(--muted)}#login-form button{width:100%}@media(min-width:1500px){td{padding-block:21px}}@media(max-width:1180px){.sidebar{width:200px;padding-inline:12px}.app{margin-left:200px}main{padding-inline:23px}.topbar{padding-inline:23px}.filters{align-items:start;flex-direction:column}.search{width:235px}.stat{padding:16px}.banner{align-items:start}}@media(max-width:760px){.sidebar{position:static;width:100%;padding:15px 18px}.brand{font-size:20px}.brand small{display:none}.nav-label,.side-note,.profile{display:none}nav{display:flex;overflow:auto;margin-top:12px;gap:5px}.nav{font-size:13px;padding:9px 10px;white-space:nowrap;width:auto;gap:6px}.nav span{display:none}.app{margin-left:0}.topbar{height:62px;padding-inline:18px}.topbar>span{display:none}.topbar>div{justify-content:space-between;width:100%}main{padding:18px 16px 30px}.banner{font-size:12px;gap:8px;flex-direction:column}.heading{margin:22px 0 18px;align-items:start;gap:10px}.heading h1{font-size:25px}.updated{max-width:100px;text-align:right}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:18px}.stat strong{font-size:27px}.panel-top{flex-direction:column;align-items:stretch;padding:18px}.search{width:100%}.filters{padding-inline:18px}.filter-right{flex-wrap:wrap}.tabs{max-width:100%;overflow:auto}.panel-footer{padding:14px;gap:12px}.panel-footer>span{display:none}.app-footer{margin-inline:16px}.app-footer span{display:none}.ledger-banner{flex-direction:column}.detail-grid{gap:14px}#detail-body{padding:20px}.detail-head{padding:20px}}
.topbar{position:sticky;top:0;z-index:5;box-shadow:0 3px 14px #18263d08}.is-locked .sidebar,.is-locked .app{display:none!important}#login{min-height:100vh;display:grid;grid-template-columns:1.12fr 1fr;background:#fff}.intro{position:relative;overflow:hidden;min-height:100vh;padding:50px 64px;color:white;background:radial-gradient(ellipse at 75% 70%,#21457b 0,transparent 58%),#101e35;display:flex;flex-direction:column}.intro:after{content:'';position:absolute;width:600px;height:600px;border:1px solid #728fc522;border-radius:50%;right:-300px;bottom:-200px;pointer-events:none}.intro-brand{display:flex;align-items:center;gap:13px;font-size:24px}.intro-brand small{display:block;font-size:10px;letter-spacing:2.5px;color:#94a9c9;font-weight:400}.intro-copy{margin:auto 0;padding:70px 0;z-index:1}.intro-copy .eyebrow{color:#a5bff5;font-size:14px;letter-spacing:3px}.intro-copy h1{font-size:clamp(32px,3.6vw,54px);line-height:1.45;font-weight:650;letter-spacing:-1px;margin:24px 0}.intro-copy p{font-size:16px;line-height:1.9;color:#afc1dc}.intro-flow{display:flex;gap:28px;border-top:1px solid #758ba530;padding-top:26px;margin-top:38px}.intro-flow span{font-size:12px;color:#849ec8}.intro-flow b{display:block;color:#cbd8ef;font-size:14px;font-weight:500;margin-top:6px}.intro-bottom{font-size:12px;color:#8297b7}.login-side{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:50px}.login-side #login-form{width:100%;max-width:440px;padding:0}.login-side h2{font-size:30px;margin:12px 0}.login-side #login-form>p{margin-bottom:35px}.login-side #login-form label{font-weight:550;color:#415069;margin-top:20px}.login-side #login-form input,.login-side select{padding:13px 14px;border:1px solid #d7dfec;border-radius:8px;font-size:16px;background:#fcfdff;display:block;width:100%;margin-top:8px}.login-side .primary{padding:14px;font-size:16px}.login-help{border-top:1px solid #e7ecf4;margin-top:30px;padding-top:24px;font-size:13px;line-height:1.8;color:#8391a7}.login-bottom{font-size:12px;color:#a0abbb;margin-top:60px}.action-content{padding:25px;display:grid;gap:18px;font-size:15px}.action-content select{display:block;width:100%;margin-top:8px;padding:10px}.permission-editor{display:grid;grid-template-columns:1fr 1fr;gap:14px}.job{background:#edf4ff;border:1px solid #d9e5fa;border-radius:8px;padding:12px 18px;margin-bottom:12px;font-size:14px}.job strong{color:#315ca6;margin-right:12px}.job small{display:block;color:#6e7f97;margin-top:4px}.job.failed{background:#fff0ec;border-color:#edcec5}.proof-gallery{margin:25px 0}.proof-card{border:1px solid var(--line);border-radius:8px;padding:14px;margin:12px 0}.proof-card img{max-width:100%;max-height:340px;display:block;margin:12px auto;object-fit:contain}.proof-card small{font-size:12px;color:var(--muted)}.danger{color:#b24b3d;border-color:#ebc8c2;background:#fff5f2}@media(max-width:800px){#login{display:block}.intro{min-height:auto;padding:28px}.intro-copy{padding:36px 0 15px}.intro-copy h1{font-size:31px}.intro-copy p{font-size:14px}.intro-flow,.intro-bottom{display:none}.login-side{padding:35px 25px}.login-side h2{font-size:25px}.login-bottom{margin-top:30px}.topbar{z-index:5}}

.workflow-controls{padding:16px 24px;display:flex;gap:12px;flex-wrap:wrap}.workflow-actions{padding:18px;border:1px solid #cbdaf6;border-radius:10px;margin:18px 0;display:flex;flex-wrap:wrap;gap:12px}.workflow-actions p{width:100%;margin:0}.action-content #workflow-fields{display:grid;gap:18px}.action-content input:not([type=checkbox]),.action-content select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #ced8e7;border-radius:7px;margin-top:7px}.action-content #workflow-fields label{display:block}.proof-gallery h2{font-size:18px}@media(max-width:650px){.topbar>div{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.topbar>span{display:none}.workflow-controls{padding:15px}.workflow-actions .button{width:100%}}

.activation-form{display:grid;gap:18px;margin:25px 0}.activation-form label{display:grid;gap:8px}.activation-form input{width:100%;padding:12px;border:1px solid #ced8e7;border-radius:8px}.group-title{flex-wrap:wrap}.group-card>button{margin:0 12px 20px 24px}details>summary{cursor:pointer;padding:18px;font-weight:600}.workflow-controls p{overflow-wrap:anywhere}

.merchant-book-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr));gap:20px;margin:20px 0}.merchant-book-card{min-width:0;overflow:hidden}.merchant-book-card .group-title p{overflow-wrap:anywhere}.merchant-book-total{display:grid;gap:10px;padding:0 24px 24px}.merchant-book-total>span,.merchant-book-total>small{color:var(--muted)}.merchant-book-total strong{font-size:30px;color:#204e99;overflow-wrap:anywhere}.merchant-book-card .callout{margin:0 20px 20px}.merchant-book-bottom{padding:20px 24px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:14px}.merchant-book-bottom span{color:var(--muted)}
#action-summary{white-space:pre-wrap;overflow-wrap:anywhere}#bookkeeping-view td{vertical-align:top}#bookkeeping-view td:nth-child(4){min-width:210px;font-size:13px}#bookkeeping-view td:nth-child(5){min-width:180px;white-space:normal;overflow-wrap:anywhere}
