:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#20342c;background:#f3f6f4;font-synthesis:none;font-size:14px;--green:#164c3b;--line:#dce4df;--muted:#5c6e64}*{box-sizing:border-box}body{margin:0}header{background:#163d30;color:#fff}.header-inner{max-width:1480px;margin:auto;padding:19px 36px;display:flex;justify-content:space-between;align-items:center}.brand{color:inherit;text-decoration:none;font-weight:700;font-size:19px}.brand span{font-size:14px;font-weight:400;opacity:.82;margin-left:18px}.header-actions{display:flex;gap:24px;align-items:center;font-size:12px;color:#d2e3d9}main{max-width:1480px;margin:0 auto;padding:40px 36px 24px;min-height:calc(100vh - 132px)}h1{font-size:30px;line-height:1.3;letter-spacing:-.02em;margin:0 0 10px}h2{font-size:17px;margin:0 0 7px}p{line-height:1.65;margin:0 0 8px}.subtle{color:var(--muted);font-size:13px}.page-top{display:flex;justify-content:space-between;gap:28px;align-items:center;margin-bottom:28px}.date-controls{display:flex;gap:10px;align-items:flex-end}label{font-weight:600;font-size:12px;display:block}input{display:block;font:inherit;font-size:14px;margin-top:7px;padding:10px 12px;border:1px solid #aebeb3;border-radius:6px;color:#20342c;background:white;min-height:42px}input::placeholder{color:var(--muted)}button,.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;border:1px solid transparent;border-radius:6px;background:var(--green);color:white;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap}button:hover,.button:hover{background:#23654f}button:disabled{opacity:.55;cursor:wait}.secondary{background:white;color:var(--green);border-color:#aebeb3}.secondary:hover{background:#eaf2ed}.quiet{background:transparent;border-color:#6f9482;min-height:30px;padding:5px 11px;color:white}input:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:3px solid #3f9978;outline-offset:3px}.ledger{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.ledger-top{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:23px 24px 18px}.summary{display:flex;gap:24px;align-items:baseline;font-size:13px;color:var(--muted)}.summary strong{color:#20342c;font-variant-numeric:tabular-nums;font-size:18px;margin-right:5px}.summary .sum{color:var(--green)}.warning{padding:13px 24px;background:#fff3d8;color:#78531a;line-height:1.5;font-size:13px}.filters{display:flex;align-items:center;gap:24px;padding:18px 24px;border-bottom:1px solid var(--line)}.search-label{flex:1;max-width:420px}.search-label input{width:100%;font-weight:400}.check{display:flex;gap:9px;align-items:center;margin-top:20px;cursor:pointer;font-size:13px}.check input{display:inline;min-height:auto;margin:0;width:16px;height:16px;accent-color:var(--green)}#visible-count{margin-left:auto;margin-top:20px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;min-width:1040px}thead{background:#f7f9f7}th{font-size:12px;font-weight:600;color:#596d60;padding:13px 18px;white-space:nowrap}td{padding:16px 18px;border-top:1px solid #e7ece8;vertical-align:top;line-height:1.55;font-size:13px}tbody tr:hover{background:#f9fbf9}td small{display:block;color:#62766a;font-size:12px;margin-top:4px;overflow-wrap:anywhere}.number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.product{min-width:210px;max-width:320px}.sku{font-family:ui-monospace,Consolas,monospace;font-size:12px}.order-id{font-family:ui-monospace,Consolas,monospace;font-size:12px;white-space:nowrap}.status{color:#426750;font-size:12px;white-space:nowrap}.status.pending{color:#936111;font-weight:600}.pending-row td:first-child{background:#fffbef}.order-query{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:25px 0;margin-top:8px;border-bottom:1px solid var(--line)}.order-query p{max-width:510px}.order-query form{display:flex;align-items:flex-end;gap:10px}.order-query input{width:275px;font-weight:400}.explanation{margin-top:22px;color:var(--muted);font-size:13px;max-width:960px}.explanation summary{font-weight:600;cursor:pointer;margin-bottom:10px}.explanation p{max-width:80ch}footer{max-width:1480px;margin:auto;padding:18px 36px;color:#62766a;font-size:12px;border-top:1px solid var(--line)}.empty{padding:36px 24px;text-align:center;color:var(--muted)}#message:not(:empty){padding:13px 16px;margin-bottom:20px;border:1px solid #d9bf87;background:#fff7e6;border-radius:6px;color:#78531a}#login-error{color:#a13627;margin-top:12px}.login{max-width:470px;margin:9vh auto 50px;background:white;padding:34px;border:1px solid var(--line);border-radius:12px}.login h1{font-size:25px}.login-intro{margin-bottom:27px}.login-intro p{color:var(--muted)}.login input{width:100%}.login button{width:100%;margin-top:18px}.login>.subtle{margin-top:20px}.login[hidden],[hidden]{display:none!important}@media(max-width:1050px){.page-top{align-items:flex-start;flex-direction:column}.ledger-top{align-items:flex-start;flex-direction:column}.order-query{align-items:flex-start;flex-direction:column}.summary{flex-wrap:wrap;gap:14px}.date-controls{width:100%}}@media(max-width:600px){.header-inner{padding:16px 18px}.brand span{display:none}.header-actions{gap:12px;font-size:11px}main{padding:27px 16px 20px}h1{font-size:25px}.date-controls{flex-wrap:wrap;gap:9px}.date-controls label{flex:1}.date-controls input{width:100%}.date-controls .button{width:100%}.ledger-top{padding:20px 16px}.summary{gap:12px;font-size:12px}.summary strong{font-size:16px}.warning{padding:13px 16px}.filters{padding:16px;gap:13px;flex-wrap:wrap}.search-label{flex-basis:100%;max-width:none}.check,#visible-count{margin-top:0}.order-query form{flex-wrap:wrap;width:100%}.order-query label{width:100%}.order-query input{width:100%}.order-query button{flex:1}.login{padding:25px;margin-top:7vh}.login h1{font-size:22px}footer{padding:18px 16px}.explanation p{line-height:1.8}}
/* Order-first reconciliation: keep a product and its price in one visual row. */
.overview{display:grid;grid-template-columns:1fr 1fr 1.3fr;background:#fff;border:1px solid var(--line);border-radius:12px;margin:0 0 24px;overflow:hidden}.overview-metric{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 26px}.overview-metric+.overview-metric{border-left:1px solid var(--line)}.overview-metric>span{font-size:14px;font-weight:600}.overview-metric>strong{font-size:32px;line-height:1.2;font-variant-numeric:tabular-nums}.overview-metric>small{font-size:12px;color:var(--muted)}.overview-metric.attention{background:#fff9eb;color:#79531a}.overview-action{position:absolute;right:22px;bottom:22px;min-height:32px;background:#fff3d7;color:#79531a;border-color:#d6bc87;font-size:12px;padding:6px 10px}.overview-action:hover{background:#f6e7c6}.summary{display:none}.ledger-top{padding-bottom:8px}.warning{margin:8px 24px 0;border-radius:6px}.filters{padding-top:12px}.order-list{padding:0 24px 12px}.order-block{padding:22px 0 4px}.order-block+.order-block{border-top:2px solid #d7e2da;margin-top:18px}.order-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.order-identity{display:flex;flex-direction:column;gap:6px}.shop-title{font-size:16px}.order-identity .order-id{font-size:13px;color:var(--muted)}.order-total{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;justify-content:flex-end}.order-total>strong{font-size:23px;font-variant-numeric:tabular-nums}.currency{font-size:11px;color:var(--muted)}.item-line{display:grid;grid-template-columns:88px minmax(200px,1fr) 70px 135px 140px;align-items:center;gap:20px;padding:15px 16px;border-top:1px solid #e5ebe6;background:#fafcfb}.item-line.item-pending{background:#fffbf0}.product-picture{width:88px;height:88px;border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e2e7e3}.product-picture img{width:100%;height:100%;object-fit:contain}.product-picture span{font-size:12px;color:var(--muted)}.item-info h3{font-size:15px;line-height:1.5;font-weight:600;margin:0 0 7px;overflow-wrap:anywhere}.item-info .sku{display:block;color:var(--muted);margin-bottom:5px}.item-details{font-size:12px;color:var(--muted)}.item-details summary{cursor:pointer;display:list-item}.item-details p{margin:7px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.item-price,.item-quantity,.item-subtotal{display:flex;flex-direction:column;gap:7px;text-align:right;font-variant-numeric:tabular-nums}.metric-label{font-size:11px;color:var(--muted)}.item-quantity strong{font-size:16px}.item-price strong{font-size:17px}.item-subtotal strong{font-size:20px;color:var(--green)}.item-pending .item-subtotal strong,.item-pending .item-price strong{font-size:15px;color:#895b15}.issue-label{display:inline-block;color:#895b15;font-size:12px;font-weight:600;margin-top:7px}.page-top{margin-bottom:22px}main{padding-top:30px}.order-query{background:#e9f1ec;padding:20px 24px;border-radius:10px;border-bottom:0;margin-top:24px}@media(max-width:1000px){.overview-action{position:static;align-self:flex-start;margin-top:4px}.item-line{grid-template-columns:76px minmax(150px,1fr) 45px 100px 110px;gap:12px}.product-picture{width:76px;height:76px}.overview-metric{padding:20px}.order-total>.subtle{width:100%;text-align:right}}@media(max-width:600px){.overview{grid-template-columns:1fr 1fr}.overview-metric{padding:16px}.overview-metric:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line)}.overview-metric>strong{font-size:27px}.overview-action{padding:6px 8px}.order-list{padding:0 14px 12px}.order-head{align-items:flex-start}.order-identity .order-id{font-size:10px;white-space:normal;overflow-wrap:anywhere}.shop-title{font-size:13px}.order-total{gap:4px;min-width:110px}.order-total>strong{font-size:19px}.order-total>.subtle{font-size:10px}.item-line{grid-template-columns:66px 1fr 1fr;gap:12px;padding:14px 10px}.product-picture{width:66px;height:78px;grid-row:1}.item-info{grid-column:2/4}.item-info h3{font-size:14px}.item-quantity,.item-price,.item-subtotal{grid-row:2;text-align:left;gap:5px}.item-subtotal{text-align:right}.item-price strong,.item-subtotal strong{font-size:16px}.warning{margin-left:14px;margin-right:14px}.order-query{padding:20px 16px}.item-info .sku{font-size:11px}}
.compare-band{margin:0 0 12px;padding:16px 20px;border:1px solid #d8e5dc;border-radius:8px;background:#f2f8f4}.compare-verdict{font-weight:700;font-size:15px;margin-bottom:13px}.compare-metrics{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.compare-metric{display:flex;flex-direction:column;gap:6px}.compare-metric>span{font-size:12px;color:#5c6e64}.compare-metric>strong{font-size:23px;font-variant-numeric:tabular-nums;line-height:1.3}.amount-alert{background:#fff2ef;border-color:#e7b6ac;color:#982e20}.amount-alert .compare-metric>span{color:#7b4d44}.amount-incomplete{background:#fff9ec;color:#79531a;border-color:#e3d2ab}.difference-badge{padding:7px 12px;border-radius:5px;background:#fbe5df;color:#982e20;font-size:13px;font-weight:700}.order-item-count{font-size:13px;color:var(--muted)}.comparison-note{font-size:12px;line-height:1.6;padding:12px 24px;margin:0;background:#f8faf8;color:#5c6e64}.overview-metric.difference-overview{background:#fff2ef;color:#982e20}.difference-overview .overview-action{background:#fbe5df;color:#982e20;border-color:#dfa89b}.difference-overview .overview-action:hover{background:#f6d7cf}.filters{flex-wrap:wrap}.search-label{min-width:240px}.overview{grid-template-columns:1fr 1fr 1fr}@media(max-width:600px){.overview{grid-template-columns:1fr 1fr}.compare-band{padding:13px 12px}.compare-metrics{grid-template-columns:1fr 1fr;gap:14px 10px}.compare-metric:last-child{grid-column:1/-1;border-top:1px solid currentColor;padding-top:10px}.compare-metric>strong{font-size:19px}.compare-metric>span{font-size:11px}.compare-verdict{font-size:13px}.difference-badge{font-size:10px;padding:5px 7px}.comparison-note{padding:12px 14px}.check{font-size:12px}}
.amount-higher{background:#fff9ec;color:#79531a;border-color:#e3d2ab}.higher-badge{padding:7px 12px;border-radius:5px;background:#fff3d8;color:#79531a;font-size:13px;font-weight:700}
.order-placeholder{margin:0;padding:14px 20px;background:#f7f9f7;color:var(--muted);font-size:13px;line-height:1.7}.all-overview .overview-action{background:#edf5ef;color:var(--green);border-color:#b0c6b8}
