/* =========================================================
   POS REDESIGN — assets/css/pos-styles.css
   Theme: #0d7890 (primary) / #1fb3c4 (accent)
   ========================================================= */

body.pos-fullscreen-page {
	overflow: hidden;
}

body.pos-fullscreen-page .topnav,
body.pos-fullscreen-page #sidenavAccordion,
body.pos-fullscreen-page #layoutSidenav_nav {
	display: none !important;
}

body.pos-fullscreen-page #layoutSidenav_content {
	margin-left: 0 !important;
}

body.pos-fullscreen-page main {
	padding: 0 !important;
	margin: 0 !important;
}

.pos-container.pos-fullscreen {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100vw;
	height: 100vh;
	z-index: 1040;
	display: flex;
	flex-direction: column;
}

.pos-exit-bar {
	flex: none;
	height: 50px;
	background: linear-gradient(135deg, #075363, #0d7890);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 18px;
	box-shadow: 0 2px 10px rgba(13, 120, 144, .25);
}

.pos-exit-bar .pos-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 700;
	font-size: 15px;
}

.pos-exit-bar-mid {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
	justify-content: center;
}

.pos-topbar-btn {
	background: rgba(255, 255, 255, .12) !important;
	background-image: none !important;
	border: 1px solid rgba(255, 255, 255, .18) !important;
	color: #ffffff !important;
	border-radius: 999px;
	padding: 7px 14px;
	font-size: 12.5px;
	font-weight: 600;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 6px;
	transition: background .15s;
}

.pos-topbar-btn:hover,
.pos-topbar-btn:focus {
	background: rgba(255, 255, 255, .24) !important;
	background-image: none !important;
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, .3) !important;
}

.pos-topbar-badge {
	background: rgba(255, 255, 255, .3);
	color: #ffffff;
	font-size: 10.5px;
	font-weight: 700;
	border-radius: 999px;
	padding: 1px 7px;
	margin-left: 2px;
}

.pos-exit-bar .pos-exit-btn {
	background: rgba(255, 255, 255, .15) !important;
	border: 1px solid rgba(255, 255, 255, .35);
	color: #fff !important;
	border-radius: 8px;
	padding: 7px 16px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 8px;
	text-decoration: none !important;
	transition: background .15s;
}

.pos-exit-bar .pos-exit-btn:hover,
.pos-exit-bar .pos-exit-btn:focus {
	background: rgba(255, 255, 255, .32) !important;
	color: #fff !important;
	text-decoration: none !important;
}

.pos-app.pos-fullscreen-app {
	flex: 1;
	min-height: 0;
}

/* =========================================================
   BASE VARIABLES / CONTAINER
   ========================================================= */
.pos-container svg.svg-inline--fa {
	height: 1em;
	width: auto;
	vertical-align: -0.125em;
	display: inline-block;
}

.pos-container button:not(:disabled),
.pos-container button:not(:disabled):hover,
.pos-container button:not(:disabled):focus,
.pos-container button:not(:disabled):active,
.pos-exit-bar button,
.pos-exit-bar button:hover,
.pos-exit-bar button:focus,
.pos-exit-bar a,
.pos-exit-bar a:hover,
.pos-exit-bar a:focus {
	opacity: 1 !important;
	visibility: visible !important;
	position: relative;
	z-index: 1;
}

.pos-container button::before,
.pos-container button::after,
.pos-exit-bar button::before,
.pos-exit-bar button::after {
	display: none !important;
	content: none !important;
}

.pos-container {
	--primary: #0d7890;
	--accent: #1fb3c4;
	--primary-dark: #075363;
	--accent-light: #e6f7f9;
	--pos-bg: #f1f5f7;
	--surface: #ffffff;
	--border: #dde6e9;
	--text: #1c2b33;
	--muted: #738890;
	--muted2: #6b7d85;
	--success: #1f9d55;
	--success-bg: #e7f8ee;
	--warning: #b9790a;
	--warning-bg: #fff3df;
	--danger: #d6394a;
	--danger-bg: #fdebed;
	--radius: 10px;
	--radius-lg: 16px;
	--shadow: 0 1px 2px rgba(20, 40, 46, .06), 0 8px 24px rgba(20, 40, 46, .05);

	background: var(--pos-bg);
	min-height: calc(100vh - 56px);
}

.pos-container * {
	box-sizing: border-box;
}

.pos-app {
	display: grid;
	grid-template-columns: 1fr 380px;
	min-height: calc(100vh - 56px);
}

/* ===== LEFT: PRODUCTS ===== */
.pos-left {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: var(--pos-bg);
}

.pos-search-row {
	display: flex;
	gap: 10px;
	padding: 14px 18px 10px;
	background: var(--surface);
	border-bottom: 1px solid var(--border);
}

.pos-search-box {
	position: relative;
	flex: 1.4;
}

.pos-search-box>i,
.pos-search-box>svg {
	position: absolute !important;
	left: 14px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	color: var(--muted2);
	display: inline-block;
	width: 14px;
	height: 14px;
	line-height: 1;
	z-index: 2;
	pointer-events: none;
	margin: 0 !important;
}

.pos-search-box input {
	width: 100%;
	padding: 11px 14px 11px 40px;
	border: 1.5px solid var(--border);
	border-radius: var(--radius);
	font-size: 14px;
	background: #fafdfd;
	transition: .15s;
}

.pos-search-box input:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px rgba(31, 179, 196, .14);
	background: #fff;
}

.pos-barcode-box {
	position: relative;
	flex: 1;
}

.pos-barcode-box>i,
.pos-barcode-box>svg {
	position: absolute !important;
	left: 14px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	color: var(--muted2);
	display: inline-block;
	width: 14px;
	height: 14px;
	line-height: 1;
	z-index: 2;
	pointer-events: none;
	margin: 0 !important;
}

.pos-barcode-box input {
	width: 100%;
	padding: 11px 14px 11px 40px;
	border: 1.5px dashed var(--accent);
	border-radius: var(--radius);
	font-size: 14px;
	background: var(--accent-light);
	font-weight: 600;
	color: var(--primary-dark);
}

.pos-barcode-box input:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(31, 179, 196, .18);
}

.pos-barcode-box input::placeholder {
	color: #5aa9b3;
	font-weight: 500;
}

.pos-btn-icon {
	width: 44px;
	border: 1.5px solid var(--border);
	background: #fff !important;
	color: var(--primary) !important;
	border-radius: var(--radius);
	cursor: pointer;
	font-size: 15px;
	transition: .15s;
}

.pos-btn-icon:hover {
	background: var(--accent-light) !important;
	border-color: var(--accent);
	color: var(--primary-dark) !important;
}

.pos-category-row {
	display: flex;
	gap: 8px;
	padding: 10px 18px;
	background: var(--surface);
	border-bottom: 1px solid var(--border);
	overflow-x: auto;
}

.pos-cat-chip {
	flex: none;
	padding: 7px 14px;
	border-radius: 999px;
	border: 1.5px solid var(--border);
	background: #fff;
	font-size: 12.5px;
	font-weight: 600;
	color: var(--muted2);
	cursor: pointer;
	white-space: nowrap;
	display: flex;
	align-items: center;
	gap: 6px;
	transition: .15s;
}

.pos-cat-chip:hover {
	border-color: var(--accent);
	color: var(--primary);
}

.pos-cat-chip.active {
	background: var(--primary) !important;
	border-color: var(--primary);
	color: #fff !important;
}

.pos-filter-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 18px 0;
}

.pos-stock-filters {
	display: flex;
	gap: 6px;
}

.pos-sf-btn {
	padding: 5px 11px;
	border-radius: 7px;
	border: 1px solid var(--border);
	background: #fff !important;
	font-size: 11.5px;
	font-weight: 600;
	color: var(--muted2) !important;
	cursor: pointer;
}

.pos-sf-btn.active {
	background: var(--primary-dark) !important;
	color: #fff !important;
	border-color: var(--primary-dark);
}

.pos-sf-btn:hover {
	border-color: var(--accent);
}

.pos-product-area {
	flex: 1;
	overflow-y: auto;
	padding: 14px 18px 18px;
}

.pos-product-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	gap: 12px;
}

.pos-pcard {
	background: var(--surface);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	padding: 14px 12px;
	cursor: pointer;
	position: relative;
	transition: .15s;
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-height: 128px;
}

.pos-pcard:hover {
	border-color: var(--accent);
	transform: translateY(-2px);
	box-shadow: var(--shadow);
}

.pos-pcard.out {
	opacity: .55;
	cursor: not-allowed;
}

.pos-pcard .icon-wrap {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--accent-light);
	color: var(--primary);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
}

.pos-pcard .icon-wrap i {
	color: var(--primary) !important;
}

.pos-pcard .pname {
	font-weight: 700;
	font-size: 13px;
	color: var(--text);
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 34px;
}

.pos-pcard .pcode {
	font-size: 11px;
	color: var(--muted2);
	font-family: monospace;
}

.pos-pcard .pfoot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: auto;
}

.pos-pcard .pprice {
	font-weight: 800;
	color: var(--primary-dark);
	font-size: 14.5px;
}

.pos-stockbadge {
	font-size: 10px;
	font-weight: 700;
	padding: 3px 7px;
	border-radius: 6px;
}

.pos-stockbadge.in {
	background: var(--success-bg);
	color: var(--success);
}

.pos-stockbadge.low {
	background: var(--warning-bg);
	color: var(--warning);
}

.pos-stockbadge.out {
	background: var(--danger-bg);
	color: var(--danger);
}

/* ===== RIGHT: CART ===== */
.pos-right {
	background: var(--surface);
	border-left: 1px solid var(--border);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.pos-customer-strip {
	padding: 14px 16px;
	border-bottom: 1px solid var(--border);
	background: #fafdfe;
}

.pos-customer-row {
	display: flex;
	gap: 8px;
}

.pos-customer-select {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 10px;
	border: 1.5px solid var(--border);
	border-radius: var(--radius);
	padding: 9px 12px;
	cursor: pointer;
	background: #fff;
	transition: .15s;
}

.pos-customer-select:hover {
	border-color: var(--accent);
}

.pos-customer-select .av {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: var(--primary);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	flex: none;
}

.pos-customer-select .info {
	flex: 1;
	min-width: 0;
}

.pos-customer-select .cname {
	font-weight: 700;
	font-size: 13px;
	color: var(--text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.pos-customer-select .ctag {
	font-size: 11px;
	color: var(--muted2);
}

.pos-btn-add-customer {
	width: 38px;
	border: 1.5px solid var(--border);
	background: #fff !important;
	color: var(--primary) !important;
	border-radius: var(--radius);
	cursor: pointer;
	font-size: 14px;
}

.pos-btn-add-customer:hover {
	background: var(--accent-light) !important;
	border-color: var(--accent);
	color: var(--primary-dark) !important;
}

.pos-cart-head {
	padding: 12px 16px 8px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.pos-cart-head h3 {
	margin: 0;
	font-size: 14px;
	font-weight: 800;
	color: var(--primary-dark);
	display: flex;
	align-items: center;
	gap: 7px;
}

.pos-cart-head .count {
	background: var(--accent);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	border-radius: 999px;
	padding: 1px 8px;
}

.pos-clear-btn {
	font-size: 11.5px;
	color: var(--danger) !important;
	font-weight: 600;
	cursor: pointer;
	border: none;
	background: none !important;
	display: flex;
	gap: 5px;
	align-items: center;
}

.pos-clear-btn:hover {
	color: #a82a39 !important;
}

.pos-cart-list {
	flex: 1;
	overflow-y: auto;
	padding: 0 12px;
}

.pos-cart-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: var(--muted2);
	text-align: center;
	padding: 30px;
}

.pos-cart-empty i {
	font-size: 40px;
	margin-bottom: 12px;
	color: var(--border);
}

.pos-citem {
	border: 1px solid var(--border);
	border-radius: 12px;
	padding: 10px 12px;
	margin-bottom: 8px;
	background: #fff;
	border-left: 3px solid var(--accent);
}

.pos-citem.edited {
	border-left-color: var(--warning);
	background: #fffaf0;
}

.pos-citem-top {
	display: flex;
	justify-content: space-between;
	gap: 8px;
}

.pos-citem-name {
	font-weight: 700;
	font-size: 12.5px;
	color: var(--text);
}

.pos-citem-code {
	font-size: 10.5px;
	color: var(--muted2);
	font-family: monospace;
}

.pos-citem-remove {
	border: none;
	background: none !important;
	color: var(--muted2) !important;
	cursor: pointer;
	font-size: 12px;
	padding: 2px;
}

.pos-citem-remove:hover {
	color: var(--danger) !important;
}

.pos-citem-controls {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 8px;
}

.pos-qty-stepper {
	display: flex;
	align-items: center;
	border: 1px solid var(--border);
	border-radius: 8px;
	overflow: hidden;
}

.pos-qty-stepper button {
	border: none;
	background: #fafafa !important;
	width: 24px;
	height: 26px;
	color: var(--primary) !important;
	cursor: pointer;
	font-size: 12px;
}

.pos-qty-stepper button:hover {
	background: var(--accent-light) !important;
}

.pos-qty-stepper input {
	width: 34px;
	border: none;
	text-align: center;
	font-weight: 700;
	font-size: 12.5px;
	padding: 0;
}

.pos-citem-price {
	width: 72px;
}

.pos-citem-price input {
	width: 100%;
	border: 1px solid var(--border);
	border-radius: 7px;
	padding: 4px 6px;
	font-size: 12px;
	text-align: right;
	font-weight: 600;
}

.pos-citem-disc {
	width: 56px;
}

.pos-citem-disc input {
	width: 100%;
	border: 1px solid var(--border);
	border-radius: 7px;
	padding: 4px 6px;
	font-size: 12px;
	text-align: right;
}

.pos-citem-total {
	flex: 1;
	text-align: right;
	font-weight: 800;
	font-size: 13px;
	color: var(--primary-dark);
}

.pos-tiny-label {
	font-size: 9px;
	color: var(--muted2);
	text-transform: uppercase;
	letter-spacing: .4px;
	display: block;
	margin-bottom: 2px;
}

.pos-cart-summary {
	border-top: 1px solid var(--border);
	padding: 10px 16px 12px;
	background: #fafdfe;
}

.pos-sum-row {
	display: flex;
	justify-content: space-between;
	font-size: 12.5px;
	padding: 2px 0;
	color: var(--muted2);
}

.pos-sum-row b {
	color: var(--text);
	font-weight: 600;
}

.pos-sum-row.discount-row b {
	color: var(--danger);
}

.pos-discount-input-row {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 4px 0;
}

.pos-discount-input-row select {
	border: 1px solid var(--border);
	border-radius: 7px;
	font-size: 11px;
	padding: 4px 6px;
}

.pos-discount-input-row input {
	flex: 1;
	border: 1px solid var(--border);
	border-radius: 7px;
	padding: 5px 8px;
	font-size: 12px;
	text-align: right;
}

.pos-sum-total {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	padding: 8px 0 4px;
	margin-top: 2px;
	border-top: 1.5px dashed var(--border);
}

.pos-sum-total .lbl {
	font-weight: 700;
	font-size: 13px;
}

.pos-sum-total .val {
	font-weight: 800;
	font-size: 22px;
	color: var(--primary-dark);
}

/* ---------------------------------------------------------
   PAY BUTTONS
   --------------------------------------------------------- */

.pos-pay-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:8px;
  row-gap:8px;
  margin-top:8px;
}
.pos-pay-btn{
  border:none;
  border-radius:10px;
  padding:11px 8px;
  font-weight:700;
  font-size:12.5px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  transition:transform .15s, box-shadow .15s;
  width:100%;        /* force fill grid cell */
  min-width:0;        /* prevent content from forcing extra width */
  margin:0;            /* kill any inherited Bootstrap/theme button margin */
  box-sizing:border-box;
}
.pos-pay-btn.credit{
  grid-column:1/3;
}

.pos-pay-btn i {
	font-size: 17px;
}

.pos-pay-btn,
.pos-pay-btn:link,
.pos-pay-btn:visited {
	color: #ffffff !important;
}

.pos-pay-btn.cash {
	background: linear-gradient(135deg, #1f9d55, #17b56b) !important;
}

.pos-pay-btn.card {
	background: linear-gradient(135deg, #075363, #1fb3c4) !important;
}

.pos-pay-btn.credit {
	background: linear-gradient(135deg, #8a5a13, #b9790a) !important;
	grid-column: 1/3;
}

.pos-pay-btn.cash:hover,
.pos-pay-btn.cash:focus {
	background: linear-gradient(135deg, #1c8a4b, #14a05f) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(31, 157, 85, .3);
}

.pos-pay-btn.card:hover,
.pos-pay-btn.card:focus {
	background: linear-gradient(135deg, #054a59, #189cab) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(13, 120, 144, .3);
}

.pos-pay-btn.credit:hover,
.pos-pay-btn.credit:focus {
	background: linear-gradient(135deg, #754b0f, #a06b09) !important;
	color: #ffffff !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(185, 121, 10, .3);
}

.pos-pay-btn:disabled,
.pos-pay-btn:disabled:hover {
	opacity: .45;
	cursor: not-allowed;
	transform: none;
	box-shadow: none;
	color: #ffffff !important;
}

/* ===== MODALS ===== */
.pos-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(15, 35, 40, .5);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1050;
	backdrop-filter: blur(2px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .2s ease;
}

.pos-modal-overlay.show {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.pos-modal-box {
	background: #fff;
	border-radius: var(--radius-lg);
	width: 480px;
	max-width: 92vw;
	max-height: 88vh;
	overflow: auto;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .25);
	transform: translateY(14px) scale(.97);
	opacity: 0;
	transition: transform .22s cubic-bezier(.34, 1.4, .64, 1), opacity .2s ease;
}

.pos-modal-overlay.show .pos-modal-box {
	transform: translateY(0) scale(1);
	opacity: 1;
}

.pos-modal-box.wide {
	width: 760px;
}

.pos-modal-box.xwide {
	width: 980px;
}

.pos-modal-header {
	padding: 18px 22px;
	border-bottom: 1px solid var(--border);
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.pos-modal-header h3 {
	margin: 0;
	font-size: 15.5px;
	font-weight: 800;
	color: var(--primary-dark);
	display: flex;
	align-items: center;
	gap: 8px;
}

.pos-modal-header button {
	border: none;
	background: #f1f5f7 !important;
	width: 30px;
	height: 30px;
	border-radius: 8px;
	cursor: pointer;
	color: var(--muted2) !important;
}

.pos-modal-header button:hover {
	background: #e6edf0 !important;
	color: var(--text) !important;
}

.pos-modal-body {
	padding: 20px 22px;
}

.pos-modal-footer {
	padding: 14px 22px;
	border-top: 1px solid var(--border);
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}

.pos-form-group {
	margin-bottom: 14px;
}

.pos-form-group label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: var(--muted2);
	margin-bottom: 5px;
	text-transform: uppercase;
	letter-spacing: .3px;
}

.pos-form-control {
	width: 100%;
	padding: 10px 12px;
	border: 1.5px solid var(--border);
	border-radius: 9px;
	font-size: 13.5px;
	background: #fafdfd;
}

.pos-form-control:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px rgba(31, 179, 196, .14);
}

.pos-form-row {
	display: flex;
	gap: 12px;
}

.pos-form-row .pos-form-group {
	flex: 1;
}

.pos-btn {
	padding: 9px 17px !important;
	border-radius: 9px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	cursor: pointer !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	line-height: 1.3 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	background-color: transparent !important;
	background-image: none !important;
}

.pos-btn,
.pos-btn:hover,
.pos-btn:focus,
.pos-btn:active,
.pos-btn:visited {
	opacity: 1 !important;
	visibility: visible !important;
	outline: none !important;
}

.pos-btn::before,
.pos-btn::after {
	display: none !important;
	content: none !important;
}

.pos-btn-primary {
	border: 2px solid var(--primary) !important;
	background-color: transparent !important;
	background-image: none !important;
	color: var(--primary) !important;
}

.pos-btn-primary:hover,
.pos-btn-primary:focus,
.pos-btn-primary:active {
	border: 2px solid var(--primary) !important;
	background-color: var(--primary) !important;
	background-image: none !important;
	color: #ffffff !important;
}

.pos-btn-secondary {
	border: 2px solid #e6edf0 !important;
	background-color: #f1f5f7 !important;
	background-image: none !important;
	color: var(--muted2) !important;
}

.pos-btn-secondary:hover,
.pos-btn-secondary:focus {
	border: 2px solid #d8e1e4 !important;
	background-color: #e6edf0 !important;
	background-image: none !important;
	color: var(--text) !important;
}

.pos-btn-success {
	border: 2px solid var(--success) !important;
	background-color: transparent !important;
	background-image: none !important;
	color: var(--success) !important;
}

.pos-btn-success:hover,
.pos-btn-success:focus {
	border: 2px solid var(--success) !important;
	background-color: var(--success) !important;
	background-image: none !important;
	color: #ffffff !important;
}

.pos-btn-block {
	width: 100%;
	justify-content: center;
}

.pos-cust-search-wrap {
	position: relative;
	margin-bottom: 12px;
}

.pos-cust-search-wrap i,
.pos-cust-search-wrap svg {
	position: absolute !important;
	left: 12px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	color: var(--muted2);
	width: 14px;
	height: 14px;
	display: inline-block;
	margin: 0 !important;
	pointer-events: none;
}

.pos-cust-search-wrap input {
	padding-left: 36px;
}

.pos-cust-list {
	max-height: 260px;
	overflow-y: auto;
	border: 1px solid var(--border);
	border-radius: 10px;
}

.pos-cust-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-bottom: 1px solid var(--border);
	cursor: pointer;
}

.pos-cust-row:last-child {
	border-bottom: none;
}

.pos-cust-row:hover {
	background: var(--accent-light);
}

.pos-cust-row .av {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--primary);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 12px;
	flex: none;
}

.pos-cust-row .info b {
	display: block;
	font-size: 13px;
}

.pos-cust-row .info span {
	font-size: 11.5px;
	color: var(--muted2);
}

.pos-cash-customer-row {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px;
	background: var(--accent-light);
	border-radius: 10px;
	margin-bottom: 12px;
	cursor: pointer;
	border: 1.5px solid var(--accent);
}

.pos-cash-customer-row i {
	font-size: 18px;
	color: var(--primary);
}

.pos-bill-summary-box {
	background: var(--accent-light);
	border-radius: 12px;
	padding: 16px;
	text-align: center;
	margin-bottom: 18px;
}

.pos-bill-summary-box .lbl {
	font-size: 11.5px;
	color: var(--primary-dark);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .4px;
}

.pos-bill-summary-box .amt {
	font-size: 32px;
	font-weight: 800;
	color: var(--primary-dark);
	margin-top: 2px;
}

.pos-quick-cash-row {
	display: flex;
	gap: 6px;
	margin-top: 8px;
}

.pos-quick-cash-btn {
	flex: 1;
	padding: 8px;
	border: 1px solid var(--border);
	background: #fff !important;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
	color: var(--primary-dark) !important;
}

.pos-quick-cash-btn:hover {
	background: var(--accent-light) !important;
}

.pos-balance-line {
	display: flex;
	justify-content: space-between;
	padding: 12px;
	background: var(--success-bg);
	border-radius: 9px;
	margin-top: 12px;
	font-weight: 700;
	color: var(--success);
}

.pos-balance-line.due {
	background: var(--danger-bg);
	color: var(--danger);
}

.pos-disc-tag {
	font-size: 10px;
	background: var(--accent-light);
	color: var(--primary-dark);
	padding: 1px 6px;
	border-radius: 5px;
	font-weight: 700;
}

.pos-bills-toolbar {
	display: flex;
	gap: 10px;
	margin-bottom: 14px;
}

.pos-status-chip {
	font-size: 10.5px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 6px;
}

.pos-status-chip.paid {
	background: var(--success-bg);
	color: var(--success);
}

.pos-status-chip.credit {
	background: var(--warning-bg);
	color: var(--warning);
}

.pos-status-chip.returned {
	background: var(--danger-bg);
	color: var(--danger);
}

.pos-row-actions {
	display: flex;
	gap: 6px;
}

.pos-row-actions button {
	border: 1px solid var(--border);
	background: #fff !important;
	border-radius: 7px;
	width: 28px;
	height: 28px;
	cursor: pointer;
	color: var(--muted2) !important;
}

.pos-row-actions button:hover {
	color: var(--primary) !important;
	border-color: var(--accent);
}

.pos-kbd {
	display: inline-block;
	background: #f1f5f7;
	border: 1px solid var(--border);
	border-radius: 5px;
	padding: 1px 6px;
	font-size: 10.5px;
	font-family: monospace;
	color: var(--muted2);
}

@media (max-width:1100px) {
	.pos-app {
		grid-template-columns: 1fr 340px;
	}
}