/** * 文件职责:发票管理页面布局样式。 */ .fi-seg-wrap { margin-bottom: 2px; } .fi-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; } .fi-stat-card { padding: 18px 20px; background: #fff; border: 1px solid #f0f0f0; border-radius: 10px; box-shadow: 0 2px 8px rgb(15 23 42 / 6%); transition: all 0.2s ease; &:hover { box-shadow: 0 6px 14px rgb(15 23 42 / 10%); transform: translateY(-1px); } &.warn .fi-stat-val { color: #fa8c16; } &.danger .fi-stat-val { color: #ff4d4f; } } .fi-stat-label { display: flex; gap: 6px; align-items: center; margin-bottom: 8px; font-size: 13px; color: rgb(0 0 0 / 45%); } .fi-stat-icon { width: 16px; height: 16px; } .fi-stat-val { font-size: 24px; font-weight: 700; line-height: 1.2; color: rgb(0 0 0 / 88%); } .fi-stat-sub { margin-top: 4px; font-size: 12px; color: rgb(0 0 0 / 45%); } .fi-toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 14px 16px; background: #fff; border: 1px solid #f0f0f0; border-radius: 10px; box-shadow: 0 2px 8px rgb(15 23 42 / 6%); .fi-date-input { width: 146px; } .fi-status-select, .fi-type-select { width: 124px; } .fi-date-sep { font-size: 13px; line-height: 32px; color: rgb(0 0 0 / 45%); } .fi-toolbar-spacer { flex: 1; } .fi-search { width: 220px; } .fi-search-icon { width: 14px; height: 14px; color: rgb(0 0 0 / 45%); } .ant-select-selector, .ant-input, .ant-input-affix-wrapper { height: 32px; font-size: 13px; } .ant-input-affix-wrapper .ant-input { height: 100%; } } .fi-settings { display: flex; flex-direction: column; gap: 12px; } .fi-section-hd { padding-left: 10px; margin-bottom: 16px; font-size: 15px; font-weight: 600; color: rgb(0 0 0 / 88%); border-left: 3px solid #1677ff; } .fi-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; } .fi-toggle-row { display: flex; gap: 10px; align-items: center; margin-bottom: 14px; } .fi-toggle-label { font-size: 13px; font-weight: 500; color: rgb(0 0 0 / 88%); } .fi-toggle-hint { font-size: 12px; color: rgb(0 0 0 / 45%); } .fi-auto-form { max-width: 340px; } .fi-max-amount-input { width: 100%; } .fi-save-bar { display: flex; gap: 8px; justify-content: flex-end; }