@media print{body,html{margin:0!important;overflow:visible!important;background:#fff!important}.app-shell,body,html{min-height:0!important}body.is-printing-receipt>:not(.receipt-wrap),body.is-printing-return>:not(.return-document-wrap),body.is-printing-shipment>:not(.shipment-document-wrap){display:none!important}body.is-printing-return>.return-document-wrap,body.is-printing-shipment>.shipment-document-wrap{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important;background:#fff!important}body.is-printing-return .return-document-actions,body.is-printing-return .return-document-wrap .modal-backdrop,body.is-printing-shipment .shipment-document-actions,body.is-printing-shipment .shipment-document-wrap .modal-backdrop{display:none!important}body.is-printing-return .return-document-modal,body.is-printing-shipment .shipment-document-modal{position:static!important;display:block!important;width:100%!important;max-height:none!important;overflow:visible!important}body.is-printing-receipt>.receipt-wrap{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important;background:#fff!important}.correction-panel,.receipt .backdate-chip,.receipt .receipt-backdate-reason,.receipt-actions,.receipt-case-add-on,.receipt-detail-tabs,.receipt-modal>.void-banner,.receipt-shipment-section,.signature-panel,body.is-printing-receipt .receipt-wrap .modal-backdrop{display:none!important}.receipt-modal{max-height:none!important}.receipt,.receipt-modal{position:static!important;display:block!important;width:100%!important;overflow:visible!important}.receipt{inset:auto!important;height:auto!important;min-height:0!important;padding:20px 30px!important;background:#fff!important;box-shadow:none!important;color:#17231e!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:11pt!important;line-height:1.5!important}.receipt h2{font-size:22pt!important}.receipt footer,.receipt header p,.receipt td:first-child small,.receipt-meta small,.receipt-total>small{font-size:10pt!important;line-height:1.45!important}.receipt table,.receipt-meta b,.receipt-note,.receipt-order-lineage,.receipt-total span{font-size:11pt!important}.receipt td,.receipt th{padding:8px 7px!important}.receipt-total strong{font-size:12pt!important}.receipt-total em{font-size:17pt!important}.receipt footer,.receipt header,.receipt tr,.receipt-meta,.receipt-signature,.receipt-total{break-inside:avoid;page-break-inside:avoid}.receipt footer{margin-top:35px}.receipt-signature .signature-canvas{display:block!important}@page{size:A4;margin:10mm}}.shipment-document-address{grid-column:span 2}.return-document-total,.shipment-document-total{margin-left:auto}.receipt header .document-legal-name{margin-top:3px;color:#17231e;font-size:12px;font-weight:700;letter-spacing:.04em}@media print{.receipt header .document-legal-name{font-size:10pt!important}}.monthly-statement-print-overlay{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:22px;background:rgba(12,28,22,.68)}.monthly-statement-print-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:transparent}.monthly-statement-print-shell{position:relative;width:min(1120px,100%);max-height:calc(100dvh - 44px);overflow:auto;border-radius:13px;background:#e9eeeb;box-shadow:0 25px 70px rgba(0,0,0,.28)}.monthly-statement-print-actions{position:sticky;top:0;z-index:2;min-height:64px;padding:10px 14px;border-bottom:1px solid #dce3df;background:#fff;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.monthly-statement-print-actions>span{min-width:0;margin-right:auto}.monthly-statement-print-actions b,.monthly-statement-print-actions small{display:block}.monthly-statement-print-actions b{font-size:15px}.monthly-statement-print-actions small{margin-top:3px;color:var(--muted);font-size:12px}.monthly-statement-print-actions button{min-height:44px;border:1px solid #cedbd4;border-radius:8px;background:#fff;color:var(--green);padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px;font-weight:800}.monthly-statement-print-actions button:nth-last-child(2){border-color:var(--green);background:var(--green);color:#fff}.monthly-statement-print-actions button:last-child{width:44px;padding:0}.monthly-statement-print-actions svg{width:16px}.monthly-statement-print-actions button:disabled{cursor:not-allowed;opacity:.48}.accounting-print-tax-choice{display:flex;align-items:center;gap:7px;min-height:44px;padding:4px 8px;border:1px solid #cedbd4;border-radius:8px;background:#f8fbf9;color:#43534b;font-size:12px;font-weight:750;white-space:nowrap}.accounting-print-tax-choice select{min-height:34px;max-width:160px;border:1px solid #b9c9c0;border-radius:6px;background:#fff;padding:0 28px 0 9px;color:#17231e;font:inherit}.monthly-statement-document{width:210mm;min-height:0;margin:14px auto;padding:7mm 9mm;background:#fff;color:#17231e;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif;box-shadow:0 8px 26px rgba(18,42,31,.13)}.monthly-statement-document-title{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;border-bottom:1px solid #18211d;padding-bottom:5px}.monthly-statement-document-title h1,.monthly-statement-document-title h2,.monthly-statement-document-title p{margin:0;text-align:center}.monthly-statement-document-title h1{font-family:"Noto Serif TC",Songti TC,serif;font-size:20px;line-height:1.3;letter-spacing:.04em}.monthly-statement-document-title h2{margin-top:2px;font-size:14px;line-height:1.35;text-decoration:underline;text-underline-offset:3px}.monthly-statement-document-title p{justify-self:end;font-size:12px}.monthly-statement-document-title .document-legal-name{justify-self:auto;margin-top:2px;color:#17231e;font-size:12px;line-height:1.35;font-weight:700;letter-spacing:.04em}.monthly-statement-document-meta{padding:6px 0;display:grid;gap:2px;line-height:1.35}.monthly-statement-document-meta>div{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:12px}.monthly-statement-document-meta span{min-width:0;overflow-wrap:anywhere}.monthly-statement-document-meta b{font-weight:750}.monthly-statement-document-table{width:100%;border-collapse:collapse;table-layout:fixed}.monthly-statement-document-table th{padding:5px 3px;border-top:1px solid #18211d;border-bottom:1px solid #18211d;text-align:center;line-height:1.45}.monthly-statement-document-table td{padding:5px 4px;border-bottom:1px dotted #b9c0bc;vertical-align:top;text-align:right;line-height:1.5}.monthly-statement-document-table th:first-child{width:15%}.monthly-statement-document-table th:nth-child(2){width:22%}.monthly-statement-document-table th:nth-child(3),.monthly-statement-document-table th:nth-child(4){width:8%}.monthly-statement-document-table th:nth-child(5){width:9%}.monthly-statement-document-table th:nth-child(6){width:10%}.monthly-statement-document-table th:nth-child(7){width:9%}.monthly-statement-document-table th:nth-child(8){width:12%}.monthly-statement-document-table th:nth-child(9){width:7%}.monthly-statement-document-table td:first-child,.monthly-statement-document-table td:nth-child(2),.monthly-statement-document-table td:nth-child(8){text-align:left}.monthly-statement-document-table td:nth-child(2){padding-left:8px;overflow-wrap:anywhere}.monthly-statement-document-table td b,.monthly-statement-document-table td small{display:block}.monthly-statement-document-table td small{color:#56655e}.monthly-statement-document-table .accounting-statement-note{overflow-wrap:anywhere;color:#45554d}.monthly-statement-document-totals{padding-top:5px;border-top:1px solid #18211d;line-height:1.4}.monthly-statement-document-totals>div{display:flex;justify-content:flex-end;gap:4px 14px;flex-wrap:wrap}.monthly-statement-document-totals>div+div{margin-top:4px}.monthly-statement-document-totals span{white-space:nowrap}.monthly-statement-document-totals b{margin-left:4px}.monthly-statement-document-note{margin:6px 0 0;color:#66736c;line-height:1.35;text-align:center}.accounting-print-price-hint{margin:0;padding:7px 16px;background:#f2f7f4;color:#42584b;font-size:12px;line-height:1.5}.monthly-statement-document.accounting-statement-without-prices .monthly-statement-document-table th:first-child{width:25%}.monthly-statement-document.accounting-statement-without-prices .monthly-statement-document-table th:nth-child(2){width:47%}.monthly-statement-document.accounting-statement-without-prices .monthly-statement-document-table th:nth-child(3),.monthly-statement-document.accounting-statement-without-prices .monthly-statement-document-table th:nth-child(4){width:14%}@media(max-width:800px){.monthly-statement-print-overlay{padding:0;place-items:stretch}.monthly-statement-print-shell{width:100%;max-height:100dvh;border-radius:0}.monthly-statement-print-actions{min-height:72px;flex-wrap:wrap}.monthly-statement-print-actions>span{display:none}.accounting-print-tax-choice{flex:1 1 230px;justify-content:space-between}.accounting-print-tax-choice select{flex:1;max-width:none}.monthly-statement-print-actions button:nth-last-child(2){flex:1 1 180px}.monthly-statement-document{margin:10px auto;transform-origin:top center}.monthly-statement-print-shell{overflow:auto}}@media print{body.is-printing-statement>:not(.print-document-overlay){display:none!important}body.is-printing-statement .print-document-overlay{position:static!important;display:block!important;padding:0!important;background:#fff!important}.accounting-print-price-hint,.monthly-statement-print-actions,.monthly-statement-print-backdrop{display:none!important}.monthly-statement-print-shell{position:static!important;width:100%!important;max-height:none!important;overflow:visible!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}.monthly-statement-document{width:100%!important;min-height:0!important;margin:0!important;padding:0!important;box-shadow:none!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.monthly-statement-document-meta,.monthly-statement-document-table tr,.monthly-statement-document-title,.monthly-statement-document-totals{break-inside:avoid;page-break-inside:avoid}@page{size:A4 portrait;margin:10mm}}.case-receivable-document-table th:first-child{width:15%}.case-receivable-document-table th:nth-child(2){width:22%}.case-receivable-document-table th:nth-child(3),.case-receivable-document-table th:nth-child(4){width:8%}.case-receivable-document-table th:nth-child(5){width:9%}.case-receivable-document-table th:nth-child(6){width:10%}.case-receivable-document-table th:nth-child(7){width:9%}.case-receivable-document-table th:nth-child(8){width:12%}.case-receivable-document-table th:nth-child(9){width:7%}.accounting-statement-document-table td:nth-child(3),.accounting-statement-document-table td:nth-child(4),.accounting-statement-document-table td:nth-child(5),.accounting-statement-document-table td:nth-child(6),.accounting-statement-document-table td:nth-child(7),.accounting-statement-document-table td:nth-child(9){font-variant-numeric:tabular-nums}.accounting-statement-document-table th:first-child{width:29%}.accounting-statement-document-table th:nth-child(2){width:16%}.accounting-statement-document-table th:nth-child(3),.accounting-statement-document-table th:nth-child(5){width:6%}.accounting-statement-document-table th:nth-child(4),.accounting-statement-document-table th:nth-child(7),.accounting-statement-document-table th:nth-child(9){width:8%}.accounting-statement-document-table th:nth-child(6){width:7%}.accounting-statement-document-table th:nth-child(8){width:12%}.monthly-statement-document-table td small.accounting-statement-document-ref{font-size:12px;white-space:nowrap;overflow-wrap:normal;word-break:keep-all}.monthly-statement-document-meta,.monthly-statement-document-table,.monthly-statement-document-table td small,.monthly-statement-document-totals{font-size:12px}.monthly-statement-document-totals .outstanding,.monthly-statement-document-totals b{font-size:14px}.monthly-statement-document-note{font-size:12px}@media print{.monthly-statement-document-meta,.monthly-statement-document-table,.monthly-statement-document-table td small{font-size:12px!important}.monthly-statement-document-table td small.accounting-statement-document-ref{font-size:12px!important;white-space:nowrap!important}.monthly-statement-document-note,.monthly-statement-document-title .document-legal-name,.monthly-statement-document-totals{font-size:12px!important}}.cart-panel{min-height:0;overflow:hidden}.pos-checkout-progress,.pos-checkout-stepper{flex:0 0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:9px 12px;border-bottom:1px solid var(--line,#d9dedb);background:#f8faf8}.pos-checkout-progress>button,.pos-checkout-step-button{min-width:0;min-height:44px;border:1px solid #d8e0dc;border-radius:10px;background:#fff;color:#607169;padding:5px 8px;display:flex;align-items:center;justify-content:center;gap:7px;font:inherit;cursor:pointer}.pos-checkout-progress>button>span,.pos-checkout-step-button>span{width:23px;height:23px;flex:0 0 23px;border-radius:50%;background:#edf2ef;color:#52685e;display:grid;place-items:center;font-size:11px;font-weight:800}.pos-checkout-progress>button>span svg,.pos-checkout-step-button>span svg{width:14px;height:14px}.pos-checkout-progress>button>b,.pos-checkout-step-button>b{min-width:0;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.pos-checkout-progress>button.is-active,.pos-checkout-progress>button[aria-current=step],.pos-checkout-step-button.is-active,.pos-checkout-step-button[aria-current=step]{border-color:var(--green,#173f31);background:var(--green,#173f31);color:#fff}.pos-checkout-progress>button.is-active>span,.pos-checkout-progress>button[aria-current=step]>span,.pos-checkout-step-button.is-active>span,.pos-checkout-step-button[aria-current=step]>span{background:#fff;color:var(--green,#173f31)}.pos-checkout-progress>button.is-complete,.pos-checkout-step-button.is-complete{border-color:#b9d4c7;background:#eaf4ef;color:#245f48}.pos-checkout-progress>button.is-complete>span,.pos-checkout-step-button.is-complete>span{background:#2c7055;color:#fff}.pos-checkout-progress>button:disabled,.pos-checkout-step-button:disabled{cursor:not-allowed;opacity:.48}.pos-checkout-step{min-height:0;flex:1 1 auto;overflow:hidden;display:flex;flex-direction:column}.pos-checkout-step.is-active{flex:1 1 auto}.pos-checkout-step.is-collapsed{flex:0 0 auto;overflow:visible}.pos-checkout-step[hidden]{display:none}.pos-collapsed-summary,.pos-payment-cart-summary{width:calc(100% - 24px);min-height:52px;flex:0 0 auto;margin:8px 12px 0;border:1px solid #d9e3de;border-radius:10px;background:#f7faf8;color:var(--ink,#23372e);padding:8px 11px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.pos-collapsed-summary>div,.pos-collapsed-summary>span,.pos-payment-cart-summary>div,.pos-payment-cart-summary>span{min-width:0}.pos-collapsed-summary b,.pos-collapsed-summary small,.pos-payment-cart-summary b,.pos-payment-cart-summary small{display:block}.pos-collapsed-summary b,.pos-payment-cart-summary b{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.pos-collapsed-summary small,.pos-payment-cart-summary small{margin-top:3px;color:var(--muted,#748078);font-size:10px;line-height:1.35}.pos-collapsed-summary em,.pos-payment-cart-summary em{flex:0 0 auto;color:var(--green,#173f31);font-size:10px;font-style:normal;font-weight:750}button.pos-collapsed-summary,button.pos-payment-cart-summary{cursor:pointer}.pos-step-customer-body{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column}.pos-step-customer-body .customer-fields{flex:0 0 auto}.pos-step-validation{margin:10px 16px 0;border-radius:8px;background:#fff3dc;color:#815e24;padding:9px 11px;font-size:12px;line-height:1.5}.pos-step-continue{width:calc(100% - 32px);min-height:46px;flex:0 0 auto;margin:14px 16px;border:0;border-radius:9px;background:var(--green,#173f31);color:#fff;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font:inherit;font-size:13px;font-weight:750;line-height:1.35}.pos-step-continue:disabled{background:#b9c6c0;cursor:not-allowed}.pos-items-step{min-height:0;flex:1 1 auto;overflow:hidden;display:flex;flex-direction:column}.pos-items-step .cart-items,.pos-items-step>.cart-items{min-height:0;max-height:none;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.cart-item.pos-cart-line{display:block;padding:0}.cart-item.pos-cart-line>.pos-cart-line-summary:first-child{padding-right:0}.pos-cart-line-summary{min-height:58px;display:grid;grid-template-columns:minmax(0,1fr) auto 40px;align-items:center;gap:8px}.pos-cart-line-summary.pos-cart-price-grid{grid-template-columns:minmax(120px,1fr) 42px minmax(74px,auto) minmax(74px,auto) 40px;gap:6px}.pos-cart-summary-quantity,.pos-cart-summary-total{display:grid;gap:2px;text-align:right;white-space:nowrap}.pos-cart-summary-quantity em{color:#a45d00;font-size:10px;font-style:normal;font-weight:800}.pos-cart-summary-price small,.pos-cart-summary-quantity small,.pos-cart-summary-total small{color:#718078;font-size:9px;font-weight:700}.pos-cart-summary-price{min-height:44px;border:1px solid #d8e4de;border-radius:9px;background:#f8fbf9;color:var(--green);padding:5px 7px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 4px;text-align:right;align-items:center}.pos-cart-summary-price small{grid-column:1/-1}.pos-cart-summary-price b{font-size:12px}.pos-cart-summary-price svg{width:14px;color:#a36a00}.pos-cart-summary-total strong{font-size:12px}.pos-line-price-detail{min-height:42px;margin-top:9px;border:1px solid #b9ccc3;border-radius:9px;background:#f7fbf9;color:var(--green);font-weight:750}.pos-price-sheet-wrap{position:fixed;inset:0;z-index:1400;display:flex;justify-content:flex-end}.pos-price-sheet-backdrop{position:absolute;inset:0;border:0;background:rgba(18,32,26,.42)}.pos-price-sheet{position:relative;width:min(480px,100vw);height:100dvh;overflow:auto;background:#fff;padding:22px;box-shadow:-14px 0 42px rgba(18,40,30,.2);display:flex;flex-direction:column;gap:16px}.pos-price-sheet>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid #e1e8e4;padding-bottom:14px}.pos-price-sheet>header span{color:var(--green);font-size:11px;font-weight:800}.pos-price-sheet>header h2{margin:4px 0 0;font-size:22px}.pos-price-sheet>header button{width:44px;height:44px;border:1px solid #dbe4df;border-radius:11px;background:#fff}.pos-price-warning{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:11px;background:#fff7de;color:#74530a;font-size:13px;line-height:1.5}.pos-price-warning svg{flex:0 0 auto;width:18px}.pos-price-facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.pos-price-facts>div{min-width:0;padding:11px;border-radius:10px;background:#f5f8f6}.pos-price-facts dt{font-size:10px;color:#718078}.pos-price-facts dd{margin:4px 0 0;font-weight:800;overflow-wrap:anywhere}.pos-price-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pos-price-quick-actions button{min-height:44px;border:1px solid #b9ccc3;border-radius:10px;background:#fff;color:var(--green);font-weight:750}.pos-price-editor{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:2px}.pos-price-editor label{display:grid;gap:5px}.pos-price-editor label>span{font-size:11px;font-weight:750;color:#476057}.pos-price-editor input{min-width:0;min-height:46px;border:1px solid #cad8d1;border-radius:10px;padding:9px;font-size:16px}.pos-price-editor .wide{grid-column:1/-1}.pos-price-editor .pos-price-reference{grid-column:1/-1;display:flex;align-items:flex-start;gap:9px}.pos-price-reference input{min-height:20px;width:20px}.pos-price-readonly{margin:0;color:#65736c;font-size:13px}.pos-price-sheet>footer{margin-top:auto;border-top:1px solid #e1e8e4;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.pos-price-sheet>footer small{color:#718078;line-height:1.5}.pos-price-sheet>footer button{min-width:104px;min-height:46px;border:0;border-radius:10px;background:var(--green);color:#fff;font-weight:800}.pos-cart-line-toggle{min-width:0;min-height:48px;padding:4px 0;border:0;background:transparent;color:inherit;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:7px;text-align:left}.pos-cart-line-leading{position:relative;width:28px;height:34px;display:grid;place-items:start center}.pos-cart-line-index{width:25px;height:25px;border:1px solid #bfd0c7;border-radius:50%;background:#edf5f1;color:var(--green,#173f31);display:grid;place-items:center;font-size:11px;font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.pos-cart-line-leading>svg{position:absolute;bottom:-1px;width:13px;height:13px;color:#638074;transition:transform .16s ease}.pos-cart-line.is-expanded .pos-cart-line-leading>svg{transform:rotate(180deg)}.pos-cart-line-toggle b,.pos-cart-line-toggle small,.pos-cart-line-toggle>span{min-width:0}.pos-cart-line-toggle b,.pos-cart-line-toggle small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-cart-line-summary>strong{font-size:12px;white-space:nowrap}.pos-cart-line .remove-item{position:static;width:40px;height:40px;border-radius:8px;display:grid;place-items:center}.pos-cart-line-details{padding:0 0 13px 27px;border-top:1px dashed #dfe7e3}.pos-cart-line-details>small{padding-top:9px}.pos-cart-line-quantity{margin-top:9px;display:flex;align-items:center;justify-content:space-between;gap:10px}.pos-cart-line-quantity>span{color:#476057;font-size:12px;font-weight:700}.pos-gift-quantity{margin-top:10px;padding:11px;border:1px solid #e8d9b8;border-radius:10px;background:#fffaf0;display:grid;gap:8px}.pos-gift-quantity label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#5d4a21;font-size:12px;font-weight:800}.pos-gift-quantity input{width:96px;min-height:44px;border:1px solid #ccb985;border-radius:9px;background:#fff;padding:8px 10px;font-size:16px;text-align:right}.pos-gift-quantity>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pos-gift-quantity button{min-height:42px;border:1px solid #b99d5a;border-radius:9px;background:#fff;color:#6f5311;font-weight:800}.pos-gift-quantity small{color:#76684a;line-height:1.5}.pos-items-footer{flex:0 0 auto;padding:10px 16px 14px;border-top:1px solid var(--line,#d9dedb);background:#fff;box-shadow:0 -7px 18px rgba(30,55,44,.035)}.pos-items-footer>div:first-child,.pos-items-footer>span{min-height:28px;margin-bottom:6px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#5e7067;font-size:12px}.pos-items-footer b,.pos-items-footer strong{color:var(--green,#173f31);font-size:16px}.pos-items-footer .pos-step-continue{width:100%;margin:6px 0 0}.pos-payment-step{background:#fff}.pos-payment-step,.pos-settlement-step{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.pos-settlement-step{padding:16px}.pos-settlement-step>.pos-step-continue{width:100%;margin:16px 0 0;min-height:48px}.pos-case-context-step{margin-top:16px;padding:16px 0 0;border-top:1px solid var(--line,#d9dedb)}.pos-immediate-receipt,.pos-settlement-summary{margin-top:14px;border:1px solid #c7ddd2;border-radius:10px;background:#eff7f3}.pos-settlement-summary{min-height:56px;padding:10px 12px;display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:9px;color:var(--green,#173f31)}.pos-settlement-summary b,.pos-settlement-summary small{display:block}.pos-settlement-summary b{font-size:14px}.pos-settlement-summary small{margin-top:3px;font-size:12px}.pos-case-advanced{margin:12px;border:1px solid #d8e3dd;border-radius:10px;background:#fbfcfb}.pos-case-advanced>summary{min-height:44px;padding:10px 12px;display:flex;align-items:center;color:var(--green,#173f31);font-size:14px;font-weight:750;cursor:pointer}.pos-immediate-receipt{padding:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pos-immediate-receipt span{min-width:0;padding:8px;border-radius:8px;background:#fff}.pos-immediate-receipt b,.pos-immediate-receipt small{display:block}.pos-immediate-receipt small{color:#65766d;font-size:12px}.pos-immediate-receipt b{margin-top:3px;overflow-wrap:anywhere;font-size:14px}#pos-checkout-payment>.cart-items{min-height:120px;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.pos-payment-step .pos-order-context{border-top:0}.pos-payment-step .cart-bottom{max-height:none;overflow:visible}.pos-case-assignment-list{max-height:190px;overflow-y:auto;overscroll-behavior:contain;margin:12px 16px;border:1px solid #dce5e0;border-radius:10px;background:#fff}.pos-case-assignment-list>header{min-height:54px;padding:9px 10px;border-bottom:1px solid #e3e9e6;background:#f6f9f7}.pos-case-assignment-list>header b,.pos-case-assignment-list>header small{display:block}.pos-case-assignment-list>header b{font-size:11px}.pos-case-assignment-list>header small{margin-top:3px;color:var(--muted,#748078);font-size:9px;line-height:1.4}.pos-case-assignment-row{min-height:60px;padding:8px 10px;border-bottom:1px solid #edf1ef;display:grid;grid-template-columns:minmax(0,1fr) minmax(128px,44%);align-items:center;gap:9px}.pos-case-assignment-row:last-child{border-bottom:0}.pos-case-assignment-row>label,.pos-case-assignment-row>span{min-width:0}.pos-case-assignment-row b,.pos-case-assignment-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-case-assignment-row b{font-size:11px}.pos-case-assignment-row small{margin-top:3px;color:var(--muted,#748078);font-size:9px}.pos-case-assignment-row select{width:100%;min-height:44px;border:1px solid #d8e0dc;border-radius:8px;background:#fff;padding:0 8px;color:var(--ink,#23372e);font-size:12px}.pos-step-guide{min-height:70px;margin:12px 0;border:1px solid #d9e4de;border-radius:11px;background:#f4f8f6;color:#4d6459;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:13px;font-size:12px;line-height:1.5}.pos-step-guide>div,.pos-step-guide>span{min-width:0}.pos-step-guide b,.pos-step-guide small{display:block}.pos-step-guide small{margin-top:3px;color:var(--muted,#748078)}.pos-step-guide button{min-height:44px;flex:0 0 auto;border:1px solid #bfcfc7;border-radius:8px;background:#fff;color:var(--green,#173f31);padding:0 13px;font-weight:750}.pos-products.is-checkout-locked .category-tabs,.pos-products.is-checkout-locked .pos-product-pagination,.pos-products.is-checkout-locked .product-grid{opacity:.48}.pos-product-pagination{min-height:52px;margin:0 0 12px;border:1px solid var(--line,#d9dedb);border-radius:10px;background:#fff;padding:7px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted,#748078);font-size:12px}.pos-product-pagination label,.pos-product-pagination>div{display:flex;align-items:center;gap:6px}.pos-product-pagination button,.pos-product-pagination select{min-height:38px;border:1px solid #cbd8d1;border-radius:8px;background:#fff;color:var(--green,#173f31);padding:0 10px;font:inherit;font-weight:700}.pos-product-pagination button{display:inline-flex;align-items:center;gap:4px}.pos-product-pagination button svg{width:16px;height:16px}.pos-product-pagination button:disabled,.pos-product-pagination select:disabled{opacity:.45;cursor:not-allowed}.pos-product-pagination-bottom{margin:14px 0 0}.pos-product-edit-help{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.5}@media (max-width:650px){.pos-product-pagination{align-items:stretch;flex-direction:column}.pos-product-pagination>div{display:grid;grid-template-columns:1fr auto 1fr}.pos-product-pagination>div>button:last-child{justify-content:flex-end}.pos-product-pagination-bottom>div{grid-template-columns:1fr 1fr}}.pos-products.is-checkout-locked .product-grid{pointer-events:none}:where(button,input,select,summary,[tabindex]):focus-visible{outline:3px solid rgba(41,121,88,.38);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.mobile-bottom-nav{display:none}.shell-refresh-status{position:fixed;top:72px;right:16px;z-index:60;max-width:calc(100vw - 32px);display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #d8e1dc;border-radius:10px;background:#fff;color:var(--green);box-shadow:0 4px 18px rgba(0,0,0,.1);font-size:14px;pointer-events:none}.shell-refresh-status svg{width:18px;height:18px}.workspace-sync-warning{position:fixed;inset:auto 16px 80px;z-index:1500;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:12px 16px;border:1px solid #ae792b;border-radius:12px;background:#fff8e7;color:#5d3d0a;box-shadow:0 4px 16px #0002;font-size:16px}.workspace-sync-warning span{min-width:0;overflow-wrap:anywhere}.workspace-sync-warning button{min-height:44px;flex-shrink:0}.main,.sidebar{transition:width .2s ease,margin-left .2s ease}.sidebar nav{min-height:0;overflow-y:auto;overscroll-behavior:contain}.sidebar nav .nav-group{margin:2px 0}.sidebar nav .nav-group-toggle{margin:0;font-weight:760}.sidebar nav .nav-group.has-active>.nav-group-toggle{background:rgba(255,255,255,.055);color:#fff}.sidebar nav .nav-group-toggle .nav-chevron{width:16px;height:16px;margin-left:auto;transition:transform .18s ease}.sidebar nav .nav-group.open>.nav-group-toggle .nav-chevron{transform:rotate(180deg)}.sidebar nav .nav-group-items{margin:2px 0 7px 19px;padding-left:8px;border-left:1px solid rgba(255,255,255,.12)}.sidebar nav .nav-group-items[hidden]{display:none!important}.sidebar nav .nav-group-items>button{min-height:40px;margin-block:1px;padding-inline:9px;gap:9px;font-size:12px}.sidebar nav .nav-group-items>button.active{box-shadow:inset 2px 0 #d2b374}.sidebar-width-toggle{min-width:44px;min-height:44px;border:1px solid #d8e1dc;border-radius:9px;background:#fff;color:var(--green);padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:750;white-space:nowrap}.sidebar-width-toggle:hover{border-color:#9ebcaf;background:#edf5f1}.sidebar-width-toggle svg{width:21px;height:21px;flex:0 0 21px}.brand-copy{min-width:0}.sidebar nav button .nav-label{margin-left:0;color:inherit;font-size:14px}.sidebar nav button .nav-status{margin-left:auto;color:#78978b;font-size:9px}@media (min-width:901px){.app-shell.sidebar-condensed .sidebar{width:88px}.app-shell.sidebar-condensed .main{margin-left:88px}.app-shell.sidebar-condensed .brand{height:76px;justify-content:center;padding:14px 8px}.app-shell.sidebar-condensed .brand-mark{width:45px;height:45px;flex:0 0 45px}.app-shell.sidebar-condensed .brand-copy,.app-shell.sidebar-condensed .sidebar nav .nav-chevron,.app-shell.sidebar-condensed .sidebar nav button .nav-status,.app-shell.sidebar-condensed .sidebar nav button em,.app-shell.sidebar-condensed .sidebar nav p,.app-shell.sidebar-condensed .sidebar-foot small{display:none}.app-shell.sidebar-condensed .sidebar nav{padding:10px 8px}.app-shell.sidebar-condensed .sidebar nav button{min-height:64px;padding:7px 3px;flex-direction:column;justify-content:center;gap:4px;text-align:center}.app-shell.sidebar-condensed .sidebar nav button.active{box-shadow:inset 3px 0 #d2b374}.app-shell.sidebar-condensed .sidebar nav button .nav-label{max-width:72px;overflow:hidden;font-size:12px;line-height:1.25;text-align:center;white-space:normal}.app-shell.sidebar-condensed .sidebar nav .nav-group-items{margin:0;padding:0;border-left:0}.app-shell.sidebar-condensed .sidebar nav .nav-group-items>button{min-height:54px}.app-shell.sidebar-condensed .sidebar-foot{padding:15px 0;overflow:hidden;font-size:0;text-align:center}.app-shell.sidebar-condensed .sidebar-foot .status-dot{margin:0}.app-shell.sidebar-condensed .case-order-drawer{width:min(1120px,calc(100vw - 88px))}}@media (min-width:901px) and (max-width:1180px){.topbar{padding:0 18px}.topbar .crumb{display:none}}@media (max-width:900px){html{scroll-padding-bottom:calc(82px + env(safe-area-inset-bottom))}.sidebar{z-index:65;width:min(320px,88vw);height:100dvh}.sidebar.open{transform:translateX(0)}.sidebar .brand{min-height:76px}.sidebar .brand-copy{display:block}.sidebar nav{overscroll-behavior:contain}.sidebar nav p{display:block}.sidebar nav button{min-height:48px;flex-direction:row;justify-content:flex-start;padding:0 12px;gap:12px;text-align:left}.sidebar nav .nav-group-items{margin-left:23px;padding-left:11px}.sidebar nav .nav-group-items>button{min-height:46px}.sidebar nav button .nav-label{max-width:none;margin-left:0;overflow:visible;color:inherit;font-size:14px;text-overflow:clip}.sidebar nav button .nav-status,.sidebar nav button em{display:inline-block;margin-left:auto}.sidebar-foot{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.sidebar-backdrop{z-index:64}.menu-btn,.mobile-close{width:44px;height:44px;flex:0 0 44px}.sidebar-width-toggle{display:none}.main{margin-left:0;padding-bottom:calc(70px + env(safe-area-inset-bottom))}.topbar{height:58px;padding:0 12px}.topbar .staff,.topbar>div{gap:5px}.topbar .staff>span{display:inline-flex;max-width:90px;overflow:hidden;padding:5px 7px;text-overflow:ellipsis;white-space:nowrap}.topbar .staff>button{width:44px;height:44px;justify-content:center;overflow:hidden;font-size:0}.topbar .staff>button svg{width:18px;height:18px}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:45;min-height:calc(68px + env(safe-area-inset-bottom));padding:5px 7px calc(5px + env(safe-area-inset-bottom));border-top:1px solid #dce3df;background:rgba(255,255,255,.97);box-shadow:0 -9px 26px rgba(20,50,39,.11);backdrop-filter:blur(16px);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.mobile-bottom-nav>button{min-width:0;min-height:56px;border:0;border-radius:10px;background:transparent;color:#708078;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;font-size:10px;font-weight:700}.mobile-bottom-nav>button svg{width:21px;height:21px}.mobile-bottom-nav>button.active{background:#e8f2ed;color:var(--green)}}@media (max-width:560px){.topbar strong{max-width:94px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .staff>span{max-width:76px}}@media print{.mobile-bottom-nav{display:none!important}}.mobile-cart-backdrop,.mobile-cart-close,.mobile-cart-trigger{display:none}.pos-products{container-name:pos-product-area;container-type:inline-size}@media (min-width:901px){.pos-page{grid-template-columns:minmax(0,1fr) clamp(420px,32%,520px)}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container pos-product-area (max-width: 820px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@container pos-product-area (max-width: 520px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.cart-title-actions{display:flex;align-items:center;gap:4px}.cart-title-actions>button{border:0;background:transparent}.cart-title-actions .clear-cart{min-height:38px;padding:0 7px;color:#a14e4a;display:inline-flex;align-items:center;gap:4px;font-size:10px}@media (min-width:901px) and (max-width:1180px){.pos-products{padding:22px 18px 32px}.product-grid{gap:9px}.pos-head{align-items:flex-start;gap:12px}.pos-head>label{width:min(250px,48%)}}@media (max-width:900px){.cart-item.pos-cart-line{min-height:0}.pos-cart-line-summary{min-height:58px}.pos-cart-line-summary.pos-cart-price-grid{grid-template-columns:minmax(105px,1fr) 36px minmax(68px,auto) minmax(68px,auto) 40px}.mobile-bottom-nav>button.pos-action{color:var(--green)}.mobile-bottom-nav>button.pos-action.active{background:var(--green);color:#fff}.category-tabs button{min-height:44px}.pos-head>label{min-height:46px}.pos-head input{font-size:16px}.category-tabs{scrollbar-width:none;scroll-snap-type:x proximity}.category-tabs::-webkit-scrollbar{display:none}.category-tabs button{scroll-snap-align:start;padding-inline:14px;font-size:12px}.pos-page{min-height:calc(100dvh - 58px);display:block}.pos-products{padding:20px 18px calc(100px + env(safe-area-inset-bottom))}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-card{min-height:156px;touch-action:manipulation}.mobile-cart-trigger{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));z-index:46;min-height:60px;border:0;border-radius:13px;background:var(--green);color:#fff;padding:8px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 12px 30px rgba(13,57,40,.3)}.mobile-cart-trigger:disabled{background:#60736a;opacity:.92}.mobile-cart-trigger[aria-expanded=true]{visibility:hidden}.mobile-cart-trigger>span{display:flex;align-items:center;gap:7px}.mobile-cart-trigger>span:last-child{align-items:flex-end;flex-direction:column;gap:1px}.mobile-cart-trigger b,.mobile-cart-trigger strong{font-size:13px}.mobile-cart-trigger em{color:#d6e7df;font-size:9px;font-style:normal}.mobile-cart-backdrop{position:fixed;inset:0;z-index:70;width:100%;height:100%;border:0;background:rgba(11,28,22,.58);display:block;backdrop-filter:blur(2px)}.cart-panel{position:fixed;top:auto;right:0;bottom:0;left:0;z-index:71;height:min(88dvh,820px);max-height:calc(100dvh - 20px);border:0;border-radius:20px 20px 0 0;box-shadow:0 -22px 60px rgba(14,38,29,.28);opacity:0;pointer-events:none;transform:translateY(105%);transition:transform .22s ease,opacity .15s ease;overflow:hidden}.cart-panel.mobile-open{opacity:1;pointer-events:auto;transform:translateY(0)}.cart-title{min-height:68px;height:auto;flex:0 0 auto;padding:8px 13px 8px 17px}.mobile-cart-close{width:44px;height:44px;border-radius:50%;background:#edf2ef;color:#52645b;display:flex;align-items:center;justify-content:center}.mobile-cart-close svg{width:20px}.customer-fields{flex:0 0 auto}.pos-checkout-progress,.pos-checkout-stepper{padding:8px 12px}.pos-case-assignment-row select,.pos-checkout-progress>button,.pos-checkout-step-button,.pos-collapsed-summary,.pos-payment-cart-summary,.pos-step-continue,.pos-step-guide button{min-height:44px;touch-action:manipulation}.pos-checkout-step,.pos-items-step,.pos-payment-step,.pos-step-customer-body{min-height:0}.pos-step-customer-body>.pos-step-continue{position:sticky;bottom:0;z-index:2;box-shadow:0 -8px 18px #fff}.pos-items-step .cart-items,.pos-items-step>.cart-items{min-height:0;max-height:none;flex:1 1 auto;overflow-y:auto}.pos-items-footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}.pos-payment-step{overflow-y:auto}.pos-settlement-step{padding:14px}.pos-case-assignment-list{max-height:min(25dvh,210px)}.pos-immediate-receipt{grid-template-columns:1fr}.customer-fields input,.customer-fields select,.payment-row input,.payment-row select{min-height:44px;height:44px;font-size:16px}.customer-fields label>span,.payment-row label>span{margin-bottom:5px;font-size:12px}.cart-items{min-height:76px;max-height:none}.cart-item{min-height:82px}.cart-item b{font-size:13px}.cart-item small{font-size:11px}.remove-item{top:5px;width:44px;height:44px;display:grid;place-items:center}.qty{grid-template-columns:44px 42px 44px}.qty button{height:44px}.qty span{font-size:14px}.cart-bottom{max-height:43dvh;flex:0 0 auto;padding-bottom:calc(14px + env(safe-area-inset-bottom))}.checkout{min-height:50px;height:50px}.checkout-alert,.checkout-note,.checkout-ready{font-size:11px}}@media(max-width:560px){.pos-cart-line-summary.pos-cart-price-grid{grid-template-columns:minmax(92px,1fr) 32px minmax(62px,auto) minmax(62px,auto) 36px;gap:4px}.pos-cart-line-toggle{grid-template-columns:25px minmax(0,1fr);gap:4px}.pos-cart-line-leading{width:25px;height:32px}.pos-cart-line-index{width:22px;height:22px;font-size:10px}.pos-cart-line-leading>svg{width:12px;height:12px}.pos-cart-summary-price{padding:4px;font-size:11px}.pos-cart-summary-price b,.pos-cart-summary-total strong{font-size:10px}.pos-cart-line .remove-item{width:36px;height:40px}.pos-price-sheet{width:100vw;height:min(86dvh,760px);margin-top:auto;border-radius:20px 20px 0 0;padding:18px}.pos-price-facts{grid-template-columns:1fr 1fr}.pos-price-sheet>footer{position:sticky;bottom:-18px;background:#fff;padding-bottom:calc(18px + env(safe-area-inset-bottom))}}@media (max-width:700px){.pos-head h1{font-size:25px}}@media (max-width:560px){.cart-panel{height:min(94dvh,820px)}.pos-checkout-progress,.pos-checkout-stepper{gap:4px;padding:7px 9px}.pos-checkout-progress>button,.pos-checkout-step-button{gap:5px;padding-inline:5px}.pos-checkout-progress>button>b,.pos-checkout-step-button>b{font-size:12px}.pos-collapsed-summary,.pos-payment-cart-summary{width:calc(100% - 20px);margin-right:10px;margin-left:10px}.pos-step-guide{align-items:stretch;flex-direction:column}.pos-step-guide button{width:100%}.pos-products{padding-right:12px;padding-left:12px}.pos-head{display:block}.pos-head>label{width:100%;margin-top:13px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-card{min-height:142px}.product-art{height:70px}.customer-fields{grid-template-columns:1fr;padding:13px 14px}.customer-fields>div,.payment-row{grid-template-columns:1fr 1fr}.customer-fields>.customer-picker,.customer-fields>label{grid-column:1/-1}.cart-bottom{padding-inline:14px}.pos-case-assignment-list{max-height:min(28dvh,230px);margin-inline:12px}.pos-case-assignment-row{grid-template-columns:1fr;gap:7px;padding:10px}.pos-case-assignment-row b,.pos-case-assignment-row small{white-space:normal}}@media (max-height:600px) and (max-width:900px){.cart-panel{height:100dvh;max-height:100dvh;border-radius:0}.customer-fields{padding-block:9px}.cart-title{min-height:58px}.pos-checkout-progress,.pos-checkout-stepper{padding-block:5px}.pos-checkout-progress>button,.pos-checkout-step-button{min-height:44px}.cart-bottom{max-height:48dvh}}@media print{.mobile-cart-backdrop,.mobile-cart-trigger{display:none!important}}.customer-picker{position:relative;min-width:0}.customer-picker>label{display:block;margin:0 0 4px;color:#6b7771;font-size:9px;font-weight:650}.customer-picker-input{width:100%;height:34px;border:1px solid #dfe4e0;border-radius:6px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 8px;color:#728078}.customer-picker-input:focus-within{border-color:#5f8a78;box-shadow:0 0 0 3px rgba(61,122,96,.08)}.customer-picker-input>svg{width:15px;flex:0 0 15px}.customer-picker-input>input{width:100%;height:100%;min-width:0;border:0;outline:0;background:transparent;font-size:11px}.customer-picker-results{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:78;max-height:320px;overflow-y:auto;overscroll-behavior:contain;padding:5px;border:1px solid #d7e0db;border-radius:9px;background:#fff;box-shadow:0 18px 45px rgba(18,48,37,.2)}.customer-picker-results>button{width:100%;min-height:48px;border:0;border-radius:7px;background:#fff;color:var(--ink);padding:7px 8px;display:grid;grid-template-columns:28px minmax(0,1fr) 22px;align-items:center;gap:7px;text-align:left}.customer-picker-results>button.active,.customer-picker-results>button:hover{background:#edf5f1}.customer-picker-results>button.customer-picker-create{margin-top:4px;border:1px solid #bcd5c9;background:#edf7f2;color:var(--green)}.customer-picker-results>button.customer-picker-create:focus-visible,.customer-picker-results>button.customer-picker-create:hover{background:#dfefe7}.customer-picker-results>button>svg{width:17px;color:var(--green2)}.customer-picker-results>button>span{min-width:0}.customer-picker-results b,.customer-picker-results small{display:block}.customer-picker-results b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.customer-picker-results small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.customer-picker-results>p{margin:0;padding:18px 10px;color:var(--muted);font-size:10px;line-height:1.5;text-align:center}.customer-picker-results .customer-picker-hint{padding:7px 8px 5px;border-top:1px solid #edf0ee;text-align:center;white-space:normal}.customer-toolbar{border-radius:11px 11px 0 0}.customer-toolbar>label{flex:1;max-width:470px}.customer-toolbar>label input{width:100%}.customer-toolbar>span{color:var(--muted);font-size:11px}.customer-monthly-orders{min-width:44px;min-height:44px;border:1px solid #c8d8d0;border-radius:8px;background:#f3f8f5;color:var(--green);padding:7px 10px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font:inherit;font-weight:850}.customer-monthly-orders:not(:disabled){cursor:pointer}.customer-monthly-orders:not(:disabled):hover{border-color:#8eafa0;background:#e7f2ec}.customer-monthly-orders:disabled{cursor:wait;opacity:.68}.load-more{width:100%;min-height:48px;border:0;border-top:1px solid var(--line);background:#f8faf8;color:var(--green);font-size:11px;font-weight:750}.load-more:hover{background:#edf5f1}@media (min-width:901px) and (max-width:1180px){.page{padding:26px 24px}}@media (max-width:900px){.page{padding:24px 18px}.filter-pills button,.icon-button,.primary,.secondary-action,.source-note button,.text-btn{min-height:44px}.toolbar>label{min-height:46px}.toolbar input{font-size:16px}.filter-pills{scrollbar-width:none;scroll-snap-type:x proximity}.filter-pills::-webkit-scrollbar{display:none}.filter-pills button{scroll-snap-align:start;padding-inline:14px;font-size:12px}.customer-picker-input{min-height:44px;height:44px;font-size:16px}.customer-picker>label{margin-bottom:5px;font-size:12px}.customer-picker-input>input{font-size:16px}.customer-picker-results{max-height:min(43dvh,360px)}.customer-picker-results>button{min-height:56px}.customer-picker-results b{font-size:13px}.customer-picker-results small{font-size:11px}.customer-monthly-orders{min-height:48px;font-size:13px;touch-action:manipulation}.list-pagination{min-height:58px;overflow-x:auto}.date-range-apply,.date-range-custom input,.date-range-presets button,.list-pagination button,.list-pagination select,.order-tracking-actions button,.row-action-menu>summary{min-height:44px}.mobile-card-table{overflow:visible;border:0;border-radius:0;background:transparent}.mobile-card-table table,.mobile-card-table tbody{display:block;width:100%;min-width:0!important}.mobile-card-table thead{display:none}.mobile-card-table tr{margin:0 0 10px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 4px 14px rgba(24,43,35,.035);display:grid;grid-template-columns:1fr 1fr}.mobile-card-table td,.mobile-card-table.orders-table td:first-child{min-width:0;min-height:58px;padding:11px 12px;border-bottom:1px solid #edf0ed;display:flex;align-items:flex-start;justify-content:space-between;flex-direction:column;gap:5px;font-size:13px;overflow-wrap:anywhere}.mobile-card-table td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:750}.mobile-card-table td:first-child{grid-column:1/-1;min-height:68px}.mobile-card-table .mobile-card-action:before,.mobile-card-table td:first-child:before{display:none}.mobile-card-table .mobile-card-action{grid-column:1/-1;min-height:54px;padding:7px;border-bottom:0}.mobile-card-table .mobile-card-action .icon-button{width:100%;min-height:44px;justify-content:center;font-size:13px}.mobile-card-table .product-cell{width:100%;min-width:0}.mobile-card-table .cell-sub{font-size:12px;line-height:1.45}.customer-mobile-table td[data-label="地址"],.customer-mobile-table td[data-label="聯絡窗口"],.shipment-mobile-table td[data-label="地址"],.shipment-mobile-table td[data-label="客戶／收件人"]{grid-column:1/-1}}@media (max-width:700px){.page{padding:20px 12px}.page-title,.page-title.compact{margin-bottom:18px;align-items:stretch;flex-direction:column;gap:14px}.page-title h1{font-size:25px}.page-title p{font-size:13px;line-height:1.6}.page-title-actions,.page-title-actions>button,.page-title>.primary{width:100%}.primary,.secondary-action{min-height:48px;justify-content:center}.toolbar{display:flex;align-items:stretch;flex-direction:column;gap:10px;padding:12px}.customer-toolbar>label,.toolbar>label{width:100%;max-width:none;margin:0}.toolbar>label input{width:100%}.customer-toolbar>span{padding:0 2px;font-size:12px}.metrics{grid-template-columns:1fr 1fr}.metrics article{min-height:124px}.module-cards{grid-template-columns:1fr 1fr;gap:8px}.module-cards article{min-height:90px;padding:13px}.module-cards article:last-child:nth-child(odd){grid-column:1/-1}.order-tracking-status-grid{grid-template-columns:1fr 1fr}.order-tracking-status-grid>section,.order-tracking-status-grid>section:nth-child(2){min-height:78px;border-top:0;border-right:1px solid #e3e8e5}.order-tracking-status-grid>section:nth-child(2n){border-right:0}.order-tracking-status-grid>section:nth-child(n+3){border-top:1px solid #e3e8e5}.order-case-detail>summary>div:first-child span,.order-tracking-status-grid small{font-size:10px}.order-tracking-status-grid b{font-size:12px}.order-tracking-status-grid em{font-size:10px}.date-range-custom input{font-size:16px}.toast{bottom:calc(80px + env(safe-area-inset-bottom))}}@media (max-width:560px){.customer-monthly-orders{width:100%}.mobile-card-table tr{grid-template-columns:1fr}.customer-mobile-table td[data-label="地址"],.customer-mobile-table td[data-label="聯絡窗口"],.mobile-card-table .mobile-card-action,.mobile-card-table td,.mobile-card-table td:first-child,.shipment-mobile-table td[data-label="地址"],.shipment-mobile-table td[data-label="客戶／收件人"]{grid-column:1}.module-cards article{align-items:flex-start;flex-direction:column;gap:7px}}.customer-details-toggle{display:none}@media (max-width:900px){.customer-directory-table tr:not(.customer-details-expanded) .customer-secondary-detail{display:none}.customer-directory-table .customer-details-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:8px;padding:8px 12px;border:1px solid #c8d8d0;border-radius:8px;background:#f3f8f5;color:var(--green);font:inherit;font-weight:700}}@media (min-width:901px){.customer-directory-table{overflow-x:hidden}.customer-directory-table table{min-width:0;table-layout:fixed}.customer-directory-table th{white-space:nowrap}.customer-directory-table th:first-child{width:22%}.customer-directory-table th:nth-child(2){width:8%}.customer-directory-table th:nth-child(3){width:16%}.customer-directory-table th:nth-child(4){width:21%}.customer-directory-table th:nth-child(5),.customer-directory-table th:nth-child(6){width:10%}.customer-directory-table th:nth-child(7){width:7%}.customer-directory-table th:nth-child(8){width:6%}.customer-directory-table td{overflow-wrap:break-word;word-break:normal;vertical-align:middle}.customer-directory-table td:nth-child(2),.customer-directory-table td:nth-child(5),.customer-directory-table td:nth-child(6),.customer-directory-table td:nth-child(7),.customer-directory-table td:nth-child(8){text-align:center}}.list-pagination{min-height:52px;padding:8px 13px;border:1px solid var(--line);border-top:0;background:#f8faf8;color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px}.list-pagination label,.list-pagination>div{display:flex;align-items:center;gap:7px}.list-pagination button,.list-pagination select{min-height:38px;border:1px solid #d7e0db;border-radius:7px;background:#fff;color:var(--green);padding:0 10px;font-weight:750}.list-pagination button{display:inline-flex;align-items:center;gap:4px}.list-pagination button svg{width:16px;height:16px}.list-pagination button:disabled{cursor:not-allowed;opacity:.45}.list-pagination-bottom{margin-top:10px;border-top:1px solid var(--line);border-radius:9px}.row-action-menu{position:relative}.row-action-menu>summary{min-width:72px;min-height:38px;border:1px solid #dfe4e1;border-radius:7px;background:#fff;color:var(--green);display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;font-size:11px;font-weight:760;list-style:none}.row-action-menu>summary::-webkit-details-marker{display:none}.row-action-menu>summary svg{width:17px}.row-action-menu>div{position:absolute;top:calc(100% + 5px);right:0;z-index:12;min-width:130px;padding:6px;border:1px solid #d7e0db;border-radius:8px;background:#fff;box-shadow:0 14px 36px rgba(18,48,37,.17)}.row-action-menu>div button{width:100%;min-height:40px;justify-content:flex-start;border:0}@media (max-width:700px){.modal-wrap{padding:0;place-items:end center}.modal{width:100%;max-height:100dvh;height:min(92dvh,820px);overflow:hidden;border-radius:20px 20px 0 0;display:flex;flex-direction:column}.modal-head{min-height:72px;flex:0 0 auto;padding:13px 14px 11px 17px}.modal-head h2{font-size:21px}.modal-head>button{width:44px;height:44px;flex:0 0 44px}.form-grid{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:16px 14px 24px;grid-template-columns:1fr;gap:15px}.form-grid .wide{grid-column:auto}.form-grid .customer-picker>label,.form-grid label>span{margin-bottom:6px;font-size:12px}.form-grid .customer-picker-input,.form-grid input,.form-grid select{min-height:48px;height:48px;font-size:16px}.form-grid .customer-picker-input>input{font-size:16px}.form-grid .customer-picker-results{position:static;max-height:300px;margin-top:6px}.code-help{flex:0 0 auto;margin:0 14px 8px;font-size:11px}.modal-actions{flex:0 0 auto;padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;box-shadow:0 -9px 22px rgba(24,43,35,.07);display:grid;grid-template-columns:1fr 1.4fr}.modal-actions>button{min-height:48px;padding:0 12px;font-size:14px}.login-loading,.login-page{min-height:100dvh}.login-page{overflow-y:auto;padding:24px 16px}.login-card{padding:27px 20px}.login-card label>div,.login-card>button{min-height:48px;height:48px}.login-card input{font-size:16px}}@media screen{.app-shell{--ui-body-size:16px;--ui-control-size:15px;--ui-caption-size:13px;font-size:var(--ui-body-size);line-height:1.5}.app-shell button{font-size:var(--ui-control-size);line-height:1.35}.app-shell :is(input,select,textarea){font-size:15px;line-height:1.4}.app-shell small{font-size:var(--ui-caption-size)!important;line-height:1.45}.app-shell p{font-size:14px;line-height:1.55}.app-shell :is(span,b,strong,em,small,p,label,th,td,dt,dd){font-size:max(12px,1em)}.app-shell :is(.table-card,.analytics-table-wrap) table{font-size:14px}.app-shell :is(.table-card,.analytics-table-wrap) th{font-size:13px;line-height:1.4}.app-shell :is(.table-card,.analytics-table-wrap) td{line-height:1.5}.app-shell :is(.metrics article>small,.panel-head p,.count-badge,.order-list small,.stock-list small,.order-list em,.product-art em,.product-info>small,.product-info em,.cart-title small,.cart-item small,.totals>span,.checkout-note){font-size:13px!important;line-height:1.45}.app-shell :is(.product-info>small,.product-edit-hint,.stock-list small,.count-badge){font-size:14px!important}.app-shell .mobile-cart-trigger em{font-size:13px;line-height:1.35}.app-shell :is(.order-list button>span:nth-child(2) b,.stock-list b,.order-list strong,.product-info strong,.cart-item b,.cart-item>strong,.totals>strong,.qty span){font-size:14px;line-height:1.4}.app-shell :is(.eyebrow,.customer-picker>label,.customer-fields label>span,.payment-row label>span,.form-grid label>span,.signer-field>span,.case-payment-field>span,.case-order-checkout>label>span){font-size:13px;line-height:1.4}.app-shell :is(.brand-copy span,.sidebar nav p,.sidebar nav button em,.sidebar nav button .nav-status,.customer-toolbar>span){font-size:13px;line-height:1.4}.app-shell :is(.product-info>b,.cart-item b,.case-summary-row b,.case-product-detail>b,.case-order-cart-item b,.rank-label b,.accounting-case-items b){height:auto;font-size:14px;line-height:1.45}.app-shell :is(.status-detail,.price-tag,.channel-tag,.done-tag,.signed-chip,.source-chip,.customer-tier,.case-monthly-badge,.case-hub-status,.case-stage-payment-status,.case-settlement-method-chip,.closed-label,.accounting-access,.accounting-status,.accounting-disabled-reason,.checkout-note,.checkout-alert,.checkout-ready,.detail-limit-note,.case-hub-limit-note,.signature-legal,.signature-error){font-size:13px!important;line-height:1.45}.app-shell :is(.case-summary-head,.case-existing-intro,.case-stage-payment-meta>span,.case-stage-fulfillment-control>b,.case-payment-selection p,.case-payment-select-all span,.case-payment-line-check>b,.case-payment-line-amount>span,.case-payment-sticky-footer>div span,.segment-rules,.unlinked-sales,.metric-notes){font-size:13px;line-height:1.5}.app-shell :is(.case-hub-overview b,.case-stage-finance-summary b,.case-accounting-totals b,.order-tracking-status-grid b,.order-case-summary-metrics b,.order-case-product-finance b,.ranked-row>strong,.operations-list b,.operations-list strong){font-size:13px;line-height:1.4}.app-shell .case-accounting-copy small,.app-shell .case-accounting-totals small,.app-shell .case-cart-stage>span,.app-shell .case-existing-stage-empty,.app-shell .case-existing-stage>header small,.app-shell .case-hub-actions>span,.app-shell .case-hub-history-empty span,.app-shell .case-hub-limit-note,.app-shell .case-hub-number,.app-shell .case-hub-overview small,.app-shell .case-hub-section-head p,.app-shell .case-hub-section-head>span,.app-shell .case-hub-status,.app-shell .case-item-head,.app-shell .case-item-order small,.app-shell .case-item-product small,.app-shell .case-item-row,.app-shell .case-monthly-badge,.app-shell .case-no-items span,.app-shell .case-payment-empty p,.app-shell .case-payment-head p,.app-shell .case-payment-line-amount>small,.app-shell .case-payment-line-balance small,.app-shell .case-payment-line-product small,.app-shell .case-payment-selection p,.app-shell .case-payment-sticky-footer>div small,.app-shell .case-payment-sticky-footer>div span,.app-shell .case-payment-sticky-footer>p,.app-shell .case-stage-finance-summary small,.app-shell .case-stage-item-finance small,.app-shell .case-stage-title small{font-size:12px;line-height:1.45}.app-shell .case-accounting-copy b,.app-shell .case-accounting-totals b,.app-shell .case-hub-history-empty b,.app-shell .case-hub-identity p,.app-shell .case-hub-overview b,.app-shell .case-item-order b,.app-shell .case-item-product b,.app-shell .case-item-row>strong,.app-shell .case-no-items b,.app-shell .case-payment-line-balance b,.app-shell .case-payment-line-check>b,.app-shell .case-payment-line-product b,.app-shell .case-stage-finance-summary b,.app-shell .case-stage-item>strong,.app-shell .case-stage-payment-meta>span b,.app-shell .case-stage-product b,.app-shell .case-stage-product-row b,.app-shell .case-stage-product-row>strong{font-size:13px;line-height:1.4}.app-shell .case-payment-field>span,.app-shell .case-payment-line-amount i,.app-shell .case-payment-line-amount>span,.app-shell .case-payment-select-all span,.app-shell .case-stage-fulfillment-control>b,.app-shell .case-stage-payment-meta>span{font-size:12px!important;line-height:1.4}.app-shell .case-flat-products .case-stage-list>div:not(.case-stage-item),.app-shell .topbar .staff>span{font-size:12px;line-height:1.4}.app-shell :is(.case-order-identity p,.case-order-head-summary small,.case-existing-row small,.case-product-detail>small,.case-product-detail em,.case-order-cart-pane small,.case-order-cart-item small,.case-order-checkout>label>span,.case-order-checkout>div>span,.case-order-checkout>small,.case-workspace-empty p,.signature-head p,.signature-pad-wrap>small,.signature-legal,.receipt-signature span small){font-size:12px!important;line-height:1.45}.app-shell :is(.case-order-head-summary b,.case-existing-row b,.case-existing-row>strong,.case-product-detail>b,.case-product-detail strong,.case-order-cart-item b,.case-order-cart-item>strong,.case-order-checkout>div>strong,.signature-pad-wrap>div b,.receipt-signature span b){font-size:13px;line-height:1.4}.app-shell :is(.case-stage-pay-button,.case-whole-payment-button,.case-hub-actions button,.case-hub-empty button,.case-payment-sticky-footer>button,.case-add-items,.case-summary-more){min-height:44px;font-size:13px}.app-shell .analytics-panel>header h2,.app-shell .chart-empty b,.app-shell .date-range-context b,.app-shell .operations-list b,.app-shell .operations-list strong,.app-shell .order-case-detail>summary>div:first-child b,.app-shell .order-case-product-finance b,.app-shell .order-case-product-name b,.app-shell .order-case-summary-metrics b,.app-shell .order-tracking-status-grid b,.app-shell .order-unassigned-note b,.app-shell .rank-label b,.app-shell .segment-bars span b{font-size:13px;line-height:1.4}.app-shell .analytics-kpi p,.app-shell .analytics-kpi small,.app-shell .analytics-panel>header p,.app-shell .analytics-table-wrap td small,.app-shell .chart-empty span,.app-shell .date-range-context small,.app-shell .date-range-custom label>span,.app-shell .operations-flow>span small,.app-shell .operations-list small,.app-shell .order-case-detail>summary>div:first-child small,.app-shell .order-case-detail>summary>div:first-child span,.app-shell .order-case-expand em,.app-shell .order-case-product-finance small,.app-shell .order-case-product-finance>span,.app-shell .order-case-product-name small,.app-shell .order-case-product-name>span,.app-shell .order-case-product-work>span,.app-shell .order-case-summary-metrics small,.app-shell .order-tracking-actions>span,.app-shell .order-tracking-identity p,.app-shell .order-tracking-identity>span,.app-shell .order-tracking-status-grid em,.app-shell .order-tracking-status-grid small,.app-shell .order-tracking-total small,.app-shell .order-tracking-total span,.app-shell .order-unassigned-note small,.app-shell .rank-label small,.app-shell .segment-bars span small,.app-shell .source-gap p,.app-shell .source-gap small{font-size:12px;line-height:1.45}.app-shell .customer-tier,.app-shell .date-range-custom>i,.app-shell .detail-limit-note,.app-shell .metric-notes,.app-shell .rank-number,.app-shell .ranked-row>strong,.app-shell .segment-rules,.app-shell .source-chip,.app-shell .unlinked-sales{font-size:12px}.app-shell .accounting-case-card>header p,.app-shell .accounting-case-card>header>div>span,.app-shell .accounting-case-items small,.app-shell .accounting-case-items>p,.app-shell .accounting-case-meta small,.app-shell .accounting-disabled-reason,.app-shell .accounting-empty p,.app-shell .accounting-review-alert small,.app-shell .accounting-rule-note small,.app-shell .accounting-status,.app-shell .accounting-steps small,.app-shell .accounting-summary em,.app-shell .accounting-summary small,.app-shell .monthly-detail-panel>header small,.app-shell .monthly-empty-mini,.app-shell .monthly-items td:first-child small,.app-shell .monthly-items th,.app-shell .monthly-next-step,.app-shell .monthly-note,.app-shell .monthly-order>header small,.app-shell .monthly-period-copy small,.app-shell .monthly-receipt-fields span,.app-shell .monthly-receipt-row small,.app-shell .monthly-statement-identity p,.app-shell .monthly-statement-identity>span,.app-shell .monthly-statement-numbers small,.app-shell .monthly-status,.app-shell .monthly-summary small,.app-shell .monthly-summary span{font-size:12px;line-height:1.45}.app-shell .accounting-case-items b,.app-shell .accounting-case-meta b,.app-shell .accounting-review-alert b,.app-shell .accounting-rule-note b,.app-shell .accounting-steps b,.app-shell .monthly-detail-panel>header h3,.app-shell .monthly-items td,.app-shell .monthly-order>header b,.app-shell .monthly-order>header strong,.app-shell .monthly-period-copy b,.app-shell .monthly-receipt-form h4,.app-shell .monthly-receipt-row b,.app-shell .monthly-receipt-row strong,.app-shell .monthly-statement-numbers b{font-size:13px;line-height:1.4}.app-shell :is(.accounting-case-actions button,.monthly-scope-control button,.monthly-statement-toolbar button,.monthly-receipt-actions button){min-height:44px;font-size:14px}.app-shell :is(.form-grid,.toolbar,.accounting-toolbar,.monthly-receipt-fields,.case-payment-field,.customer-fields,.payment-row) label>span{font-size:13px;line-height:1.45}.app-shell :is(.form-grid,.toolbar,.accounting-toolbar,.monthly-receipt-fields,.case-payment-field,.customer-fields,.payment-row) :is(input,select,textarea){min-height:42px;font-size:15px}.app-shell :is(.order-tracking-row,.shipment-panel,.accounting-panel,.monthly-billing,.receipt-modal){font-size:14px;line-height:1.5}.app-shell :is(.order-tracking-row,.shipment-panel,.accounting-panel,.monthly-billing,.receipt-modal) :is(small,.cell-sub){font-size:13px;line-height:1.45}.app-shell .receipt footer,.app-shell .receipt td:first-child small,.app-shell .receipt-meta small,.app-shell .receipt-total>small{font-size:13px}.app-shell .receipt table,.app-shell .receipt-meta b,.app-shell .receipt-total span{font-size:14px}}@media screen and (max-width:1180px){.app-shell{--ui-body-size:16px;--ui-control-size:15px;--ui-caption-size:13px}.app-shell :is(button,summary,[role=button]){min-height:44px}.app-shell :is(input:not([type=checkbox]):not([type=radio]),select,textarea){min-height:44px;font-size:16px}.app-shell :is(input[type=checkbox],input[type=radio]){min-width:22px;min-height:22px}.app-shell :is(.icon-button,.mobile-close,.menu-btn,.sidebar-width-toggle,.remove-item,.case-cart-remove,.modal-head>button,.case-order-close){min-width:44px;min-height:44px}.app-shell :is(.product-card,.case-order-product,.order-list button,.stock-list button,.operations-list button){touch-action:manipulation}}.topbar-actions{display:flex;align-items:center;gap:9px}.offline-status-button{min-height:38px;border:1px solid #d7e1dc;border-radius:20px;background:#fff;color:#496159;padding:0 11px;display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:750;white-space:nowrap}.offline-status-button svg{width:16px}.offline-status-button.ready{border-color:#b9d8c9;background:#edf6f1;color:#226448}.offline-status-button.offline,.offline-status-button.warning{border-color:#e3c99d;background:#fff7e8;color:#8a5c1c}.offline-status-button.danger{border-color:#e4b7b1;background:#fff0ed;color:#95463f}.offline-status-button.locked{background:#f1f3f2;color:#5e6d66}.offline-modal-wrap{position:fixed;inset:0;z-index:130;display:flex;justify-content:flex-end}.offline-modal-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(11,28,22,.6);backdrop-filter:blur(2px)}.offline-modal{position:relative;width:min(560px,100vw);height:100dvh;background:#f5f7f5;box-shadow:-20px 0 60px rgba(9,32,23,.28);display:flex;flex-direction:column}.offline-modal>header{min-height:76px;padding:14px 17px 14px 21px;background:#fff;border-bottom:1px solid #dce4e0;display:flex;align-items:center;justify-content:space-between}.offline-modal>header>span{display:flex;align-items:center;gap:11px}.offline-modal>header>span>svg{color:#236348}.offline-modal>header b,.offline-modal>header small{display:block}.offline-modal>header b{font-size:17px}.offline-modal>header small{margin-top:4px;color:#74827b;font-size:11px}.offline-modal>header>button{width:44px;height:44px;border:0;border-radius:50%;background:#edf2ef;color:#52645b;display:grid;place-items:center}.offline-modal-body{min-height:0;overflow-y:auto;padding:18px}.offline-error{margin:0 0 12px;padding:11px 13px;border:1px solid #ecc4bf;border-radius:9px;background:#fff0ed;color:#984840;font-size:12px;line-height:1.5}.offline-pin-form,.offline-renew{max-width:440px;margin:24px auto;padding:22px;border:1px solid #dce4e0;border-radius:14px;background:#fff}.offline-pin-form h3{margin:0;display:flex;align-items:center;gap:8px;font-size:18px}.offline-pin-form h3 svg{color:#236348}.offline-pin-form p,.offline-renew p{color:#65756d;font-size:12px;line-height:1.65}.offline-pin-form label{display:block;margin:13px 0}.offline-pin-form label span{display:block;margin-bottom:6px;color:#596c62;font-size:12px;font-weight:700}.offline-pin-form input{width:100%;min-height:48px;border:1px solid #ccd9d2;border-radius:8px;padding:0 12px;font-size:20px;letter-spacing:.18em}.offline-primary{width:100%;min-height:48px;border:0;border-radius:8px;background:#174f3b;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:800}.offline-primary:disabled{opacity:.5}.offline-primary svg{width:18px}.offline-renew{text-align:center}.offline-renew>svg{width:36px;height:36px;color:#aa7122}.offline-renew h3{font-size:18px}.offline-summary{margin-bottom:12px;padding:13px 14px;border:1px solid #dce4e0;border-radius:11px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}.offline-summary>div{display:flex;align-items:center;gap:10px}.offline-summary>div>span:first-child{width:11px;height:11px;border-radius:50%;background:#ac5047;box-shadow:0 0 0 4px #f6e7e4}.offline-summary>div>span:first-child.online{background:#33815f;box-shadow:0 0 0 4px #e0efe8}.offline-summary b,.offline-summary small{display:block}.offline-summary b{font-size:13px}.offline-summary small{margin-top:3px;color:#75837c;font-size:10px}.offline-back-list,.offline-summary button{min-height:40px;border:1px solid #bfd2c9;border-radius:7px;background:#edf5f1;color:#245f48;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:750}.offline-summary button:disabled{opacity:.45}.offline-summary button svg{width:15px}.offline-boundary-note{margin-bottom:16px;padding:11px 13px;border-radius:9px;background:#fff6e7;color:#785b31;font-size:11px;line-height:1.55}.offline-boundary-note b{display:block;margin-bottom:3px}.offline-order-list h3{font-size:14px}.offline-order-list>p{padding:28px;border:1px dashed #cbd7d1;border-radius:10px;text-align:center;color:#75847d;font-size:12px}.offline-order-list>button{width:100%;min-height:68px;margin-bottom:8px;border:1px solid #dce4e0;border-radius:10px;background:#fff;padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;text-align:left}.offline-order-list b,.offline-order-list small{display:block}.offline-order-list b{font-size:12px}.offline-order-list small{margin-top:4px;color:#738079;font-size:10px}.offline-order-list strong{font-size:12px;color:#235e47}.offline-state{border-radius:15px;padding:5px 8px;background:#f0f2f1;color:#65736c;font-size:9px;font-weight:800}.offline-state.queued,.offline-state.retry_wait,.offline-state.syncing{background:#fff1d9;color:#865e22}.offline-state.auth_required,.offline-state.blocked,.offline-state.needs_review{background:#fae6e3;color:#93463f}.offline-state.synced{background:#e3f1e9;color:#24694e}.offline-state.cancelled{background:#eef0ef;color:#727d78}.offline-print-receipt{border:1px solid #d9e2dd;border-radius:12px;background:#fff;padding:18px;color:#24352d}.offline-receipt-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:13px;border-bottom:2px solid #255d49}.offline-receipt-brand{display:block;color:#255d49;font-size:11px;font-weight:850;letter-spacing:.09em}.offline-receipt-head h2{margin:5px 0 0;font-size:19px}.offline-receipt-badge{border-radius:15px;padding:6px 9px;font-size:9px;font-weight:850;white-space:nowrap}.offline-receipt-badge.pending{background:#fff0ed;color:#93483f}.offline-receipt-badge.synced{background:#e2f0e8;color:#25694e}.offline-receipt-warning{margin:12px 0;padding:10px 11px;border-left:4px solid #d57656;background:#fff5ef;color:#7d4d3e;font-size:10px;line-height:1.55}.offline-receipt-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.offline-receipt-meta>div{padding:8px 9px;border:1px solid #e1e7e4;border-radius:7px}.offline-receipt-meta dt{color:#77847e;font-size:8px}.offline-receipt-meta dd{margin:3px 0 0;font-size:10px;font-weight:750}.offline-receipt-table{width:100%;border-collapse:collapse;font-size:9px}.offline-receipt-table td,.offline-receipt-table th{padding:8px 7px;border-bottom:1px solid #e6ebe8;text-align:right;vertical-align:top}.offline-receipt-table td:first-child,.offline-receipt-table th:first-child{text-align:left}.offline-receipt-table tbody td:first-child{width:52%}.offline-receipt-table td b,.offline-receipt-table td small{display:block}.offline-receipt-table td small{margin-top:3px;color:#6f7c76;font-size:8px;line-height:1.45}.offline-receipt-table tfoot th{font-weight:700;text-align:right}.offline-receipt-table tfoot td{font-weight:750}.offline-receipt-table .offline-receipt-total td,.offline-receipt-table .offline-receipt-total th{border-top:2px solid #315f4d;border-bottom:0;color:#174f3b;font-size:12px}.offline-print-receipt>footer{margin-top:13px;padding-top:9px;border-top:1px dashed #bdc9c3;color:#6e7a74;font-size:8px;line-height:1.5}.offline-cloud-result{margin-top:12px;padding:11px;border-radius:8px;background:#e4f1ea;color:#24684d;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:750}.offline-cloud-result svg{width:18px}.offline-receipt-actions{margin-top:14px}.offline-receipt-actions button{width:100%;min-height:48px;border:1px solid #1d6549;border-radius:8px;background:#1d6549;color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:800}.offline-receipt-actions svg{width:18px}.offline-print-note{display:block;margin-top:8px;color:#74817b;font-size:9px;line-height:1.5}.offline-back-list{width:100%;margin-top:12px}.offline-auth-note,.offline-review-note{margin:12px 0 0;padding:11px 13px;border:1px solid #e7c0ba;border-radius:9px;background:#fff4f1;color:#854841;font-size:11px;line-height:1.55}.offline-auth-note b,.offline-auth-note small,.offline-review-note b,.offline-review-note span{display:block}.offline-auth-note b,.offline-review-note b{margin-bottom:3px;font-size:12px}.offline-auth-note{display:flex;gap:9px}.offline-auth-note>svg{width:20px;flex:0 0 auto}.offline-auth-note small{font-size:10px;line-height:1.55}.offline-unlock-screen{min-height:100dvh;padding:24px;background:linear-gradient(145deg,#173f31,#0d281f);display:grid;place-items:center}.offline-unlock-screen>section{width:min(460px,100%);padding:28px;border-radius:18px;background:#f7f9f7;box-shadow:0 24px 80px rgba(0,0,0,.28)}.offline-unlock-screen>.offline-pin-form{margin:20px 0}.offline-unlock-screen h1{font-family:"Noto Serif TC",Songti TC,serif;font-size:27px}.offline-unlock-screen>section>p{color:#65756d;font-size:13px;line-height:1.65}.offline-online-login{width:100%;min-height:44px;border:0;background:transparent;color:#426758;font-size:12px;text-decoration:underline}@media(max-width:900px){.offline-status-button{min-height:40px}.offline-status-button span{display:none}.offline-modal{width:100%;height:min(92dvh,860px);margin-top:auto}.offline-modal,.offline-modal>header{border-radius:20px 20px 0 0}.offline-modal-body{padding:14px 12px calc(18px + env(safe-area-inset-bottom))}.offline-receipt-actions button{min-height:48px;font-size:12px}.offline-order-list>button{grid-template-columns:minmax(0,1fr) auto}.offline-order-list>button>strong{grid-column:1/-1}.offline-pin-form input{font-size:20px}.offline-receipt-meta{grid-template-columns:1fr}.offline-summary{align-items:stretch;flex-direction:column}.offline-summary button{min-height:44px}}@media(max-width:560px){.offline-modal{height:100dvh}.offline-modal,.offline-modal>header{border-radius:0}.offline-modal>header b{font-size:16px}.offline-modal>header small{font-size:10px}.offline-unlock-screen{padding:12px}.offline-unlock-screen>section{padding:22px 16px}.offline-pin-form{padding:17px 14px}}@media print{body.offline-receipt-printing{background:#fff!important;overflow:visible!important}body.offline-receipt-printing *{visibility:hidden!important}body.offline-receipt-printing .app-shell,body.offline-receipt-printing .main,body.offline-receipt-printing .offline-modal,body.offline-receipt-printing .offline-modal-body,body.offline-receipt-printing .offline-modal-wrap,body.offline-receipt-printing .offline-order-detail,body.offline-receipt-printing .topbar,body.offline-receipt-printing .topbar-actions{position:static!important;inset:auto!important;display:block!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important;box-shadow:none!important}body.offline-receipt-printing .main>:not(.topbar),body.offline-receipt-printing .mobile-bottom-nav,body.offline-receipt-printing .offline-modal-backdrop,body.offline-receipt-printing .offline-modal-body>:not(.offline-order-detail),body.offline-receipt-printing .offline-modal>header,body.offline-receipt-printing .offline-order-detail>:not(.offline-print-receipt),body.offline-receipt-printing .offline-status-button,body.offline-receipt-printing .sidebar,body.offline-receipt-printing .staff,body.offline-receipt-printing .topbar>div:first-child{display:none!important}body.offline-receipt-printing .offline-print-receipt,body.offline-receipt-printing .offline-print-receipt *{visibility:visible!important}body.offline-receipt-printing .offline-print-receipt{border:0!important;border-radius:0!important;padding:0!important;color:#000!important}body.offline-receipt-printing .offline-receipt-table tr{break-inside:avoid}body.offline-receipt-printing .offline-receipt-table thead{display:table-header-group!important}body.offline-receipt-printing .offline-receipt-table tfoot{display:table-footer-group!important}@page{margin:12mm}}