:root{--bg: #f5f3ee;--card: #ffffff;--border: #e8e4dd;--border-strong: #d8d2c6;--border-table: #ede9e1;--ink: #211d17;--ink-2: #6b6459;--ink-3: #746b5e;--dark: #26221b;--dark-2: #332d24;--gold: #b08d57;--gold-ink: #8f6b3b;--gold-soft: #f3ead9;--gold-on-dark: #d8b98a;--danger: #9c3a2e;--danger-deep: #8a3328;--row-hover: #faf8f4;--shadow-card: 0 1px 2px rgba(33, 29, 23, .05);--shadow-pop: 0 24px 60px rgba(33, 29, 23, .18);--tag-pending-bg: #fbf3e4;--tag-pending-ink: #8a5a00;--tag-settled-bg: #edf5ef;--tag-settled-ink: #2e6b46;--tag-refunded-bg: #f9eeec;--tag-refunded-ink: #9c3a2e;--tag-voided-bg: #f1efeb;--tag-voided-ink: #7a7264;--tag-offset-bg: #fdf0e6;--tag-offset-ink: #a85b12;--radius-card: 12px;--radius-ctl: 9px;--radius-tag: 6px}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:clip}body{margin:0;background:var(--bg);color:var(--ink);font:14px ui-rounded,PingFang SC,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:40px;border:1px solid var(--border-strong);background:var(--card);color:var(--ink);border-radius:var(--radius-ctl);padding:8px 14px;font-weight:600;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}button:hover:not(:disabled){border-color:var(--gold);color:var(--gold-ink)}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}input[type=checkbox],input[type=radio]{accent-color:var(--gold);width:16px;height:16px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline-offset:1px}.shell{display:flex;min-height:100vh;min-width:0}.nav{width:224px;flex:0 0 224px;background:var(--dark);color:#cfc7b8;padding:26px 14px}.brand{color:#f5efe3;font-size:20px;font-weight:700;padding:0 12px 28px}.brand small{display:block;color:#a79b87;font-size:12px;margin-top:7px;font-weight:400}.nav button{width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:11px 12px;border-radius:var(--radius-ctl);margin:2px 0;display:flex;align-items:center;gap:11px;font-weight:500;min-height:42px}.nav button:hover{background:var(--dark-2);color:#f1eadc}.nav button.on,.nav button.on:hover{background:var(--dark-2);color:var(--gold-on-dark);box-shadow:inset 2px 0 0 var(--gold)}.nav-icon{width:18px;height:18px;flex:0 0 auto;opacity:.8}.nav button.on .nav-icon{opacity:1}.main{flex:1;min-width:0;padding:30px;max-width:1500px}.top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:22px}.top h1{margin:0;font-size:24px;letter-spacing:-.01em}.card{max-width:100%;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card);padding:20px;box-shadow:var(--shadow-card);margin-bottom:16px;overflow-x:auto}.card h3{margin-top:0}.product-choice:focus-within,.record-option:focus-within,.upload-zone:focus-within{outline:2px solid var(--ink);outline-offset:3px}.muted{color:var(--ink-2)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.metric{color:var(--ink-2);font-size:13px}.metric b{display:block;font-size:27px;margin-top:10px;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.metric-primary{border-left:3px solid var(--gold)}.metric-primary b{font-size:32px;color:var(--gold-ink)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.row input,.row select,.row textarea{border:1px solid var(--border-strong);border-radius:var(--radius-ctl);padding:9px;background:#fff;color:var(--ink);min-height:40px}.filters{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.filter-field{display:flex;flex-direction:column;gap:5px}.filter-field>span{font-size:12px;color:var(--ink-2);font-weight:600}.filter-field input,.filter-field select{min-height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-ctl);padding:8px 10px;background:#fff;color:var(--ink)}.filters .action-large{margin-left:auto}.primary{background:var(--dark)!important;color:#f7f3ea!important;border:1px solid var(--dark)!important;border-radius:var(--radius-ctl)!important;padding:9px 16px!important}.primary:hover:not(:disabled){background:var(--dark-2)!important;color:#fff!important}.action-large{min-height:48px!important;padding:12px 22px!important;font-size:16px!important;font-weight:700!important;box-shadow:0 6px 16px #26221b29;transition:transform .18s ease,box-shadow .18s ease}.action-large:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 20px #26221b33}.action-large:active{transform:translateY(1px)}.danger{background:var(--danger)!important;color:#fdf6f4!important;border:0!important;border-radius:var(--radius-ctl)!important;padding:9px 16px!important}.danger:hover:not(:disabled){background:var(--danger-deep)!important;color:#fff!important}.tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-tag);background:var(--tag-voided-bg);color:var(--tag-voided-ink);font-size:12px;font-weight:600;white-space:nowrap}.tag.pending,.tag.pending_recovery{background:var(--tag-pending-bg);color:var(--tag-pending-ink)}.tag.settled,.tag.recovered,.tag.active{background:var(--tag-settled-bg);color:var(--tag-settled-ink)}.tag.refunded{background:var(--tag-refunded-bg);color:var(--tag-refunded-ink)}.tag.voided,.tag.reversed,.tag.disabled{background:var(--tag-voided-bg);color:var(--tag-voided-ink)}.tag.offset_applied,.tag.offset{background:var(--tag-offset-bg);color:var(--tag-offset-ink)}.tag.role-super{background:var(--gold-soft);color:var(--gold-ink)}.tag.role-op{background:var(--tag-voided-bg);color:var(--tag-voided-ink)}table{width:100%;border-collapse:collapse}th,td{padding:11px 12px;border-bottom:1px solid var(--border-table);text-align:left;vertical-align:top}th{font-size:12px;color:var(--ink-2);font-weight:600;white-space:nowrap}tbody tr{transition:background .15s ease}tbody tr:hover{background:var(--row-hover)}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}td.num,.metric b,.summary-total strong{font-variant-numeric:tabular-nums}.neg{color:var(--tag-offset-ink);font-weight:600}.empty{text-align:center;padding:42px;color:var(--ink-3)}.hint{display:block;font-size:11px;color:var(--ink-3);margin-top:4px;max-width:180px;white-space:normal}.audit-action{font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;background:#f4f1ea;padding:2px 7px;border-radius:var(--radius-tag);color:var(--ink-2)}.settle-bar{position:sticky;bottom:14px;z-index:2;display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:var(--dark);color:#efe9dc;border-radius:var(--radius-card);padding:14px 18px;margin-bottom:16px;box-shadow:0 10px 28px #211d1747}.settle-bar-info{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.settle-bar-info strong{font-size:15px}.settle-bar-info span{color:#b9b0a0;font-size:13px}.settle-amount{color:var(--gold-on-dark);font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.settle-date{display:flex;align-items:center;gap:8px;font-size:12px;color:#b9b0a0}.settle-date input{min-height:40px;border:1px solid #4a4234;background:var(--dark-2);color:#efe9dc;border-radius:var(--radius-ctl);padding:8px 10px}.settle-bar .primary{margin-left:auto;background:var(--gold)!important;border-color:var(--gold)!important;color:var(--dark)!important;min-height:44px!important}.settle-bar .primary:hover:not(:disabled){background:#c09d67!important}.receipt-thumb{display:block;width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid var(--border);margin-bottom:4px}.receipt-thumb-loading,.receipt-thumb-failed{display:grid;place-items:center;background:#f0ece4;color:var(--ink-3);font-size:11px;text-align:center;padding:4px}.receipt-thumb-loading{animation:thumb-pulse 1.4s ease infinite}.receipt-thumb-failed{animation:none;background:#f4f1ea}@keyframes thumb-pulse{50%{opacity:.5}}.receipt-dialog{max-width:860px}.receipt-viewer img{display:block;max-width:100%;max-height:68dvh;margin:0 auto;border-radius:10px;border:1px solid var(--border);background:#fff}.login{max-width:400px;margin:12vh auto;padding:32px}.login h1{margin:0 0 4px}.login input{display:block;width:100%;margin:10px 0;padding:12px;border:1px solid var(--border-strong);border-radius:10px;min-height:44px;background:#fff;color:var(--ink)}.login .primary{width:100%;min-height:46px!important;margin-top:6px}.notice{display:flex;align-items:center;gap:9px;padding:11px 14px;border-radius:var(--radius-ctl);background:var(--tag-pending-bg);color:var(--tag-pending-ink);border:1px solid #efdfc0;margin:12px 0;font-weight:500}.notice.success{background:var(--tag-settled-bg);color:var(--tag-settled-ink);border-color:#d6e6dc}.notice.success:before{content:"\2713";flex:0 0 auto;width:18px;height:18px;border-radius:50%;background:var(--tag-settled-ink);color:#fff;font-size:11px;display:grid;place-items:center}.notice.error{background:var(--tag-refunded-bg);color:var(--tag-refunded-ink);border-color:#edd5d0}.notice.error:before{content:"!";flex:0 0 auto;width:18px;height:18px;border-radius:50%;background:var(--tag-refunded-ink);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center}.notice button{margin-left:auto}.modal{position:fixed;inset:0;background:#211d1780;display:flex;align-items:center;justify-content:center;padding:18px;z-index:3;overscroll-behavior:contain}.dialog{background:var(--card);max-width:680px;width:100%;max-height:90dvh;overflow:auto;padding:24px;border-radius:var(--radius-card);box-shadow:var(--shadow-pop)}.dialog-heading h2{margin:0 0 18px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.action-impact{border:1px solid #edd5d0;background:#fbf4f2;border-radius:var(--radius-card);padding:14px 16px;margin:12px 0}.action-impact.neutral{border-color:var(--border);background:#faf8f3}.action-impact>span{display:block;font-size:12px;color:var(--ink-2)}.action-impact>b{display:block;font-size:22px;margin-top:4px;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.action-impact>small{display:block;margin-top:5px;color:var(--ink-2);line-height:1.6}.batch-overview{background:#faf8f3;border:1px solid var(--border);border-radius:var(--radius-ctl);padding:12px 14px;margin-bottom:4px}.batch-overview b{font-variant-numeric:tabular-nums}.detail-section{padding-top:16px;margin-top:16px;border-top:1px solid var(--border-table)}.detail-section h3{margin:0 0 10px;font-size:14px}.detail-section h3 small{margin-left:8px;font-weight:400;color:var(--ink-3)}.grid{display:grid;grid-template-columns:1fr;gap:14px;margin:4px 0 6px}.grid label{display:flex;flex-direction:column;gap:6px;color:var(--ink);font-size:13px}.grid label>b{font-size:13px;font-weight:600}.grid label>small{font-size:11px;color:var(--ink-3)}.grid input,.grid select,.grid textarea{width:100%;min-height:44px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;color:var(--ink);padding:10px 12px;transition:border-color .18s ease,box-shadow .18s ease}.grid input:focus,.grid select:focus,.grid textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b08d5729;outline:0}.grid input:disabled,.grid select:disabled{background:#f4f1ea;color:var(--ink-3)}.check{display:flex!important;flex-direction:row!important;align-items:center}.dialog-form label{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:13px;font-weight:600;color:var(--ink)}.dialog-form select,.dialog-form textarea{min-height:44px;border:1px solid var(--border-strong);border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink);font-weight:400}.dialog-form textarea{min-height:88px;resize:vertical}.dialog-form select:focus,.dialog-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b08d5729;outline:0}.record-dialog{max-width:1100px;height:min(900px,calc(100dvh - 48px));max-height:none;padding:0;border-radius:16px;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);box-shadow:var(--shadow-pop)}.record-heading{min-height:94px;padding:22px 28px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px}.record-heading h2{margin:0 0 5px;font-size:23px;letter-spacing:-.02em}.record-heading p{margin:0;font-size:13px}.dialog-title-wrap,.record-heading-actions{display:flex;align-items:center}.dialog-title-wrap{gap:14px}.dialog-title-mark{width:42px;height:42px;border-radius:13px;background:var(--gold-soft);color:var(--gold-ink);display:grid;place-items:center;font-weight:800}.record-heading-actions{gap:16px}.draft-status{font-size:12px;color:#2e6b46;display:flex;align-items:center;gap:7px}.draft-status:before{content:"";width:8px;height:8px;border-radius:50%;background:#4c9a70}.dialog-close{width:38px;height:38px;min-height:38px;border-radius:50%;border:1px solid var(--border-strong);background:#fff;color:var(--ink-2);font-size:20px;line-height:1;padding:0;transition:background .18s ease,transform .18s ease}.dialog-close:hover{background:var(--row-hover)}.dialog-close:active{transform:scale(.97)}.record-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.82fr);grid-template-rows:minmax(0,1fr) 80px;min-height:0}.record-form-pane{padding:28px 32px;overflow:auto}.record-summary{padding:27px 26px;background:#faf8f4;border-left:1px solid var(--border);overflow:auto}.record-footer{grid-column:1/-1;border-top:1px solid var(--border);background:#fff;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--ink-2);font-size:12px}.record-footer>div{display:flex;gap:10px}.record-footer button{min-height:46px;border:1px solid var(--border-strong);background:#fff;border-radius:10px;padding:0 22px;font-weight:700;color:var(--ink)}.record-footer .record-save{min-width:146px;border-radius:10px!important;box-shadow:0 7px 16px #26221b2e}.record-footer .record-save:disabled{opacity:.46;cursor:not-allowed;box-shadow:none}.record-section{padding-bottom:26px;margin-bottom:24px;border-bottom:1px solid var(--border-table)}.record-section:last-child{border-bottom:0;margin-bottom:0}.record-section-title{display:flex;align-items:baseline;gap:10px;margin-bottom:16px}.record-section-title>span{font:700 11px ui-monospace,SFMono-Regular,monospace;color:var(--gold-ink);letter-spacing:.08em}.record-section-title h3{font-size:16px;margin:0}.record-section-title small{margin-left:auto;color:var(--ink-2)}.record-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.record-field{display:flex;flex-direction:column;gap:7px;color:var(--ink)}.record-field.full{grid-column:1/-1}.record-field>b{font-size:13px}.record-field>small{font-size:11px;color:var(--ink-3)}.record-field input,.record-field select,.record-field textarea{width:100%;min-height:47px;border:1px solid var(--border-strong);border-radius:10px;background:#fff;padding:11px 13px;color:var(--ink);transition:border-color .18s ease,box-shadow .18s ease}.record-field textarea{min-height:78px;resize:vertical}.record-field input:focus,.record-field select:focus,.record-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b08d5729;outline:0}.record-field input:disabled,.record-field select:disabled{background:#f4f1ea;color:var(--ink-3)}.product-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.product-choice{position:relative;min-height:102px;border:1px solid var(--border);border-radius:13px;padding:14px;background:#fff;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.product-choice:hover{border-color:#d9c39a;transform:translateY(-1px)}.product-choice.selected{border:2px solid var(--gold);padding:13px;background:#fbf7ee}.product-choice-head{display:flex;align-items:center;justify-content:space-between}.product-choice-head>b{font-size:15px}.product-choice-head i{width:17px;height:17px;border-radius:50%;border:1px solid var(--border-strong)}.product-choice.selected .product-choice-head i{border-color:var(--gold);box-shadow:inset 0 0 0 4px #fff;background:var(--gold)}.product-choice>strong{display:block;font-size:18px;margin-top:7px;font-variant-numeric:tabular-nums}.product-choice>small{display:block;color:var(--ink-2);margin-top:8px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.record-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.record-option{min-height:68px;border:1px solid var(--border);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:11px;cursor:pointer;background:#fff}.record-option>span:last-child b,.record-option>span:last-child small{display:block}.record-option>span:last-child b{font-size:13px}.record-option>span:last-child small{color:var(--ink-2);margin-top:4px}.switch{width:38px;height:22px;border-radius:999px;background:#cdc6b9;padding:3px;flex:0 0 auto;transition:background .18s ease}.switch i{display:block;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .18s ease}.switch.on{background:var(--gold)}.switch.on i{transform:translate(16px)}.special-fields{margin-top:15px;padding:16px;border:1px solid var(--border);border-radius:13px;background:#faf8f3}.upload-zone{position:relative;min-height:104px;border:1px dashed var(--border-strong);border-radius:13px;background:#faf8f3;display:flex;align-items:center;padding:17px;gap:14px;cursor:pointer;overflow:hidden}.upload-zone.uploaded{border-style:solid;border-color:#bfdccb;background:#f4faf6}.upload-mark{width:47px;height:47px;border-radius:12px;background:#efe9dd;display:grid;place-items:center;color:var(--ink-2);font-weight:800;flex:0 0 auto}.upload-zone.uploaded .upload-mark{background:#e0f0e7;color:#2e6b46}.upload-zone>span:nth-child(2) strong,.upload-zone>span:nth-child(2) small{display:block}.upload-zone>span:nth-child(2) strong{font-size:13px}.upload-zone>span:nth-child(2) small{font-size:12px;color:var(--ink-2);margin-top:5px}.upload-action{margin-left:auto;border:1px solid var(--border-strong);background:#fff;border-radius:8px;padding:8px 12px;color:var(--ink);font-weight:650;white-space:nowrap}.file-native{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.record-summary>h3{margin:0 0 16px;font-size:14px;color:var(--ink-2)}.summary-owner{background:#fff;border:1px solid var(--border);border-radius:15px;padding:16px;margin-bottom:16px}.summary-owner span,.summary-owner b,.summary-owner small{display:block}.summary-owner span{font-size:12px;color:var(--ink-2)}.summary-owner b{font-size:17px;margin-top:6px}.summary-owner small{display:inline-block;margin-top:10px;padding:5px 8px;border-radius:999px;background:var(--gold-soft);color:var(--gold-ink)}.summary-lines{padding:8px 2px 18px;border-bottom:1px solid var(--border)}.summary-lines p{display:flex;justify-content:space-between;gap:16px;margin:0;padding:8px 0;color:var(--ink-2);font-size:13px}.summary-lines b{color:var(--ink);font-variant-numeric:tabular-nums}.summary-total{padding:21px 0}.summary-total span,.summary-total strong,.summary-total small{display:block}.summary-total span,.summary-total small{color:var(--ink-2);font-size:12px}.summary-total strong{font-size:34px;letter-spacing:-.04em;margin:5px 0;color:var(--ink)}.summary-checks{border-top:1px solid var(--border);padding-top:18px}.summary-checks h4{margin:0 0 10px;color:var(--ink-2)}.summary-checks p{position:relative;padding-left:26px;margin:10px 0;color:var(--ink-2);font-size:12px;line-height:1.5}.summary-checks i{position:absolute;left:0;top:1px;width:17px;height:17px;border-radius:50%;background:#e0f0e7;color:#2e6b46;font-style:normal;display:grid;place-items:center;font-size:11px}@media (max-width: 760px){button{min-height:42px}.nav{width:60px;flex-basis:60px;padding:18px 8px}.nav button{justify-content:center;padding:11px 6px}.nav .label,.brand small,.brand{display:none}.nav:before{content:"\63a8";display:block;width:36px;line-height:36px;margin:0 auto 22px;text-align:center;font-size:16px;font-weight:700;color:var(--gold-on-dark);border:1px solid rgba(176,141,87,.55);border-radius:9px}.main{padding:14px;min-width:0}.cards{grid-template-columns:1fr 1fr}.cards .metric:first-child{grid-column:span 2}.metric b{font-size:22px}.metric-primary b{font-size:26px}.card{padding:14px}table{font-size:12px;display:block;max-width:100%;overflow-x:auto;white-space:nowrap}.hint{white-space:normal}.top h1{font-size:20px}.filters .action-large{margin-left:0;width:100%}.settle-bar{flex-direction:column;align-items:stretch;gap:10px;bottom:8px}.settle-bar .primary{margin-left:0;width:100%}.settle-date input{flex:1}.modal{padding:0;align-items:stretch}.dialog{max-width:none;width:100%;min-height:100dvh;max-height:none;border-radius:0;padding:18px}.record-dialog{width:100%;height:100dvh;border-radius:0}.record-heading{min-height:82px;padding:16px}.dialog-title-mark,.draft-status{display:none}.record-heading h2{font-size:20px}.record-workspace{display:flex;flex-direction:column;overflow:auto}.record-form-pane{padding:20px 16px;overflow:visible}.record-summary{border-left:0;border-top:1px solid var(--border);overflow:visible;padding:22px 16px}.record-footer{position:sticky;bottom:0;min-height:76px;padding:12px 16px;flex-direction:column;align-items:stretch;background:#fff}.record-footer>span{display:none}.record-footer>div{width:100%}.record-footer button{flex:1;padding:0 12px}.record-fields,.product-choice-grid,.record-options{grid-template-columns:1fr}.record-section-title small{display:none}.upload-zone{align-items:flex-start}.upload-action{position:absolute;right:14px;bottom:14px}.product-choice{min-height:90px}}
