/* Sample notice, local report and responsive alignment. Original source assets remain unchanged. */
.hap-demo-notice{position:fixed;left:0;right:0;bottom:0;z-index:100000;display:flex;justify-content:space-between;align-items:center;gap:8px;height:48px;padding:2px 12px;background:#f4f8fc;border-top:1px solid #cddcec;color:#334155;font:11px/1.4 Inter,Arial,sans-serif}
.hap-demo-notice button{border:1px solid #b5c9e5;background:#fff;color:#0758cb;border-radius:4px;padding:4px 10px;min-height:44px;cursor:pointer;font:inherit;flex-shrink:0}
.hap-demo-notice button:hover{background:#eaf2ff}.hap-demo-notice button:focus-visible{outline:2px solid #0866ff;outline-offset:2px}
body{padding-bottom:48px}.pos-main{bottom:48px!important}
html body .product-catalog-thumb img{object-fit:contain}.psb-card-info{flex:1;display:flex;flex-direction:column}.psb-card-stock-row{margin-top:auto}
.hap-demo-report{border:1px solid #d5deeb;border-radius:12px;padding:24px;width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;margin:auto;color:#1e293b;background:white;font-family:Inter,'Segoe UI',sans-serif}.hap-demo-report::backdrop{background:#15243d88}.hap-demo-report header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.hap-demo-report h2{font-size:20px;margin:0}.hap-demo-report button{min-height:44px;min-width:64px;border:1px solid #cdd8e8;border-radius:8px;background:white;color:#334155;cursor:pointer}.hap-demo-report p{font-size:13px;line-height:1.6;color:#64748b}.hap-demo-report dl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.hap-demo-report dt{font-size:12px;color:#64748b}.hap-demo-report dd{margin:8px 0 0;font-size:22px;font-weight:700}.hap-demo-report h3{font-size:15px;margin:24px 0 16px}.hap-demo-report ul{padding-left:20px;line-height:2;font-size:13px}
@media(max-width:700px){.hap-demo-notice{font-size:10px}.hap-demo-notice span{max-width:75%}}
/* Keep original controls and colours; only reflow cramped phone alignments. */
@media(max-width:700px){
 html body:not(.purchase-page) .pos-topbar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px}
 html body:not(.purchase-page) .customer-section{grid-row:1;min-width:0;width:100%}
 html body:not(.purchase-page) .search-section{grid-row:2;min-width:0;width:100%;max-width:none;flex:none;margin:0}
 html body:not(.purchase-page) .price-group-section{grid-row:3;min-width:0;width:100%;margin:0;display:flex}
 html body:not(.purchase-page) .do-epos-wrap{grid-row:4;justify-self:start;margin:0}
 html body:not(.purchase-page) .customer-search-wrapper{min-width:0;flex:1}
 html body:not(.purchase-page) .price-group-select{min-width:0;flex:1}
 html body:not(.purchase-page) .pos-totals{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px}
 html body:not(.purchase-page) .totals-left{display:flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%;flex:none}
 html body:not(.purchase-page) .total-payable{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0}
 html body:not(.purchase-page) .total-payable .label{white-space:normal;font-size:11px;flex:none}
 html body:not(.purchase-page) .total-payable .amount{flex:1;min-width:0;max-width:none;text-align:right;padding:8px 12px;font-size:24px}
 html body:not(.purchase-page) .pos-footer .action-btn{min-height:44px}
 html body:not(.purchase-page) .header-actions{overflow-x:auto;justify-content:flex-start;max-width:100%;scrollbar-width:thin}
 html body:not(.purchase-page) #emptyCartRow .empty-cart{width:calc(100vw - 48px);min-width:0;padding:16px;align-items:center}
 html body:not(.purchase-page) #emptyCartRow .empty-cart-badge{width:100%;max-width:100%;padding:12px}
 html body:not(.purchase-page) .empty-cart-text{font-size:12px;white-space:normal}
 html body:not(.purchase-page) .empty-cart-hint{font-size:10px;white-space:normal}
 .purchase-page.purchase-entry-open .main-area{overflow:auto}
 .purchase-page .purchase-header-actions{overflow-x:auto;scrollbar-width:thin;max-width:100%}
 html body.purchase-page .connection-pill::after{content:'Local sample'}
 .hap-demo-report dl{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
