/* Module caisse ERP LMDB, strictement une simulation locale. */
.pos-dash-banner{display:flex;align-items:center;gap:16px;margin:12px 0 24px;background:#e5f0df;padding:17px 20px;border-radius:14px;border:1px solid #c5ddbb}
.pos-dash-icon{width:42px;height:42px;border-radius:10px;background:#1b4e35;color:white;display:grid;place-items:center;font-size:24px;flex:0 0 auto}
.pos-dash-banner div{flex:1}.pos-dash-banner strong,.pos-dash-banner small{display:block}.pos-dash-banner small{margin-top:3px;font-size:11px;color:#52765c}
.pos-head{margin-bottom:18px}.pos-warning{background:#fff9e8;border:1px solid #efdab2;border-radius:11px;padding:12px 17px;color:#865e22;font-size:12px;line-height:1.65;margin-bottom:18px}
.pos-warning b{color:#754e13}
.pos-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(335px,.9fr);gap:19px;align-items:start}
.pos-main{background:#fff;border-radius:15px;padding:21px;box-shadow:var(--shadow);border:1px solid var(--line);min-width:0}
.pos-toolbar{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(210px,1.5fr) minmax(170px,1.1fr);gap:13px;border-bottom:1px solid #e9eee8;padding-bottom:19px}
.pos-toolbar-field label,.pos-discount label{display:block;font-size:11px;color:#6e8575;font-weight:680;margin:0 0 6px}
.pos-toolbar input,.pos-toolbar select{height:44px;font-size:12px;min-width:0}.pos-toolbar .pos-scan-group{display:flex;gap:6px}.pos-scan-group input{flex:1;min-width:0}.pos-scan-group button{font-size:11px;padding:5px 10px;white-space:nowrap}
.pos-catalog-top{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:23px 0 17px}.pos-catalog-top>div:first-child{flex:1}.pos-catalog-top h2{font-size:17px}.pos-catalog-top p{color:#8c9a91;font-size:11px;margin-top:3px}
.pos-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pos-product{background:#fff;border:1px solid #e2e9df;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:7px;min-width:0;box-shadow:0 4px 15px #172c1f06}
.pos-product.is-empty{opacity:.68}.pos-product:hover{border-color:#bad4ba}.pos-product-top{display:flex;justify-content:space-between;align-items:center;gap:5px}
.pos-product-avatar{width:37px;height:37px;background:#f0f4e9;color:#396449;border-radius:10px;font-weight:790;font-size:17px;display:grid;place-items:center}
.pos-stock{border-radius:7px;background:#e6f3e9;color:#447552;padding:5px 7px;font-size:10px;white-space:nowrap;font-weight:680}.pos-stock.out{background:#fff0ec;color:#a65e53}
.pos-product strong{font-size:12px;line-height:1.35;min-height:33px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pos-product small{font-size:10px;min-height:29px;color:#84938b;overflow:hidden}.pos-product-bottom{display:flex;align-items:center;gap:8px;margin-top:auto;justify-content:space-between}
.pos-product-bottom b{font-size:15px;letter-spacing:-.5px}.pos-product-bottom button{background:#234d35;border:0;border-radius:8px;padding:9px 11px;color:white;font-size:11px;font-weight:650}.pos-product-bottom button:disabled{background:#e5eae4;color:#a5aea6;cursor:not-allowed}
.pos-hardware{display:flex;gap:12px;align-items:flex-start;margin-top:19px;background:#f5f7f3;border-radius:11px;padding:14px;color:#5c735f}.pos-hardware>span{font-size:23px;color:#568164}.pos-hardware strong,.pos-hardware small{display:block}.pos-hardware strong{font-size:12px}.pos-hardware small{font-size:11px;margin-top:3px;line-height:1.5}
.pos-checkout{background:white;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);position:sticky;top:95px;max-height:calc(100vh - 108px);overflow-y:auto;display:flex;flex-direction:column;min-height:520px}
.pos-checkout-header{padding:20px 20px 17px;border-bottom:1px solid #e8ede5;display:flex;align-items:center;justify-content:space-between;gap:8px}.pos-checkout-header h2{margin-top:5px;font-size:16px}.pos-count{background:#ecf1e8;color:#607c67;border-radius:20px;padding:4px 9px;font-size:11px;font-weight:700}
.pos-cart-list{flex:1;min-height:150px;max-height:290px;overflow-y:auto}.pos-cart-row{padding:14px 16px;border-bottom:1px solid #edf0eb;display:flex;align-items:center;gap:6px}
.pos-cart-line{flex:1;min-width:0}.pos-cart-line strong{font-size:12px;display:block;line-height:1.35}.pos-cart-line small{font-size:10px;color:#92a098;display:block;margin-top:3px}
.pos-quantity{display:flex;align-items:center;border:1px solid #dce6dc;border-radius:9px;gap:8px;padding:2px}.pos-quantity button{border:0;background:#ecf4eb;color:#3a6e4b;border-radius:7px;width:25px;height:27px;padding:0;font-size:18px;line-height:1}.pos-quantity button:disabled{opacity:.3}.pos-quantity b{font-size:12px;min-width:10px;text-align:center}
.pos-line-price{font-size:12px;font-weight:730;white-space:nowrap;min-width:75px;text-align:right}
.pos-empty-cart{padding:40px 24px;text-align:center;color:#9caaa1}.pos-empty-cart span{display:block;font-size:48px;opacity:.5}.pos-empty-cart b{display:block;margin:8px 0 3px;color:#61776b}.pos-empty-cart p{font-size:11px}
.pos-checkout-totals{padding:20px;border-top:1px solid #e8ede7}.pos-discount{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.pos-discount label{margin:0}.pos-discount select{width:140px;font-size:12px;min-height:39px}
.pos-sum-line{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:5px 0;color:#697d71}.pos-sum-line b{font-size:13px;color:#314b3a}.pos-sum-line.detail{font-size:10px;color:#9aaba1}.pos-sum-total{border-top:1px solid #dfe8de;display:flex;align-items:center;justify-content:space-between;margin:12px 0 16px;padding-top:18px;font-weight:750}.pos-sum-total b{font-size:27px;color:#214c32;letter-spacing:-.8px}
.pos-sale{display:block;width:100%;font-size:15px;min-height:50px}.pos-clear{width:100%;margin-bottom:9px}.pos-fineprint{font-size:10px;line-height:1.55;color:#8f9d92;text-align:center;margin-top:12px}
.pos-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:18px}.pos-resume{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#869789}.pos-resume b{font-size:13px;color:#315841}.pos-offline{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#718b76;font-size:11px;margin-bottom:15px}.pos-offline #posOnlineIndicator{color:#36744d;font-weight:750}
.pos-event-top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}.pos-summary{border:1px solid #e2e9df;background:white;padding:19px;display:flex;align-items:center;gap:16px;border-radius:13px}.pos-metric-icon{border-radius:10px;width:40px;height:40px;background:#ecf4e7;color:#487052;display:grid;place-items:center;font-size:19px}.pos-summary strong{font-size:24px;display:block;line-height:1.2}.pos-summary small{font-size:11px;color:#8e9b91}
.pos-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.pos-event-card{border:1px solid #e1e9dd;background:#fff;border-radius:15px;padding:21px;box-shadow:var(--shadow)}.pos-event-crest{display:flex;justify-content:space-between;align-items:center}.pos-event-icon{border-radius:10px;width:42px;height:42px;background:#e8f2e7;color:#467b59;font-size:23px;display:grid;place-items:center}.pos-event-status{background:#fff0d3;padding:6px 9px;border-radius:8px;font-size:10px;font-weight:760;color:#9d7331}.pos-event-status.closed{background:#efefef;color:#777}.pos-event-card h3{font-size:17px;margin-top:14px}.pos-event-card p{font-size:11px;color:#899789;margin-top:4px}.pos-event-metrics{display:flex;justify-content:space-between;gap:10px;margin:20px 0;border-top:1px solid #eaf0e7;border-bottom:1px solid #eaf0e7;padding:16px 0}.pos-event-metrics b{display:block;font-size:17px}.pos-event-metrics small{display:block;color:#859789;font-size:10px}.pos-event-actions{display:flex;gap:8px;flex-wrap:wrap}
.pos-event-detail{margin-bottom:18px}.pos-event-detail .panel-head{align-items:flex-start}.pos-event-detail .panel-head>div:last-child{display:flex;gap:7px;flex-wrap:wrap}.pos-table-wrap{width:100%;overflow:auto}.pos-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.pos-table thead{background:#f3f7f2;color:#7b8f7d}.pos-table th{padding:11px;white-space:nowrap;font-weight:700}.pos-table td{padding:11px;border-bottom:1px solid #edf0eb;vertical-align:middle}.pos-table td small{display:block;font-size:10px;color:#96a299}.pos-code{font-family:monospace;font-size:11px}.pos-detail-footer{display:flex;gap:9px;margin-top:19px}.pos-advice{padding:20px 22px;background:#e8f1e5;border-radius:13px;color:#587258}.pos-advice h3{font-size:13px;margin-bottom:6px;color:#325840}.pos-advice p{font-size:11px;line-height:1.7}
.pos-modal{max-width:760px;width:min(760px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow-y:auto}.pos-modal-eyebrow{color:#ac713d;font-size:11px;font-weight:830;letter-spacing:1px;margin-bottom:12px}.pos-modal-help{color:#8b988e;font-size:12px;line-height:1.6;margin:12px 0 16px}.pos-sale-review{display:flex;justify-content:space-between;background:#edf5e9;padding:16px;border-radius:12px;margin:18px 0;font-size:13px;gap:10px}.pos-sale-review strong{font-size:20px;color:#1f5034}.pos-confirm-check{display:flex;align-items:flex-start;gap:10px;font-size:13px;margin:15px 0;padding:12px;background:#f9faf6;border-radius:10px}.pos-confirm-check input{flex:0 0 auto;margin-top:2px}.pos-report-filter{display:flex;align-items:center;gap:12px;margin:18px 0}.pos-report-filter select{max-width:230px}.pos-receipt{background:white;border:1px dashed #91a895;margin:18px auto;max-width:380px;padding:22px;text-align:center;color:#222;font-family:ui-monospace,monospace;font-size:11px}.pos-receipt-brand{font-size:17px;font-weight:800}.pos-receipt>strong{display:block;border:2px solid #b45332;padding:8px;margin:12px 0;color:#994328}.pos-receipt p{margin:10px 0;line-height:1.5}.pos-receipt-lines{border-top:1px dashed #bbb;border-bottom:1px dashed #bbb;margin:14px 0;padding:10px 0}.pos-receipt-lines>div{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;text-align:left;margin:8px 0}.pos-receipt-lines small{display:block;color:#666}.pos-receipt-total{display:flex;justify-content:space-between;margin:15px 0;font-size:13px;font-weight:bold}.pos-void-note{font-weight:800;color:#9d553e}
#posPrintArea{display:none}
@media(max-width:1250px){.pos-layout{grid-template-columns:minmax(0,1.5fr) minmax(310px,.9fr)}.pos-toolbar{grid-template-columns:1fr 1fr}.pos-toolbar-field:first-child{grid-column:1/-1}.pos-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.pos-layout{grid-template-columns:1fr}.pos-checkout{position:relative;top:auto;max-height:unset;min-height:auto}.pos-products{grid-template-columns:repeat(3,minmax(0,1fr))}.pos-lower-grid{grid-template-columns:1fr}.pos-quick-label{display:none}}
@media(max-width:650px){.pos-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pos-product{padding:12px}.pos-product-bottom{flex-wrap:wrap}.pos-product-bottom b{width:100%}.pos-toolbar{grid-template-columns:1fr;gap:11px}.pos-toolbar-field:first-child{grid-column:auto}.pos-event-top{grid-template-columns:1fr}.pos-event-grid{grid-template-columns:1fr}.pos-event-detail .panel-head{display:block}.pos-event-detail .panel-head>div:last-child{margin-top:14px}.pos-dash-banner{flex-wrap:wrap}.pos-dash-banner .button{width:100%}.pos-summary{padding:13px}.pos-checkout-totals{padding:16px}.pos-receipt{padding:13px}.pos-modal{padding:20px}}
@media print{body>*:not(#posPrintArea){display:none!important}#posPrintArea{display:block!important;position:static!important;width:76mm;font-family:Arial,sans-serif;color:#000!important;font-size:12px}#posPrintArea table{border-collapse:collapse;width:100%;margin:16px 0}#posPrintArea td,#posPrintArea th{border-bottom:1px dotted #777;padding:6px 0;text-align:left}#posPrintArea h1{font-size:21px;letter-spacing:0}#posPrintArea h2{font-size:14px;margin:12px 0}}
.pos-edit-link{background:none;border:0;color:#5e8068;text-align:left;font-size:10px;padding:3px 0;text-decoration:underline}

@media(max-width:700px){.top-actions .pos-quick{display:inline-flex;border:1px solid #dfe6dc;background:#fff;color:#315942;padding:8px 11px;min-height:36px}.top-actions>.button.primary.compact{display:none}.pos-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.top-actions .pos-quick{display:inline-flex}.top-actions>.button.primary.compact{display:none}}

.pos-mobile-controls{display:none}
@media(max-width:700px){.pos-mobile-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.pos-mobile-controls .button{font-size:12px;padding:12px 8px;min-height:48px}.pos-product button[data-pos-action="add-product"]{min-height:40px}.pos-checkout{scroll-margin:20px}.pos-toolbar{gap:10px}.pos-layout{gap:12px}}
@media(max-width:380px){.pos-mobile-controls{grid-template-columns:1fr}}
