@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700;800&display=swap');
  #pos-table {
    font-family: 'Poppins', sans-serif;
  }

  /* ── WRAPPER ── */
  #pos-table {
    max-width: 100%;
    margin: 0 auto;
  }

  /* ── SCROLL CONTAINER (mobile swipe) ── */
  #pos-table .pt-scroll-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #d4b84a #f2f2f0;
  }
  #pos-table .pt-scroll-wrap::-webkit-scrollbar { height: 4px; }
  #pos-table .pt-scroll-wrap::-webkit-scrollbar-track { background: #f2f2f0; }
  #pos-table .pt-scroll-wrap::-webkit-scrollbar-thumb { background: #d4b84a; border-radius: 2px; }

  /* ── TABLE ── */
  #pos-table table {
    width: 100%;
    min-width: 700px;
    border-collapse: separate;
    border-spacing: 0;
    background: #fff;
    overflow: hidden;
    border: 2px solid rgba(248, 248, 248, 1);
    box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.05);
}

  /* ── HEADER ROW ── */
  #pos-table thead tr th {
    padding: 0;
    vertical-align: bottom;
    font-weight: 700;
    font-size: 14px;
    color: #1a1a1a;
    background: #fff;
    border-bottom: 2px solid #f0ede6;
  }

  #pos-table thead tr th.pt-label-col {
    width: 160px;
    padding: 20px 20px 16px;
    text-align: left;
    color: #888;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  #pos-table thead tr th.pt-prod-col {
    padding: 16px 12px 16px;
    text-align: left;
    vertical-align: top;
  }

  #pos-table thead tr th.pt-prod-col .pt-img-wrap {
    width: 100%;
    height: 130px;
    overflow: hidden;
    border-radius: 10px;
    margin-bottom: 14px;
    background: #e8e5de;
  }

  #pos-table thead tr th.pt-prod-col .pt-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  #pos-table thead tr th.pt-prod-col .pt-prod-name {
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;
    color: #1a1a1a;
  }

  /* ── BODY ROWS ── */
  #pos-table tbody tr {
    transition: background 0.15s;
  }
  #pos-table tbody tr:nth-child(odd) { background: #faf9f7; }
  #pos-table tbody tr:nth-child(even) { background: #fff; }
  #pos-table tbody tr:hover { background: #f5f2eb; }

  #pos-table tbody td {
    padding: 14px 20px;
    vertical-align: top;
    border-bottom: 1px solid #f0ede6;
    font-size: 13px;
    line-height: 1.5;
    color: #444;
  }

  #pos-table tbody tr:last-child td { border-bottom: none; }

  /* label column */
  #pos-table tbody td.pt-label {
    width: 160px;
    font-weight: 700;
    font-size: 13px;
    color: #1a1a1a;
    white-space: nowrap;
  }

  /* product cells */
  #pos-table tbody td.pt-cell {
    width: 200px;
  }

  /* ── STARS ── */
  #pos-table .pt-stars {
    display: flex;
    gap: 2px;
    margin-bottom: 6px;
  }
  #pos-table .pt-stars span {
    font-size: 14px;
    color: #e0d5c0;
  }
  #pos-table .pt-stars span.filled {
    color: #d4a017;
  }


  /* ── MOBILE HINT ── */
  #pos-table .pt-swipe-hint {
    display: none;
    text-align: center;
    font-size: 11px;
    color: #aaa;
    margin-bottom: 10px;
    letter-spacing: 0.04em;
  }
  #pos-table .pt-swipe-hint svg { vertical-align: middle; margin: 0 4px; }

  @media (max-width: 720px) {
    #pos-table .pt-swipe-hint { display: block; }
    #pos-table tbody td.pt-label { white-space: normal; }
    #pos-table thead tr th.pt-label-col { width: 120px; }
    #pos-table thead tr th.pt-prod-col { min-width: 180px; }
  }