.toolbar-card { padding: 24rpx; } .toolbar-row { display: flex; align-items: center; justify-content: space-between; gap: 18rpx; } .year-picker { min-width: 186rpx; min-height: 74rpx; justify-content: center; color: #162232; font-size: 30rpx; font-weight: 800; } .ledger-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14rpx; flex: 1; } .ledger-summary > view { padding: 14rpx 16rpx; border: 2rpx solid #c5d2e4; border-radius: 14rpx; background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%); box-shadow: 0 7rpx 0 rgba(166, 181, 203, 0.64), inset 0 2rpx 0 rgba(255, 255, 255, 0.9); } .hint-row { margin-top: 22rpx; padding: 14rpx 16rpx; border-radius: 12rpx; background: #eef6ff; color: #475467; font-size: 24rpx; line-height: 1.45; } .ledger-shell { display: flex; width: 100%; margin-top: 18rpx; border: 3rpx solid #99aac3; border-radius: 16rpx; overflow: hidden; background: #ffffff; box-shadow: 0 12rpx 0 rgba(143, 158, 181, 0.72), 0 22rpx 34rpx rgba(22, 34, 50, 0.16), inset 0 2rpx 0 rgba(255, 255, 255, 0.95); } .ledger-fixed { width: 284rpx; flex: 0 0 284rpx; position: relative; z-index: 8; background: #ffffff; box-shadow: 12rpx 0 18rpx rgba(22, 34, 50, 0.14); } .fixed-head, .fixed-product { display: flex; align-items: center; box-sizing: border-box; } .fixed-head { flex-direction: column; justify-content: center; gap: 12rpx; height: 150rpx; padding: 12rpx 14rpx; border-right: 2rpx solid #b4c2d6; border-bottom: 2rpx solid #c4d0e1; background: linear-gradient(180deg, #cbd8ea 0%, #b7c7dd 100%); color: #162232; font-size: 22rpx; font-weight: 800; } .fixed-head-title { display: block; max-width: 100%; line-height: 1.2; } .point-filter-picker { width: 100%; min-height: 56rpx; display: flex; align-items: center; justify-content: center; padding: 0 12rpx; border: 2rpx solid rgba(20, 86, 194, 0.24); border-radius: 12rpx; background: rgba(255, 255, 255, 0.88); color: #1456c2; font-size: 21rpx; font-weight: 800; box-shadow: inset 0 2rpx 0 rgba(255, 255, 255, 0.92), 0 5rpx 0 rgba(126, 146, 175, 0.36); box-sizing: border-box; } .point-filter-picker text { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .fixed-product { flex-direction: column; align-items: flex-start; justify-content: center; height: 164rpx; gap: 8rpx; padding: 14rpx 16rpx; border-right: 2rpx solid #c4d0e1; border-bottom: 2rpx solid #d7e0ec; } .ledger-x { min-width: 0; flex: 1; margin-top: 0; padding-bottom: 0; } .ledger-table { min-width: 100%; overflow: hidden; background: #ffffff; } .ledger-row { display: flex; height: 164rpx; } .ledger-head { height: 150rpx; background: linear-gradient(180deg, #dce8f8 0%, #c8d8ed 100%); color: #162232; font-size: 24rpx; font-weight: 800; } .data-row:nth-child(odd) { background: #f9fbfe; } .data-row:nth-child(even) { background: #ffffff; } .ledger-fixed .data-row:nth-child(odd) { background: #f9fbfe; } .ledger-fixed .data-row:nth-child(even) { background: #ffffff; } .point-name { display: -webkit-box; max-width: 100%; overflow: hidden; color: #1456c2; font-size: 20rpx; font-weight: 800; line-height: 1.28; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .product-name { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; color: #162232; font-size: 22rpx; font-weight: 700; line-height: 1.32; word-break: break-all; } .month-block { flex: 0 0 auto; border-right: 2rpx solid #c4d0e1; border-bottom: 2rpx solid #d7e0ec; box-sizing: border-box; } .month-end-spacer { flex: 0 0 auto; border-bottom: 2rpx solid #d7e0ec; background: #f8fbff; box-sizing: border-box; } .month-title { height: 74rpx; display: flex; align-items: center; justify-content: center; gap: 10rpx; padding: 0 10rpx; background: linear-gradient(180deg, #edf4ff 0%, #d8e6f8 100%); color: #162232; box-sizing: border-box; } .month-block.collapsed .month-title { height: 150rpx; flex-direction: column; } .month-toggle { padding: 4rpx 10rpx; border-radius: 999rpx; background: rgba(20, 86, 194, 0.1); color: #1456c2; font-size: 20rpx; font-weight: 800; } .month-subhead { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); height: 76rpx; align-items: center; text-align: center; color: #475467; font-size: 21rpx; } .month-subhead text:not(:last-child) { border-right: 2rpx solid #c4d0e1; } .row-month { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-height: 164rpx; } .row-month.collapsed { display: flex; align-items: stretch; } .qty-cell { display: flex; align-items: center; justify-content: center; min-width: 0; padding: 8rpx; color: #162232; font-size: 24rpx; font-weight: 800; box-sizing: border-box; } .reported { border-right: 2rpx solid #d7e0ec; background: rgba(235, 244, 255, 0.52); } .editable { background: rgba(235, 255, 244, 0.45); } .editable:not(:last-child) { border-right: 2rpx solid #d7e0ec; } .editable.return { background: rgba(255, 248, 230, 0.64); } .ledger-input { width: 96rpx; height: 58rpx; border: 2rpx solid #8fb7a0; border-radius: 12rpx; background: #ffffff; color: #087443; font-size: 25rpx; font-weight: 800; text-align: center; box-shadow: inset 0 2rpx 0 rgba(255, 255, 255, 0.95), 0 5rpx 0 rgba(130, 174, 151, 0.46); box-sizing: border-box; } .collapsed-cell { width: 100%; display: flex; align-items: center; justify-content: center; color: #667085; font-size: 22rpx; font-weight: 800; background: repeating-linear-gradient(135deg, rgba(148, 163, 184, 0.12) 0, rgba(148, 163, 184, 0.12) 6rpx, transparent 6rpx, transparent 14rpx), #f2f5f9; } .empty-product, .ledger-empty-cell { align-items: center; justify-content: center; color: #667085; font-size: 24rpx; font-weight: 700; } .empty-product { text-align: center; } .ledger-empty-cell { height: 164rpx; display: flex; flex: 0 0 auto; border-bottom: 2rpx solid #d7e0ec; background: #f8fbff; box-sizing: border-box; }