:root{--bg-page: #f5f6f8;--bg-panel: #ffffff;--border: #d0d7de;--primary: #4a6fa5;--primary-hover: #3d5f8f;--text: #1f2933;--text-secondary: #5f6b7a;--danger: #c0392b;--success: #2e7d4f;--radius: 8px;--shadow: 0 1px 3px rgba(0, 0, 0, .06);--content-max-width: 1280px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:var(--text);background:var(--bg-page)}a{color:var(--primary);text-decoration:none}button,input,select,textarea{font:inherit}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.panel-title{margin:0 0 16px;font-size:18px;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:14px;color:var(--text-secondary)}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--border);border-radius:6px;padding:10px 12px;background:#fff}.form-field textarea{min-height:80px;resize:vertical}.list-filters.panel,.filter-toolbar.panel{padding:10px 12px}.list-filter-grid.form-grid,.filter-grid.form-grid{gap:8px 12px}.list-filter-grid.form-grid{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 20px}.form-field.form-field--inline{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:6px 8px;flex:0 1 auto;width:auto;max-width:100%}.form-field.form-field--inline>label{flex:0 0 auto;min-width:0;white-space:nowrap;font-size:13px}.form-field.form-field--inline>input,.form-field.form-field--inline>select,.form-field.form-field--inline>.date-range-field,.form-field.form-field--inline>.month-field{flex:0 1 auto;min-width:0;width:auto}.form-field.form-field--inline>input{width:14em;max-width:100%;padding:6px 10px}.form-field.form-field--inline>select{min-width:8em;max-width:16em;padding:6px 10px}.form-field.form-field--inline>.date-range-field{width:18em;max-width:100%}.form-field.form-field--inline>.date-range-field .date-range-field-input{padding:6px 72px 6px 10px}.form-field.form-field--inline>.month-field{width:12em;max-width:100%}.form-field.form-field--inline>.month-field .month-field-input{padding:6px 72px 6px 10px}.form-field.form-field--inline:has(>.field-hint){display:inline-grid;grid-template-columns:max-content max-content;align-items:center;justify-content:start;width:max-content;max-width:100%}.form-field.form-field--inline>.field-hint{grid-column:1 / -1;margin:0}.list-filter-actions{margin-top:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid transparent;border-radius:6px;padding:10px 16px;cursor:pointer;transition:.2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:#fff;border-color:var(--border);color:var(--text)}.btn-danger{background:#fff;border-color:#e6b0aa;color:var(--danger)}.btn-group{display:flex;flex-wrap:wrap;gap:10px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{border-bottom:1px solid var(--border);padding:10px 12px;text-align:left;font-size:14px;vertical-align:top}.data-table th{background:#f8fafc;font-weight:600;white-space:nowrap}.data-table .cell-check{width:48px;padding:0;vertical-align:middle;text-align:center}.data-table .cell-check .check-hit{display:flex;align-items:center;justify-content:center;min-height:44px;padding:12px;margin:0;cursor:pointer}.data-table .cell-check .check-hit:hover{background:#e8eef6}.data-table .cell-check input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer;accent-color:var(--primary)}.data-table tbody tr.is-selected{background:#eef3f9}.data-table tbody tr.is-selected:hover{background:#e4ebf5}.data-table tbody tr.is-selected .cell-check .check-hit:hover{background:#d9e4f2}.status-tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}.status-pending{background:#fde8c8;color:#8a4b08}.status-claimed{background:#c8ead6;color:#1b6b3a}.status-voided{background:#e2e6ea;color:#4a5560}.status-import{margin-left:4px;background:#e7e0f4;color:#5b3d8a}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.summary-card{border:1px solid var(--border);border-radius:var(--radius);padding:14px;background:#fafbfc}.summary-card .label{font-size:13px;color:var(--text-secondary)}.summary-card .value{margin-top:6px;font-size:22px;font-weight:700}.message{padding:10px 12px;border-radius:6px;font-size:14px}.message-error{background:#fdecea;color:var(--danger);border:1px solid #f5c6cb}.message-success{background:#e8f5ee;color:var(--success);border:1px solid #b7dfc9}.empty-tip{text-align:center;color:var(--text-secondary);padding:24px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.tab-btn{position:relative;border:1px solid var(--border);background:#fff;border-radius:6px;padding:8px 14px;cursor:pointer}.tab-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:11px;font-weight:600;line-height:1}.tab-btn.active .tab-badge{background:#fff;color:var(--primary)}.tab-dot{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:var(--danger);vertical-align:middle}.tab-btn.active .tab-dot{background:#fff}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.modal{width:min(560px,100%);background:#fff;border-radius:var(--radius);padding:20px;border:1px solid var(--border)}.modal h3{margin:0 0 12px}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:16px}.receipt-list-table{table-layout:fixed;width:100%}.receipt-list-table--default{min-width:1164px}.receipt-list-table--with-actions,.receipt-list-table--mine-actions{border-collapse:separate;border-spacing:0}.receipt-list-table--with-actions{min-width:1244px}.receipt-list-table--mine-actions{min-width:1132px}.receipt-list-table--ledger{min-width:1200px}.receipt-list-table--published-history{min-width:1294px}.receipt-list-table--published-history-no-status{min-width:1214px}.receipt-list-table--pending{min-width:724px}.receipt-list-table--finance-pending{min-width:856px}.receipt-list-table--finance-pending .cell-actions,.receipt-list-table--finance-pending td.cell-amount{overflow:visible}.receipt-list-table--finance-pending .cell-actions .btn-group{flex-wrap:nowrap}.receipt-list-table--finance-pending td.cell-amount input{width:100%;min-width:0;box-sizing:border-box}.receipt-list-table th,.receipt-list-table td{overflow:hidden;vertical-align:middle}.receipt-list-table .cell-ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.receipt-list-table .cell-nowrap{white-space:nowrap}.receipt-list-table .invoice-amount-modified{color:var(--danger);font-weight:600}.receipt-list-table td.cell-full{overflow:visible;white-space:nowrap;text-overflow:clip}.receipt-list-table .cell-status{width:132px;white-space:nowrap}.receipt-list-table--ledger .cell-status{width:80px;white-space:normal}.receipt-list-table--ledger .cell-status .status-import{display:block;width:fit-content;margin:4px 0 0}.receipt-list-table--with-actions .cell-actions{width:80px}.receipt-list-table--mine-actions thead th:last-child,.receipt-list-table--mine-actions .cell-actions{width:112px}.receipt-list-table .cell-actions .btn{white-space:nowrap}.receipt-list-table--with-actions thead th:last-child,.receipt-list-table--with-actions .cell-actions,.receipt-list-table--mine-actions thead th:last-child,.receipt-list-table--mine-actions .cell-actions{position:sticky;right:0;z-index:2;background:#fff;overflow:visible}.receipt-list-table--with-actions thead th:last-child,.receipt-list-table--mine-actions thead th:last-child{z-index:3;background:#f8fafc}.receipt-list-table--with-actions thead th:last-child:before,.receipt-list-table--with-actions .cell-actions:before,.receipt-list-table--mine-actions thead th:last-child:before,.receipt-list-table--mine-actions .cell-actions:before{content:"";position:absolute;top:0;bottom:0;left:-10px;width:10px;overflow:hidden;box-shadow:none;pointer-events:none;touch-action:none}.table-scroll.is-scrollable-x.is-scrolling-left .receipt-list-table--with-actions thead th:last-child:before,.table-scroll.is-scrollable-x.is-scrolling-left .receipt-list-table--with-actions .cell-actions:before,.table-scroll.is-scrollable-x.is-scrolling-middle .receipt-list-table--with-actions thead th:last-child:before,.table-scroll.is-scrollable-x.is-scrolling-middle .receipt-list-table--with-actions .cell-actions:before,.table-scroll.is-scrollable-x.is-scrolling-left .receipt-list-table--mine-actions thead th:last-child:before,.table-scroll.is-scrollable-x.is-scrolling-left .receipt-list-table--mine-actions .cell-actions:before,.table-scroll.is-scrollable-x.is-scrolling-middle .receipt-list-table--mine-actions thead th:last-child:before,.table-scroll.is-scrollable-x.is-scrolling-middle .receipt-list-table--mine-actions .cell-actions:before{box-shadow:inset -10px 0 10px -10px #00000026}.receipt-list-table .cell-screenshot{width:56px}.receipt-list-table .cell-claim-description{overflow:hidden}@media(max-width:767px){.panel{padding:14px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-table{min-width:640px}}
