/* 2026/11/06 George 保留使用者v097展示版樣式，新增實際資料明細與狀態樣式。 */

*{box-sizing:border-box}body{margin:0;background:#f3f6fb;color:#203148;font:14px system-ui,'Microsoft JhengHei',sans-serif}.shell{display:flex;min-height:100vh}aside{width:235px;background:#152c48;color:#d8e4f4;padding:22px 12px;flex-shrink:0}aside h2{color:white;margin:0 12px 24px}.nav{width:100%;text-align:left;background:none;border:0;color:inherit;padding:11px 13px;border-radius:9px;cursor:pointer}.nav.active,.nav:hover{background:#2a5278;color:white}main{flex:1;min-width:0;padding:25px;max-width:1600px}header{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}h1{font-size:24px;margin:0 0 7px}h3{margin:0 0 14px}.muted{color:#718198}.card{background:white;border:1px solid #e1e8f1;border-radius:14px;padding:19px;margin:16px 0;box-shadow:0 2px 8px #243b5310}.filters{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12px;color:#64748b}select,input,button{font:inherit}select,input{border:1px solid #cbd5e1;border-radius:8px;padding:9px;background:white;min-width:130px}button.primary{border:0;background:#2066ba;color:white;padding:10px 17px;border-radius:8px;cursor:pointer}button.secondary{border:1px solid #cbd5e1;background:white;padding:9px 14px;border-radius:8px;cursor:pointer}.metrics{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px}.metric{background:white;border:1px solid #e1e8f1;padding:20px;border-radius:13px}.metric b{display:block;font-size:24px;margin-top:8px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:12px;text-align:left;border-bottom:1px solid #e7edf5}th{background:#f7f9fd;color:#52677f;font-weight:650}td.num{text-align:right}th.num{text-align:right}.pill{display:inline-block;background:#e7f3ec;color:#207a43;padding:4px 8px;border-radius:20px}.warn{background:#fff6e5;color:#926000}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.small{font-size:12px}.empty{padding:24px;color:#64748b;text-align:center}.notice{background:#fff8e6;border:1px solid #f3db9a;padding:12px 16px;border-radius:10px;margin:12px 0}.hidden{display:none!important}.clickable{color:#2066ba;text-decoration:underline;cursor:pointer;background:none;border:0;padding:0}.clickable:hover{color:#12477f}.back{margin:0 0 12px}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.tab{border:1px solid #d5dfeb;background:#fff;border-radius:8px;padding:9px 13px;cursor:pointer}.tab.active{background:#2066ba;color:#fff}.detail-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.kv{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:10px}.kv div{background:#f7f9fc;padding:12px;border-radius:9px}.kv small{display:block;color:#64748b;margin-bottom:6px}@media(max-width:650px){.kv{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.shell{display:block}aside{width:100%;padding:12px}aside h2{margin:3px 6px 12px;font-size:20px}#nav{display:flex;overflow:auto;gap:4px}.nav{white-space:nowrap;width:auto}main{padding:14px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric b{font-size:20px}.filters{align-items:stretch}.field{flex:1;min-width:130px}}
 .ai-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ai-panel{background:#f7faff;border:1px solid #dfe9f6;border-radius:12px;padding:16px}.ai-panel h4{margin:0 0 10px}.ai-panel p{line-height:1.7;margin:8px 0}.ai-list{padding-left:20px;line-height:1.85}.ai-tag{display:inline-block;padding:3px 9px;border-radius:15px;background:#e6eefc;color:#23589b;font-size:12px;margin-right:6px}.ai-tag.warn{background:#fff0d5;color:#8b5a12}.ai-actions{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0}.ai-chat{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.ai-chat input{flex:1;min-width:220px}.ai-answer{background:#f1f7ff;border-left:4px solid #3976c4;padding:14px;line-height:1.8;border-radius:7px;white-space:pre-line}.ai-foot{font-size:12px;color:#697c94;margin-top:12px}@media(max-width:800px){.ai-grid{grid-template-columns:1fr}} 
/* v0.8 responsive grouped navigation */
aside{position:sticky;top:0;height:100vh;overflow-y:auto;transition:width .2s ease;padding-top:14px}aside h2{margin:0 10px 14px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.side-icon{border:0;background:#294661;color:#fff;border-radius:8px;padding:8px;cursor:pointer}.nav-search{width:100%;min-width:0!important;background:#f7faff!important;margin:10px 0;color:#1b3550}.nav-group{margin:6px 0}.nav-group-toggle{width:100%;background:none;color:#d8e4f4;border:0;text-align:left;padding:11px 12px;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;gap:5px}.nav-group-toggle:hover{background:#284b70}.nav-children{padding-left:10px}.nav-children .nav{font-size:13px;padding:9px 10px}.nav-bookmark{border:0;background:transparent;color:#a9bdd2;cursor:pointer;padding:6px 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px}.nav-bookmark:hover{background:#294b70;color:#fff}.nav-bookmark.is-saved{color:#71c5ed}.nav-bookmark svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.nav-bookmark.is-saved svg{fill:currentColor}.nav-entry{display:flex;align-items:center}.nav-entry .nav{flex:1;min-width:0}.nav-caption{font-size:11px;color:#9db3cd;padding:12px 12px 5px}.nav-empty{color:#a8bbd0;font-size:12px;padding:10px}.shell.sidebar-collapsed aside{width:68px}.shell.sidebar-collapsed .nav-search,.shell.sidebar-collapsed #nav,.shell.sidebar-collapsed aside h2{display:none}.mobile-menu{display:none!important}.mobile-scrim{display:none}.shell.sidebar-collapsed main{max-width:none}
@media(max-width:820px){.shell{display:flex}.mobile-menu{display:inline-block!important;margin-right:9px}.sidebar-head .side-icon{display:none}aside{position:fixed;z-index:50;top:0;bottom:0;left:0;height:100dvh;width:270px!important;transform:translateX(-105%);box-shadow:0 10px 30px #0003}.shell.mobile-open aside{transform:translateX(0)}.mobile-scrim{position:fixed;inset:0;background:#06152988;z-index:49}.shell.mobile-open .mobile-scrim{display:block}main{width:100%;padding:14px}.shell.sidebar-collapsed #nav,.shell.sidebar-collapsed .nav-search,.shell.sidebar-collapsed aside h2{display:block}}

.inline-order-detail>td{padding:12px 14px!important;background:var(--surface,#f4f8fc);border-left:3px solid #3b82f6}.inline-order-detail .card{margin:0;box-shadow:none}.inline-order-detail table{width:100%}.inline-order-detail .tablewrap{overflow-x:auto}tr[data-order-row]{scroll-margin-top:110px}button[data-order][aria-expanded="true"]{font-weight:700;text-decoration:underline}

/* v0.9.4 */
.page-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.page-tools select{width:auto;min-width:75px}.page-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-controls button{padding:6px 12px}.page-controls button:disabled{opacity:.35;cursor:not-allowed}.dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.dash-card{background:#fff;border:1px solid #e0e8f3;border-radius:12px;padding:18px;min-width:0}.dash-card h3{margin:0 0 12px}.dash-bars{display:flex;align-items:flex-end;gap:5px;height:150px;border-bottom:1px solid #cbd5e1;padding-top:10px}.dash-bar{flex:1;min-width:0;background:linear-gradient(180deg,#4e9ce8,#2462aa);border-radius:4px 4px 0 0;position:relative}.dash-bar:hover{background:#184d90}.dash-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#60748a;margin-top:9px}.attention{border-left:4px solid #e69a38;background:#fff9ee;padding:10px 12px;margin:8px 0;border-radius:6px}.attention.good{border-color:#38a37a;background:#f0faf5}.attention.urgent{border-color:#df5c5c;background:#fff1f1}.dash-card p{line-height:1.6}.dash-small{font-size:12px;color:#687b92}.page-tools label{display:flex;align-items:center;gap:6px}@media(max-width:800px){.dash-grid{grid-template-columns:1fr}}

/* v0.9.6 mobile-first reading enhancements */
.mobile-bottom,.mobile-filter-toggle,.mobile-order-list{display:none}
.mobile-order-card{scroll-margin-top:75px}
@media(max-width:820px){
 body{font-size:15px}main{padding:12px 12px 92px!important}header{align-items:flex-start}header h1{font-size:22px}header>.field{min-width:140px}header>.field select{min-width:0;width:100%}
 .card{padding:14px;margin:12px 0}.metric{padding:14px}.metric b{font-size:21px}.dash-card{padding:14px}.dash-card h3{font-size:16px}
 .mobile-bottom{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:45;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #dbe5f0;box-shadow:0 -4px 20px #19345115}
 .mobile-bottom button{border:0;background:none;color:#6a7c91;font-size:11px;min-height:49px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;cursor:pointer}
 .mobile-bottom button span{font-size:23px;line-height:1}.mobile-bottom button.is-active{color:#1768b8;font-weight:700}
 .mobile-filter-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;background:#edf5ff;color:#174a7c;border:1px solid #d7e6f6;padding:12px;border-radius:10px;font-weight:650;cursor:pointer}
 .filter-card .filters{display:none}.filter-card.is-open .filters{display:flex;margin-top:12px}.filter-card .filters .field{min-width:calc(50% - 8px);flex:1}.filter-card .filters input,.filter-card .filters select{width:100%;min-width:0}
 .desktop-order-list{display:none}.mobile-order-list{display:grid;gap:12px;margin:10px 0}.mobile-order-card{border:1px solid #dbe5f0;border-radius:12px;padding:14px;background:#fff;min-width:0}
 .mobile-order-top,.mobile-order-middle,.mobile-order-meta{display:flex;justify-content:space-between;align-items:center;gap:8px}.mobile-order-middle{margin-top:10px}.mobile-order-middle b{font-size:19px;color:#18324f}.mobile-order-meta{margin-top:9px;color:#5b6d80;font-size:12px;flex-wrap:wrap}.mobile-order-meta span{overflow-wrap:anywhere}
 .mobile-detail-btn{margin-top:12px;width:100%;border:1px solid #bfd5ec;background:#f0f7ff;color:#1b5f9c;border-radius:9px;padding:12px;font-weight:650;min-height:44px;cursor:pointer}
 .mobile-detail-panel{margin-top:12px}.mobile-detail-panel .card{border:0;padding:10px 0;margin:0;box-shadow:none}.mobile-detail-panel h3{font-size:15px}.mobile-detail-panel table{font-size:12px}.mobile-detail-panel th,.mobile-detail-panel td{padding:8px}.mobile-detail-panel .toolbar{align-items:flex-start}
 .page-tools{gap:9px}.page-tools .page-controls{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.page-controls button{padding:9px 3px;font-size:12px}
 .dash-bars{height:125px}.ai-grid{grid-template-columns:1fr}.kv{grid-template-columns:repeat(2,minmax(0,1fr))}.notice{font-size:12px;line-height:1.5}
 .tablewrap{max-width:100%;-webkit-overflow-scrolling:touch}.tablewrap th,.tablewrap td{padding:9px;font-size:12px}
}
@media(max-width:390px){.metric b{font-size:18px}.metrics{gap:8px}.metric{padding:11px}.mobile-order-middle b{font-size:17px}}

.share-overlay{position:fixed;inset:0;background:#14273d9c;z-index:90;display:none;align-items:center;justify-content:center;padding:16px}
.share-overlay.open{display:flex}.share-dialog{background:#fff;border-radius:16px;width:min(580px,100%);max-height:90vh;overflow:auto;padding:22px;box-shadow:0 20px 80px #0003}
.share-dialog h2{margin:0 0 6px}.share-dialog label{display:block;font-weight:650;margin:12px 0 6px}.share-dialog input,.share-dialog select{width:100%;padding:11px;border:1px solid #cad7e5;border-radius:9px;font:inherit}
.share-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.share-actions button{flex:1;min-width:110px}.share-note{font-size:12px;color:#586a7c;line-height:1.6}.share-log{max-height:135px;overflow:auto;font-size:12px}.share-log div{padding:6px 0;border-bottom:1px solid #e9edf2}
@media(max-width:820px){.share-dialog{padding:16px}.share-actions{flex-direction:column}.share-actions button{width:100%}}

.connection{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.connection input{min-width:210px}.notice.live-notice{background:#ecf6ff;border-left:4px solid #2066ba}.source-tag{background:#dcfce7;color:#166534;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:700}.nav-caption{padding:15px 13px 7px;color:#9db5d0;font-size:12px}.view-link{display:block;text-decoration:none;color:#d8e4f4;padding:12px;border-top:1px solid #36516f;margin-top:20px}.report-tabs{display:flex;gap:8px;flex-wrap:wrap}.live-table td.wrap{white-space:normal;min-width:140px;max-width:320px}.detail-cell{background:#f6f9fd;padding:20px;white-space:normal}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-grid .card{margin:0}.badge{display:inline-block;padding:4px 8px;border-radius:6px;background:#e8f0fa;color:#245a91;font-size:12px}.badge.cancel{background:#fff0eb;color:#a63821}.badge.child{background:#eeeaff;color:#5f45a2}.badge.ok{background:#dcfce7;color:#166534}.child-name{padding-left:22px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.link-button{border:0;background:none;padding:0;color:#2066ba;text-decoration:underline;cursor:pointer;text-align:left}.split{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.bar-list{display:grid;gap:12px}.bar{display:grid;grid-template-columns:minmax(90px,1fr) 2fr 90px;gap:10px;align-items:center}.bar-track{height:12px;background:#edf2f8;border-radius:20px;overflow:hidden}.bar-fill{height:100%;background:#4386cb;border-radius:20px}.amount{text-align:right;font-variant-numeric:tabular-nums}.report-status{font-size:13px;color:#52677f}.key-note{font-size:12px;color:#718198}.empty{text-align:center;padding:32px}.timeline{display:grid;gap:10px}.timeline-entry{padding:12px;border-left:3px solid #8ab3df;background:#f5f8fc;border-radius:6px}.raw-preview{white-space:pre-wrap;word-break:break-all;max-height:300px;overflow:auto;font-size:12px}.live-metrics{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.loading{padding:40px;color:#64748b}.footer-note{font-size:12px;color:#718198;margin:20px 0}.metric small{display:block;color:#718198;font-size:12px;margin-top:5px}.page-controls button:disabled{opacity:.45;cursor:default}.coverage{padding:16px;background:#fff9ed;border:1px solid #f4dfb1;border-radius:10px}.search-row{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.source-tag.small{font-size:11px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #77a5de;outline-offset:3px}.mobile-bottom{z-index:20}.detail-loading{padding:18px}.live-name{word-break:break-word}.live-table th{white-space:nowrap}.invoice-warning{color:#9a5414}.no-margin{margin:0}.flex-links{display:flex;gap:10px;flex-wrap:wrap}a.secondary{display:inline-block;text-decoration:none;color:#203148;border:1px solid #cbd5e1;background:#fff;padding:9px 14px;border-radius:8px}@media(max-width:900px){.split,.detail-grid{grid-template-columns:1fr}}@media(max-width:780px){main{padding:15px 12px 90px}.live-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:14px}.metric b{font-size:21px}.connection{width:100%}.connection .field{flex:1}.connection input{min-width:0;width:100%}.tablewrap{overflow-x:auto}.detail-cell{padding:10px}.live-table td,.live-table th{padding:10px}.page-tools{align-items:start}.bar{grid-template-columns:95px 1fr 70px}.filter-card .filters{display:flex}.filter-card:not(.is-open) .filters{display:none}.mobile-order-card .live-table{min-width:500px}}@media print{aside,.connection,.filter-card,.mobile-bottom,.mobile-menu,.export-controls,.source-links{display:none!important}.shell{display:block}main{max-width:none;padding:0}.card{box-shadow:none;break-inside:avoid}.tablewrap{overflow:visible}body{background:#fff}.notice{font-size:11px}.live-table{font-size:10px}}

/* 2026/11/06 George 手機交易卡片與金額不拆行，列印隱藏重複卡片。 */
.amount{white-space:nowrap}@media(max-width:780px){.bar{grid-template-columns:90px minmax(20px,1fr) auto}.mobile-detail-panel .live-table{min-width:580px}.mobile-detail-panel .live-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.mobile-order-list{display:none!important}.desktop-order-list{display:block!important}.live-table{width:100%;table-layout:fixed}.live-table td,.live-table th{white-space:normal;overflow-wrap:anywhere;padding:4px;font-size:9px}@page{size:landscape;margin:10mm}}
@media(max-width:820px){.detail-grid{grid-template-columns:minmax(0,1fr)}.detail-grid>.card,.mobile-detail-panel,.mobile-detail-panel>.card{min-width:0;max-width:100%}.mobile-bottom{z-index:45}.mobile-order-list{min-width:0}.detail-grid .tablewrap{width:100%;max-width:100%}}

/* 2026/11/06 George 付款等短表格依內容寬度顯示，僅長明細橫向捲動。 */
@media(max-width:820px){.mobile-detail-panel .live-table{min-width:0}.page-tools .page-controls{grid-template-columns:minmax(100px,1.3fr) 1fr 1fr}}

.nav-symbol{display:inline-block;min-width:1.7em;font-size:1em;vertical-align:baseline;flex-shrink:0}

[data-admin-only][hidden]{display:none!important}
