/* MVC adapters for the existing member components. */
.native-enrollment .member-register-form{display:block}
.native-enrollment .figma-f03-header{background:var(--mak-header-gradient,var(--mak-green,#076837))}
html[data-company=ATC] .native-enrollment .figma-f03-header{background:linear-gradient(110deg,#00195c,#2268cf)}
html[data-company=MEPES] .native-enrollment .figma-f03-header{background:#017b56}
.native-enrollment .member-register-form .figma-f03-input{height:50px;font-size:14px}
.native-enrollment .password-control .figma-f03-input{padding-right:52px}
.native-enrollment .password-control .password-toggle{background:transparent;color:#64748b;padding:0}
.native-enrollment .member-register-form .btn-figma-f03-submit{width:100%;border:0}
html[data-company=ATC] .member-register-form .btn-figma-f03-submit{background:linear-gradient(110deg,#00195c,#2879e5)}
.native-enrollment .figma-f03-terms-row{margin:16px 0;font-size:13px}
.member-main .f17-form{display:block;margin:0}
.member-main .order-review-quantity{width:52px;padding:0;border:0;background:transparent;text-align:center;-moz-appearance:textfield}
.member-main .order-review-quantity::-webkit-inner-spin-button{appearance:none}
.dealer-order-line-item.is-removed .order-line-name{text-decoration:line-through;opacity:.55}
.order-line-btn-remove{position:relative;min-height:36px;font-size:12px;gap:5px;white-space:nowrap}
.order-line-btn-remove .bi{font-size:16px;line-height:1;flex-shrink:0}
.order-line-btn-remove .order-restore-icon,.order-line-btn-remove input:checked~.order-remove-icon{display:none}
.order-line-btn-remove input:checked~.order-restore-icon{display:inline-block}
.order-line-btn-remove:has(input:checked){background:#eef2ff;border-color:#c7d2fe;color:var(--mak-green,#087436)}
.order-line-btn-remove:focus-within{outline:2px solid var(--mak-green,#087436);outline-offset:3px}
.member-push-settings{margin:16px;padding:16px;font-size:14px}
.member-push-settings h2{font-size:16px;margin-bottom:12px}
.member-push-settings .point-action{font-size:14px;padding:12px 16px;min-height:44px}
.dealer-stock-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.dealer-stock-heading h2{margin:0}
.dealer-stock-arrows{display:flex;gap:6px;flex-shrink:0}
.dealer-stock-arrows .dealer-stock-switch{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:12px;background:var(--mak-green,#087436);color:#fff;cursor:pointer}
.dealer-stock-arrows button:disabled{opacity:.3;cursor:default}
.dealer-stock-viewport{width:100%;background:#fff;margin-bottom:20px}
.dealer-stock-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0}
.dealer-stock-table th{font-size:12px;font-weight:600;padding:4px 0 10px;color:#475569}
.dealer-stock-table .dealer-stock-metric{width:88px;text-align:center;border-left:1px solid #cbd5e1}
.dealer-stock-table td{vertical-align:top;padding:14px 0}
.dealer-stock-product{display:flex;align-items:center;gap:10px;padding-right:10px;color:inherit;text-decoration:none}
.dealer-stock-product:focus-visible{outline:2px solid var(--mak-green);outline-offset:2px;border-radius:4px}
.dealer-stock-image{width:48px;height:64px;object-fit:contain;flex-shrink:0}
.dealer-stock-placeholder{display:grid;place-items:center;color:#94a3b8;font-size:24px}
.dealer-stock-description{min-width:0;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.dealer-stock-description strong{display:block;color:#0f172a;font-weight:650}
.dealer-stock-description .product-group-tag{display:inline-block;margin-top:6px;font-size:11px;max-width:100%}
.dealer-stock-unit-points,.dealer-stock-no-points{display:block;margin-top:5px;font-size:12px;line-height:1.35;color:var(--mak-green,#087436)}
.dealer-stock-no-points{color:#64748b}
.dealer-stock-quantity{font-size:16px;font-weight:700;color:#334155;font-variant-numeric:tabular-nums}
.dealer-stock-quantity.is-empty{color:#dc2626}
.dealer-stock-page [hidden]{display:none!important}
.stock-history-back{display:inline-flex;align-items:center;gap:5px;margin-bottom:16px;font-size:13px;font-weight:600;color:var(--mak-green)}
.stock-history-product{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:16px}
.stock-history-product-info{min-width:0;overflow-wrap:anywhere}.stock-history-product h1{font-size:17px;font-weight:750;line-height:1.4;margin:0 0 5px}.stock-history-product-info>small{display:block;font-size:12px}
.stock-history-balance{display:flex;justify-content:space-between;gap:12px;margin:14px 0 22px;font-size:14px}.stock-history-balance strong{color:var(--mak-green);font-size:19px;font-variant-numeric:tabular-nums}
.stock-history-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.stock-history-heading h2{font-size:16px;font-weight:750;margin:0}.stock-history-heading>span{font-size:11px;color:#64748b}
.stock-history-list{display:grid;gap:12px}.stock-movement{min-width:0;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;overflow-wrap:anywhere}
.stock-movement-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 10px;font-size:14px}.stock-movement-heading time{font-size:11px;color:#64748b}
.stock-movement-reference{font-size:12px;margin:8px 0;color:#475569}.stock-movement-reference a{font-weight:650;color:var(--mak-green)}
.stock-movement-quantities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 0;padding-top:10px;border-top:1px solid #f1f5f9;text-align:center}.stock-movement-quantities dt{font-size:11px;color:#64748b;font-weight:500}.stock-movement-quantities dd{margin:4px 0 0;font-size:16px;font-weight:750;font-variant-numeric:tabular-nums}.stock-movement-in{color:#087436}.stock-movement-out{color:#dc2626}
.stock-movement-unit{display:block;font-size:11px;color:#64748b;margin-top:10px}.stock-movement-note{font-size:12px;color:#64748b;margin:8px 0 0;white-space:pre-wrap}
.stock-history-paging{display:flex;justify-content:space-between;gap:12px;margin:18px 0}.stock-history-paging a{font-size:13px;font-weight:650;color:var(--mak-green);padding:8px 0}
.member-tier-current{padding:18px 20px;margin-bottom:20px}.member-tier-heading{display:flex;justify-content:space-between;align-items:start;gap:12px}.member-tier-heading span{font-size:11px;font-weight:700;color:var(--mak-green)}.member-tier-heading h2{font-size:26px;font-weight:800;margin:4px 0;color:var(--mak-green)}.member-tier-heading>strong{font-size:14px}.member-tier-progress{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden;margin:14px 0 6px}.member-tier-progress>div{height:100%;background:#f59e0b;border-radius:inherit}.member-tier-scale{display:flex;justify-content:space-between;color:#94a3b8;font-size:12px}.member-tier-current p{font-size:13px;font-weight:700;color:var(--mak-green);margin:10px 0 0}.member-tier-title{font-size:15px;font-weight:800;margin-bottom:12px}.member-tier-row{padding:14px 16px;display:flex;align-items:center;gap:14px;margin-bottom:10px}.member-tier-row strong{font-size:14px}.member-tier-row small{display:block;font-size:12px;color:#64748b;margin-top:2px}.member-tier-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;font-size:14px;font-weight:800;background:#f1f5f9;color:#64748b}.member-tier-icon.gold{background:#fef3c7;color:#d97706}.member-tier-icon.diamond{background:#e0f2fe;color:#0284c7}.member-tier-active{margin-left:auto;font-size:13px;font-weight:700;color:var(--mak-green)}


/* PWA ticket-detail card parity */
.ui-card {
  border: 1px solid var(--mak-line, #e8ebe7);
  border-radius: var(--radius-md, 16px);
  background: var(--mak-card, #ffffff);
  box-shadow: var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, 0.05));
}
.ticket-detail {
  display: grid;
  gap: 12px;
  padding: 22px 18px;
  text-align: center;
}
.ticket-detail-code {
  font-size: clamp(30px, 9vw, 40px);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: .5px;
  color: var(--mak-green-dark, #086b3e);
  overflow-wrap: anywhere;
}
.ticket-detail-tag {
  justify-self: center;
  padding: 6px 14px;
  border-radius: 999px;
  background: var(--mak-green-soft, #e6f6ee);
  color: var(--mak-green-dark, #086b3e);
  font-size: 13px;
  font-weight: 700;
}
.dealer-eyebrow {
  color: var(--mak-green, #087838);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
}
.ticket-detail-rows {
  text-align: left;
}
.ticket-detail-rows .dealer-detail-row + .dealer-detail-row {
  border-top: 1px solid #f0f3f1;
}
.ticket-detail-round-row {
  align-items: flex-start;
  gap: 12px;
}
.ticket-detail-rounds {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  text-align: right;
}
.ticket-detail-rounds em {
  display: inline-block;
  margin-left: 4px;
  padding: 1px 8px;
  border-radius: 999px;
  background: var(--mak-green-soft, #e6f6ee);
  font-size: 11px;
  font-style: normal;
}
.ticket-detail-notice {
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff8e1;
  color: #5f4b00;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
}
.point-action-outline {
  background: #ffffff;
  color: var(--mak-green-dark, #087838);
  border: 1px solid var(--mak-green-dark, #087838);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  font-weight: 700;
  text-decoration: none;
}
.point-action-outline:hover:not(:disabled),
.point-action-outline:active:not(:disabled) {
  background: var(--mak-green-soft, #e8f5ed);
  color: var(--mak-green-dark, #087838);
  border-color: var(--mak-green-dark, #087838);
}


/* Unified larger menu icons for Dealer & Farmer Account */
.dealer-menu-icon {
  display: grid;
  place-items: center;
  flex: none;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--mak-green-soft, #e5f2e9);
  color: var(--mak-green-dark, #076837);
  font-size: 22px;
}
.dealer-menu-icon i {
  font-size: 22px;
  line-height: 1;
}
.dealer-menu-icon-red {
  background: #fdeeea !important;
  color: #c0392b !important;
}
.point-history-link {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 56px;
  padding: 12px 16px;
}
.point-history-link > span:nth-child(2) {
  font-size: 14px;
  font-weight: 700;
  color: var(--mak-green-dark, #0f172a);
}

.menu-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 22px;
  flex: 0 0 auto;
}
.menu-icon-wrap i {
  font-size: 22px;
  line-height: 1;
}
.menu-icon-wrap.text-emerald {
  background: var(--mak-green-soft, #e6f7ef);
  color: var(--mak-green-dark, #0d824d);
}
.menu-icon-wrap.text-danger {
  background: #fee2e2;
  color: #dc2626;
}
.figma-menu-row {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 56px;
  padding: 12px 16px;
}
