


       /* General Reset */

        /* ใช้ @font-face เพื่อโหลดฟอนต์ Kanit จากไฟล์ที่เก็บในเครื่อง */
        @font-face {
            font-family: 'Kanit';
            src: url('https://vsiam.fastcart.co.th/assets/backoffice/font/Kanit-Regular.ttf') format('truetype');
            font-weight: normal;
            font-style: normal;
        }

        @font-face {
            font-family: 'Kanit';
            src: url('https://vsiam.fastcart.co.th/assets/backoffice/font/Kanit-Bold.ttf') format('truetype');
            font-weight: bold;
            font-style: normal;
        }

        @font-face {
            font-family: 'Kanit';
            src: url('https://vsiam.fastcart.co.th/assets/backoffice/font/Kanit-Italic.ttf') format('truetype');
            font-weight: normal;
            font-style: italic;
        }

        /* กำหนดฟอนต์ที่ใช้ */

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        /* Body Styling */
        body {
            font-family: 'Kanit', sans-serif;
            background-color: #215f39;
            color:#1c1717;
            line-height: 1.6;
            padding: 5px;
            font-size: 0.8rem; /* ลดขนาดฟอนต์พื้นฐานของหน้าเว็บ */
        }
        
        /* Container Styling */
        .container {
            max-width: 600px;
            margin: 0 auto;
            background: #efecc2;/*#fff;*/
            padding: 20px;
            border-radius: 8px;
            box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        }

            .rowdata {
    display: block;
}


/* new policy */
.policy-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999}
.policy-modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999}
.policy-dialog{background:#fff;max-width:600px;width:90%;padding:20px;border-radius:12px;position:relative}
.policy-close{position:absolute;right:12px;top:10px;font-size:22px;cursor:pointer;background:none;border:0}
.policy-body{max-height:40vh;overflow:auto;margin:15px 0;line-height:1.6}
.policy-ack{display:flex;gap:6px;align-items:center;margin-bottom:12px}
.policy-actions{text-align:right}
.noscroll{overflow:hidden}
/* new policy */

    
/* popup address */
.popup-modal {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-color: rgba(0,0,0,0.5);
  z-index: 9999;
}

.popup-content {
  background-color: #fff;
  margin: 15% auto;
  padding: 20px;
  border-radius: 8px;
  width: 90%;
  max-width: 500px;
}
.close-btn {
  float: right;
  cursor: pointer;
  font-size: 20px;
}
#address-list li {
  padding: 10px;
  border-bottom: 1px solid #ccc;
  cursor: pointer;
}
#address-list li:hover {
  background-color: #f0f0f0;
}

.popup-modal.show {
  display: block;
}
/* popup address */
        
/* serchr ใหม่ */



.rds {
        position: relative;
    left: 50%;
    transform: translateX(-50%);
    
    display: flex;
    width: 100%;
    max-width: 380px;
    border-radius: 15px;
    border: 1px solid #ccc;
    margin-top: 2px;
    margin-bottom: 2px;
}

.rds-container {
    display: flex;
    flex-direction: column;
    /* ลด gap หาก Dropdown และ Search Box ชิดกันเกินไป */
    gap: 0px; /* ปรับเป็น 0 หรือน้อยลงเพื่อให้ Dropdown กับ Search Box ดูติดกันเป็นชุด */
     
        
    width: 100%;
}

/* Search Box Container: รวม Dropdown และ Textbox */
.search-box-container {
    display: flex;
  
    gap: 0; /* หรือ 5px หากต้องการช่องว่างเล็กน้อย */
    width: 100%; /* ให้ใช้ความกว้างเต็มที่ */
    border: 1px solid #ccc; /* กรอบสีดำรอบ Dropdown + Textbox */
    border-radius: 5px; /* มุมโค้งมน */
    background-color: #fff;
    /*box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);*/
    padding: 0; /* ลบ padding ออกจาก container เพราะจะไปใส่ใน Dropdown และ Wrapper แทน */
    overflow: hidden; /* ซ่อนส่วนที่เกินขอบ เช่น มุมโค้งมน */
}


/* Styling for the new Dropdown (Select Box) */
.search-type-dropdown {
    -webkit-appearance: none; /* ลบสไตล์เริ่มต้นของเบราว์เซอร์สำหรับ Dropdown */
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    border: none; /* ลบเส้นขอบ เพราะ search-box-container มีขอบแล้ว */
    padding: 8px 12px; /* Padding ด้านใน Dropdown */
    font-size: 0.9rem;
    color: #333;
    cursor: pointer;
    outline: none;
    border-right: 1px solid #ccc; /* เส้นแบ่งระหว่าง Dropdown กับช่องค้นหา */
    border-radius: 10; /* ไม่มีมุมโค้งมนที่ Dropdown เพราะ container มีแล้ว */
    flex-shrink: 0; /* ป้องกันไม่ให้ Dropdown หดตัวมากเกินไป */
    width: auto; /* ให้ความกว้างตามเนื้อหา */
}

/* Arrow for the dropdown (custom styling) */
.search-type-dropdown::-ms-expand {
    display: none; /* สำหรับ IE/Edge */
}
.search-type-dropdown {
    background-image: url('data:image/svg+xml;utf8,<svg fill='%23333333' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>');
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 16px;
    padding-right: 30px; /* เพิ่ม padding ด้านขวาเพื่อไม่ให้ข้อความทับลูกศร */
    border-radius: 10px;
}


/* Search Input Wrapper (ส่วนของไอคอนและช่องพิมพ์) */
.search-input-wrapper {
    display: flex;
    align-items: center;
    flex-grow: 1; /* ให้ช่อง input ขยายเต็มพื้นที่ที่เหลือ */
    border: none; /* ลบเส้นขอบ เพราะ search-box-container มีขอบแล้ว */
    background-color: transparent; /* ทำให้โปร่งใส */
    padding: 8px 15px; /* เพิ่ม padding ด้านข้าง */
    border-radius: 20px;
}

.search-icon {
    color: #555;
    margin-right: 10px;
    font-size: 1rem;
}

.search-input {
    flex-grow: 1;
    border: none;
    outline: none;
    font-size: 0.9rem;
    padding: 0;
    background-color: transparent;
    color: #333;
}

.search-input::placeholder {
    color: #aaa;
    font-style: italic;
}

/* ser */


        /* show qr */

        
        /* Header Styling */
        .header {
            text-align: center;
            padding: 0;
            border-radius: 8px;
            overflow: hidden;
            height: 100px;
        }
            .container {
    max-width: 600px;
    margin: 0 auto;
    background: #efecc2; /*#fff;*/
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
    
.container {
    max-width: 600px;
    margin: 0 auto;
    background: #efecc2; /*#fff;*/
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.red-container {
    

    width: 100%; /* เต็มพื้นที่ภายใน container */
    height: 100px;
    background-color: #d6b45a; /* พื้นหลังสีแดง */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
}

.red-container .imagelogo {
    
    border-radius: 8px;
    display: block !important;
}

 
         
.showqr {
    max-width: 360px;
    margin: 40px auto;
    padding: 24px 20px;
    background-color: #f7fdfb;
    border: 1px solid #cce5dc;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 4px 10px rgba(0,0,0,0.08);
     
}

.qr-text {
    font-size: 24px;
    font-weight: 500;
    color: #2e6652;
    margin-bottom: 15px;
}

.showqr img {
    width: 160px;
    height: auto;
    border-radius: 20px;
    border: 1px solid #ccc;
}
        /* show qr */
        

 /* ส่วน Pop-up */
.popup {
    position: absolute;
    background-color: rgba(251, 241, 241, 0.97);
    padding: 10px;
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 10px;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
    max-width: 90vw;
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
    width: auto;
    /*
    min-width: 200px;
    width: 220px;
    height: 180px;
    */
    min-width: 250px;
    width: 270px;
    height: 220px;
    
}


.popup-close {
    position: absolute;
    top: 6px;
    right: 6px;
    background: none;
    border: none;
    font-size: 20px;
    color: #333;
    cursor: pointer;
}

.popup-close:hover {
    color: red;
}

.popup.show {
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
}

.popup-images {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 200px;/*  150 */
}

.popup-image {
        /*
    max-width: 150px;
    max-height: 150px;
        */

    max-width: 200px;
    max-height: 200px;
    object-fit: cover;
    border-radius: 8px;
    transition: transform 0.3s ease;
}

.popup-nav-btn {
    background-color: rgba(100, 100, 100, 0.6);
    color: white;
    border: none;
    font-size: 20px;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s;
}

.popup-nav-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.popup-nav-btn:hover:not(:disabled) {
    background-color: rgba(0, 0, 0, 0.8);
}



        #dura-countdown-area.dura-countdown-container {
    position: fixed;
    bottom: 1px;
    left: 50%;
    max-width: 600px;
    transform: translateX(-50%);
    background-color: #FF5722;
    color:rgb(255, 255, 255);
    padding: 20px 50px;
    font-weight: bold;
    font-size: 18px;
    border-radius: 8px 8px 8px 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    z-index: 9999;
    display: block;
    text-align: center;
    width: 100%;
   
}

#dura-countdown-area.dura-hidden {
    display: none;
}


/* จัดให้กล่อง alert อยู่ตรงกลางหน้าจอ */
.alertcss {
    display: flex;
    flex-direction: column;
    align-items: center; /* เปลี่ยนเป็น center หรือ stretch เพื่อให้ลูกอยู่ตรงกลางหรือยืดเต็ม */
    border: 1px solid #ddd;
    padding: 30px 40px;
    border-radius: 10px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);

    /* --- เพิ่มตรงนี้เพื่อจำกัดความกว้างของ control หลัก --- */
    width: 95%; /* หรือกำหนดเป็นค่าคงที่ เช่น 400px */
    max-width: 550px; /* จำกัดความกว้างสูงสุด */
    margin: 0 auto; /* จัดกึ่งกลางหน้าจอ */
}

/* ข้อความแต่ละบรรทัด */

.alertcssrow {
         display: flex;
  flex-direction: column; /* Stacks rows vertically */
  align-items: flex-start; /* Aligns rows to the start, preventing them from stretching */
  max-width: 95%;
  box-sizing: border-box; /* ป้องกัน padding ทำให้กว้างเกิน */
   margin-bottom: 20px;
    font-size: 16px;
    color: #333;
}

/* ลิงก์ให้ดูเป็นปุ่ม */
.alertcssrow a {
    background-color: #007bff;
    color: white;
    padding: 12px 24px;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s ease;
    display: inline-block; /* ทำให้สามารถกำหนด padding/margin ได้ */

    /* --- เพิ่ม 2 บรรทัดนี้ --- */
    word-wrap: break-word;   /* สำหรับเบราว์เซอร์เก่า */
    overflow-wrap: break-word; /* สำหรับเบราว์เซอร์ใหม่และแนะนำ */
    /* ----------------------- */

    /* --- และตรวจสอบความกว้างของลิงก์ --- */
    max-width: 100%; /* ทำให้ลิงก์ไม่เกิน 100% ของ parent (alertcssrow) */
    box-sizing: border-box; /* สำคัญถ้ามี padding/border */
}

.alertcssrow a:hover {
    background-color: #0056b3;
}



.search-box {
    margin-bottom: 1rem;
}

.search-container {
    display: flex;
    align-items: center;
    max-width: 100%;
    width: 100%;
    position: relative;
    box-sizing: border-box;
    padding: 8px;
}

.search-container input[type='text'] {
    flex: 1;
    padding: 8px 12px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 4px 0 0 4px;
    outline: none;
}

.search-container .search-button {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 8px 12px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 0 4px 4px 0;
    transition: background-color 0.3s ease;
}

.search-container .search-button:hover {
    background-color: #0056b3;
}

/* ปรับความกว้างเฉพาะ input แต่ละช่อง */
#productSearch {
    flex: 2; /* กว้างสุด */
    min-width: 150px;
}

#productSPrice {
    flex: 1;
    min-width: 80px;
}

#productSDispno {
    flex: 1;
    min-width: 80px;
}

.load-more-btn {
    display: inline-block; /* หรือ block ก็ได้ */
    margin: 20px 0 20px 0; /* บน-ขวา-ล่าง-ซ้าย */
    padding: 5px 10px;
    background-color: rgb(151, 170, 155);
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 12px;
}
.load-more-btn:hover {
    background-color:rgb(77, 141, 91);
}


        /* 4. ตัวอย่างเพิ่มเติม: สามารถปรับตำแหน่งของกรอบสีน้ำเงินได้ */
        .blue-area.left {
            left: 0; /* ย้ายไปทางซ้าย */
        }
        .blue-area.right {
            right: 0; /* ย้ายไปทางขวา */
        }


        /* select item รายการ item ที่เลือก */
       
.selected-item-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    border-bottom: 1px solid #ddd;
    background-color: #f9f9f9;
    margin-bottom: 5px;
    border-radius: 6px;
}

.selected-item-info {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}

.selected-item-image {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border-radius: 4px;
}

.selected-item-name {
    font-size: 14px;
    /*font-weight: bold;*/
}

.selected-item-qty-price {
    font-size: 12px;
    color: #555;
}

.selected-item-remove {
    cursor: pointer;
    color: red;
    font-size: 18px;
    margin-left: 10px;
}

        /* จบรายการ item ที่เลือก */
        
        /* Promotion Section */
        .promotion {
            margin-top: 5px;
            
        }
        
        .promotion h3 {
            display : flex;
            font-size: 1rem; /* ลดขนาดฟอนต์หัวข้อ */
            margin-bottom: 5px;
            background-color:#65440b;/* #f5f5f5;*/
            padding: 8px;
            border-radius: 20px;
            color:#ffffff;
             
        }
            h3 .sortdata{
                margin-left:auto;           /* ชิดขวา */
                display:flex;
                align-items:center;
                min-width:0;
                border-radius: 8px;
                font-size:12px;
            }
            .sort-type-dropdown{
                 border-radius: 8px;
                font-size:12px;
                color:rgb(129, 123, 123);
                font-family: 'Kanit';
                }
        
        .product-list {
            display: flex;
            flex-direction: column;
            gap: 20px;
             
        }

        .mainp {
          
            display: flex;             /* ใช้ Flexbox เพื่อจัดวางลูกๆ (.product และ .setqtystock) ในแถวเดียวกัน */
            align-items: flex-start;   /* จัดให้ลูกๆ เริ่มต้นจากด้านบนของ container (เพื่อให้ส่วนบนของ product และ setqtystock อยู่แนวเดียวกัน) */
           flex-direction: column;
            justify-content: space-between; /* ดัน .product ไปทางซ้าย และ .setqtystock ไปทางขวา โดยมีพื้นที่ว่างระหว่างกัน */
            width: 100%;               /* ให้ mainp กินพื้นที่ความกว้างทั้งหมดที่มี */
           /* flex-wrap: wrap;           /* สำคัญ: ถ้าหน้าจอแคบ ให้ลูกๆ ขึ้นบรรทัดใหม่ได้ (สำหรับ Responsive) */
            /* ** คุณอาจต้องการเพิ่ม padding, border, margin-bottom, background-color, box-shadow ที่นี่ 
            ถ้าคุณต้องการให้มันครอบคลุมทั้ง product และ setqtystock และไม่มีใน CSS เดิมของคุณ ** */
        }
        

        /* slice image รูปแรก fastcart
        .image-slider-wrapper {
        position: relative;
        display: inline-block;
        width: 250px;
        }

.product-image-large {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

/* ปุ่มลูกศร */.image-slider-wrapper {
  position: relative;
  width: 250px;
  height: auto;
  display: inline-block;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(107, 106, 106, 0.15);
}

.product-image-large {
  width: 100%;
  display: block;
  border-radius: 8px;
}

/* ปุ่มลูกศร */
.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 28px;
  color: white;
  background-color: rgba(88, 88, 88, 0.4);
  border: none;
  padding: 6px 10px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 1;
  transition: background-color 0.3s ease;
    width: 30px;        /* ✅ ขนาดวงกลม: ปรับใหญ่ขึ้นได้ */
  height: 30px;
  font-size: 12px;    /* ✅ ขนาดหัวลูกศร */
}

.arrow:hover {
  background-color: rgba(137, 137, 137, 0.7);
}

.arrow-left {
  left: 3px; /* ติดขอบซ้าย */
}

.arrow-right {
  right: 3px; /* ติดขอบขวา */
}

.arrow:disabled {
  opacity: 0.3;
  cursor: default;
}


        /* slice image รูปแรก fastcart

.special-product {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}

/* รูปอยู่กลางหน้าจอ */
.product-image-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  padding: 10px 0;
}

/* รูปภาพใหญ่ */
.product-image-large {
  max-width: 100%;
  height: auto;
  display: block;
}

/* กล่องข้อมูลสินค้า */
.product-info-special {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;

  width: 100%;
  max-width: 600px;
  margin: 0;
  padding: 0 5px;
}

/* ราคาสินค้า */
.opricegroup-top {
  display: flex;
  flex-wrap: wrap;
   
  align-items: center;
  margin: 5px 0;
}

.opricegroup-top p {
   
  font-size: 14px;
}

.special-ssdr {
  display: flex;
  flex-wrap: wrap;         /* ถ้าไม่ต้องการให้ตัดบรรทัดเลย ให้ใช้ wrap: nowrap */
  gap: 5px;               /* ระยะห่างระหว่าง select */
  margin: 2px 0;
  width: 60%;
}

.special-ssdr select {
  flex: 1;                 /* ให้ทั้งสอง select แบ่งพื้นที่เท่ากัน */
  
  padding: 6px;
}

/* กล่องจำนวนสินค้า */
.special-setqtystock {
  margin-top: 15px;
}

/* ป้องกัน margin/padding ของ element ย่อย */
.product-info-special p,
.product-info-special strong {
  margin: 0;
  padding: 0;
}

 


        .product {
            display: flex;
            align-items: center;
            gap: 5px;
            border-bottom: 1px solid #ddd;
            padding-bottom: 5px;
            flex-grow: 1; 
             
        }
        
        .product img {
            width: 100px;
            height: 100px;
            object-fit: cover;
            border-radius: 8px;
        }
        
        .product-info {
            flex-grow: 1;
            color:#1c1717;
        }
        
        .quantity {
            display: flex;
         /*   align-items: center;
            align-items: flex-end;
           /* flex-direction: column; /* จัดเรียงแนวตั้ง */ */
        }

        .setqtystock {
            display: flex;
             align-items: flex-start;    
        }

        
    

        .qty-decrement, .qty-increment {
            width: 15px; /* ขนาดเล็กลงเป็น 20px */
            height: 15px; /* ขนาดเล็กลงเป็น 20px */
            border: 1px solid #ccc;
            background-color: #f5f5f5;
            color: #333;
            font-size: 12px; /* ลดขนาดฟอนต์เล็กลง */
            font-weight: bold;
            text-align: center;
            line-height: 15px; /* ตรงกับความสูง */
            cursor: pointer;
            border-radius: 4px;
        }
        
        .qty-decrement:hover, .qty-increment:hover {
            background-color: #e0e0e0;
        }


        .product-title {
                font-size: 15px;
                color:#1c1717;
               /* font-weight: bold;*/
            }

            .product-description {
                font-size: 13px;
            }

            .product-price-new {
                font-price: 14px;
            }

            .product-stock {
                font-price: 12px;
            }

            .imgtocart {
 
         margin-top: 0;
    padding-top: 0;
}

    .imgtocart-top {
                        gap: 2px;
                        align-items: center  !important;
                    }

                    .qty-img-wrapper-top {
    width: 80px;
    align-items: center  !important;
    justify-content: center
    }


.qty-img-wrapper {
  width: 80px;
   
}


.qty-img-wrapper-top img.qty-increment {
  display: flex;
  width: 100%;
  height: auto;
  max-height: 100%;
  
  cursor: pointer;
 
  border: none !important;
  background: none !important;
  outline: none !important;
}

.qty-img-wrapper img.qty-increment {
  display: flex;
  width: 100%;
  height: auto;
  max-height: 100%;
  
  cursor: pointer;
 
  border: none !important;
  background: none !important;
  outline: none !important;
}

.opricegroup {
  display: flex;
}

.opricegroup p {
  margin: 0 !important;         /* ตัด margin บน-ล่าง */
  padding: 0 !important;        /* ตัด padding เผื่อมี */
 
  font-size: 14px;
}

.price-original {
    text-decoration: line-through;
    color:#1e1a1a;
    font-size: 0.85em;
    margin-bottom: 10;
}

.opricegroup-top {
  display: flex;
  align-items: center;
  text-align: center;
   justify-content: center;
}

/* payment medthod */
.payment-row {
    display: flex;
    align-items: center;
    gap: 12px;
}

.payment-label {
    font-weight: 500;
    white-space: nowrap; /* ไม่ให้ขึ้นบรรทัดใหม่ */
    min-width: 150px;     /* ปรับความกว้าง label ตามต้องการ */
}
.payment-select {
    width: 100%;  /* flex: 1; /*  ให้กินพื้นที่ที่เหลือจาก label */
    padding: 8px 12px;
    font-size: 14px;
    border: 1px solid #ccc;
    border-radius: 8px;          /* มุมมน */
    background-color: #fff;
    color: #333;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05); /* เงานุ่มๆ */
    transition: all 0.3s ease;   /* ให้ความรู้สึก smooth */
    appearance: none;            /* ซ่อน UI default (บาง browser) */
    -webkit-appearance: none;
    -moz-appearance: none;
    
     background-image: url('data:image/svg+xml;utf8,\
<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 32 32\'>\
  <circle cx=\'16\' cy=\'16\' r=\'15\' fill=\'red\'/>\
  <path d=\'M11 13l5 5 5-5\' stroke=\'white\' stroke-width=\'2\' fill=\'none\' stroke-linecap=\'round\' stroke-linejoin=\'round\'/>\
</svg>');
    background-repeat: no-repeat;
    background-position: right 6px center;
    background-size: 30px;
    margin-bottom: 1px;
}


 

.payment-select:focus {
    outline: none;
    border-color: #4CAF50;          /* สีเขียวอ่อนเมื่อ focus */
    box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.2); /* glow effect */
    border-radius: 8px !important;             /* มุมมนตอนกดเลือก */
}

.payment-select option {
    border-radius: 8px;     /* มุมมนตัวเลือก (บาง browser เท่านั้น) */
}
        
/* payment method */
 .payment-method {
            margin-top: 20px;
        }
        
        .payment-method h3 {
            font-size: 1rem; /* ลดขนาดฟอนต์หัวข้อ */
            margin-bottom: 10px;
            background-color:#65440b;/* #f5f5f5;*/
            padding: 10px;
            border-radius: 20px;
            color:#ffffff;
        }
        
        /* Order Summary */
        .order-summary {
            margin-top: 20px;
        }
        
        .order-summary h3 {
            font-size: 1rem; /* ลดขนาดฟอนต์หัวข้อ */
            margin-bottom: 10px;
            background-color:#65440b;;
            padding: 10px;
            border-radius: 20px;
            color:#ffffff;
        }
        
        /*
    /* Container หลักที่ครอบทุกอย่าง */
.summary-container {
    display: flex; /* ใช้ flexbox เพื่อจัดแถบซ้ายและเนื้อหาหลัก */
    background-color:#ffffff; /* สีชมพูอ่อนตามรูปตัวอย่าง #FCEAEA*/
    padding: 0; /* ลบ padding เริ่มต้น ถ้ามี */
    border-radius: 10px; /* มุมโค้งมนของ container หลัก */
    overflow: hidden; /* ซ่อนส่วนที่เกินขอบ เช่น แถบสีชมพูเข้ม */
    width: 100%; /* หรือความกว้างที่ต้องการ */
    max-width: 900px; /* ตัวอย่างความกว้างสูงสุด */
    margin: 1px auto; /* จัดกึ่งกลางหน้าจอ */
    margin-top: 5px;
}

/* แถบสีชมพูเข้มด้านซ้าย */
.left-pink-bar {
    width: 20px; /* ความกว้างของแถบ */
    background-color:#ffffff; /*  #E6B0B0 สีชมพูเข้มตามรูปตัวอย่าง */
    flex-shrink: 0; /* ไม่ให้หดตัว */
}

/* ส่วนเนื้อหาหลักที่แบ่งป้ายกำกับกับกล่องตัวเลข */
.summary-content {
    flex-grow: 1; /* ให้ขยายเต็มพื้นที่ที่เหลือ */
    display: flex;
    justify-content: space-between; /* แยกสองส่วนออกจากกัน */
    align-items: flex-start; /* จัดแนวบน (หรือ center ก็ได้ถ้าชอบ) */
    padding: 20px 30px; /* padding ภายในเนื้อหาหลัก (ปรับตามความเหมาะสม) */
    gap: 40px; /* เพิ่มช่องว่างระหว่าง label กับ box */
}

/* ส่วนของป้ายกำกับทั้งหมด */
.summary-labels {
    flex: 0 0 55%; /* ให้ส่วนนี้ใช้พื้นที่ 55% (อาจปรับได้) */
    display: flex;
    flex-direction: column; /* จัดเรียงข้อความเป็นคอลัมน์ */
    justify-content: space-around; /* กระจายช่องว่างระหว่างข้อความ */
    padding-right: 20px; /* เพิ่มระยะห่างด้านขวาจากกล่องตัวเลข */
    padding: 10px 0; /* กำหนด padding บน-ล่าง ให้เท่ากันกับ p ในกล่องขาว */
}

.summary-labels p {
    margin: 8px 0; /* กำหนด margin บนล่างสำหรับแต่ละบรรทัดของ label */
    font-size: 1em; /* ขนาดตัวอักษรปกติ */
    color: #333; /* สีตัวอักษร */
    white-space: nowrap; /* ไม่ให้ข้อความขึ้นบรรทัดใหม่ */
    padding: 3px 0; /* กำหนด padding บน-ล่าง ให้เท่ากันทั้งสองฝั่ง */
}

.summary-labels strong p {
    font-weight: bold; /* ทำให้   เป็นตัวหนา */
    margin-top: 20px; /* เพิ่มระยะห่างจากบรรทัดก่อนหน้าเล็กน้อย */
    padding-top: 5px; /* กำหนด padding-top ให้เท่ากันทั้งสองฝั่ง */
}

/* กล่องสีขาวขนาดใหญ่ที่ครอบตัวเลขทั้งหมด */
.summary-values-box {
    flex: 0 0 40%; /* ให้ส่วนนี้ใช้พื้นที่ 40% (รวมเป็น 95% + padding) */
  
    background-color: white; /* พื้นหลังสีขาว */
    border-radius: 20px; /* มุมโค้งมนของกล่องขาว (ปรับให้โค้งมากน้อยตามต้องการ) */
    padding: 15px 20px; /* padding ภายในกล่องขาว (บน-ล่าง 15px, ซ้าย-ขวา 20px) */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* เพิ่มเงาเล็กน้อยเพื่อให้ดูมีมิติ (ถ้าต้องการ) */
    display: flex;
    flex-direction: column; /* จัดเรียงตัวเลขเป็นคอลัมน์ */
    align-items: flex-end; /* จัดตัวเลขทั้งหมดให้ชิดขวาภายในกล่อง */
    justify-content: space-around; /* กระจายช่องว่างระหว่างตัวเลขแต่ละบรรทัด */
    min-height: 150px; /* กำหนดความสูงขั้นต่ำเพื่อให้กล่องดูใหญ่ตามรูป */
    padding-top: 10px; /* กำหนด padding-top ให้เท่ากันทั้งสองฝั่ง */
    
}

/* สไตล์สำหรับ p tag ที่แสดงตัวเลขภายในกล่องขาว */
.summary-values-box p {
    margin: 8px 0; /* กำหนด margin บนล่างสำหรับแต่ละบรรทัดของตัวเลข */
    font-size: 1em; /* ขนาดตัวอักษรปกติ */
    color: black; /* สีตัวอักษรตัวเลข */
    white-space: nowrap; /* ไม่ให้ตัวเลขขึ้นบรรทัดใหม่ */
}

.summary-values-box strong p {
    font-weight: bold; /* ทำให้ตัวเลข  เป็นตัวหนา */
    margin-top: 15px; /* เพิ่มระยะห่างจากบรรทัดก่อนหน้าเล็กน้อย */
}

/* ซ่อน input fields */
.summary-values-box input[type='text'] {
    display: none;
}

/* แก้ไขเพิ่มเติม: ทำให้บรรทัดตรงกัน */
.summary-labels,
.summary-values-box {
    height: 150px; /* ความสูงรวมของกล่อง ควรเท่ากันทั้งสองฝั่ง */
}

.summary-labels p,
.summary-values-box p {
    margin: 0;
    padding: 8px 0;
    height: 30px; /* กำหนดความสูงแต่ละบรรทัดให้เท่ากัน */
    display: flex;
    align-items: center;
}
        
        .total-price,
        .shipping-fee,
        .final-total,
        .final-discount {
            font-weight: bold;
            color: #2ecc71;
        }
        
        /* Customer Info */
        .customer-info {
            
            margin-top: 20px;
        }

        /* Customer Info */
        .order-remark {
            
            margin-top: 5px;
        }
        
        .customer-info h3 {
            font-size: 1rem;  /* ขนาดฟอนต์หัวข้อ */
            
            line-height: 1.5;  /* ความสูงบรรทัดเดียวกัน */
            margin-bottom: 10px;
            background-color:#65440b;
            padding: 10px;
            border-radius: 20px;
            box-sizing: border-box;  /* คำนวณขนาดที่ถูกต้อง */
            color:#ffffff;
        }
        
        .address-form .form-group {
            margin-bottom: 10px;
        }
        
        .address-form label {
            display: block;
            margin-bottom: 5px;
            font-size: 0.7rem; /* ลดขนาดฟอนต์ Label */
        }
        
        .address-form input,
        .address-form select,
        .address-form textarea {
            font-family: 'Kanit', sans-serif; /* ใช้ฟอนต์ Kanit */
            width: 100%;
            padding: 8px;
            border: 1px solid #ccc;
            border-radius: 5px;
            font-size: 0.7rem; /* ลดขนาดฟอนต์ Input, Select, Textarea */
        }

        .remark-form .remark-group {
            margin-bottom: 2px;
        }
        
        .remark-form label {
            display: block;
            margin-bottom: 2px;
            font-size: 0.7rem; /* ลดขนาดฟอนต์ Label */
        }
        
        .remark-form input,
        .remark-form select,
        .remark-form textarea {
            font-family: 'Kanit', sans-serif; /* ใช้ฟอนต์ Kanit */
            width: 100%;
            padding: 10px;
            border: 1px solid #ccc;
            border-radius: 5px;
            font-size: 0.7rem; /* ลดขนาดฟอนต์ Input, Select, Textarea */
        }

        .afline{
             
             margin-bottom: 2px;
             
        }

.shipping-toggle-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.2rem;
}
    .btncl{
        display:flex;
    }
.toggle-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    font-size: 30px;              /* แก้ = เป็น : */
    border-radius: 50%;
    background-color: rgb(247, 6, 6);
    border: none;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.3s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);

    /* ถ้าจะใช้ background image */
    background-size: 30px;        /* แก้ = เป็น : */
    background-position: center;
    
    margin-left: auto; /* ชิดขวา (container ต้องเป็น flex) */
}

.toggle-icon-btn:hover {
    background-color: #e0e0e0;
}

#toggle-icon {
    width: 16px;
    height: 16px;
    transition: transform 0.3s ease;
}

#toggle-icon path {
    stroke: rgb(250, 249, 249); /* สีเส้นของลูกศร (ตอนนี้เป็นขาวเกือบเต็ม) */
}


        
        /* Action Text */
        .action-text {
            text-align: center;
            margin-top: 5px;
            margin-botton:5px;
        }
        
        .add-more {
            display: inline-flex;
            align-items: center;
            gap: 5px;
            font-size: 0.7rem; 
        }
        
        .add-more .icon {
            width: 20px;
            height: 20px;
        }
        
        /* Action Button */
        .action-button {
            text-align: center;
            margin-top: 5px;
        }
        
        .pay-button {
            background: #005e00;/*#2ecc71;*/
            color: #fafafa;/*white;*/
            border: none;
            padding: 10px;
            width: 100%;
            border-radius: 25px;
            cursor: pointer;
            font-size: 20px;/* 0.8rem; /* ลดขนาดฟอนต์ปุ่มชำระเงิน */
        }
        
        /* Footer */
        .footer {
            text-align: center;
            font-size: 0.6rem; /* ลดขนาดฟอนต์ Footer */
            color:#1c1717;
            margin-top: 20px;
        }

        
.addfn {
  display: flex;
  justify-content: center;  /* จัดให้อยู่กึ่งกลางแนวนอน */
 
  gap: 5px;                /* ระยะห่างระหว่าง object */
  margin: 5px 0;           /* เพิ่มระยะห่างด้านบน-ล่างตามต้องการ */
}

/* ตัวจัดการกับ taxreq */
.taxreq {
    display: inline-flex;
    align-items: center;
    gap: 4cm; /* เว้นห่างระหว่าง checkbox */
    white-space: nowrap; /* ห้ามให้ข้อความขึ้นบรรทัดใหม่ */
}

.taxreq .left,
.taxreq .right {
    display: inline-flex;
    align-items: center;
}

.taxreq input[type='checkbox'] {
    margin-right: 8px;
}


.ssdr {
    display: flex;
    align-items: center; /* จัดแนวดิ่งให้ label กับ select อยู่ตรงกลาง */
    gap: 8px; /* ช่องว่างระหว่าง label กับ select */
    margin-bottom: 2px; /* ระยะห่างจากบรรทัดถัดไป */
}

.ssdr label {
    white-space: nowrap; /* ไม่ตัดคำใน label */
    font-weight: bold;
}



 .rptselect,
 .stockselectorone,
 .stockselectortwo {
            padding: 2px 4px;          /* ลดระยะขอบด้านใน */
            font-size: 11px;
            color: #333;
            background-color: #fff;
            border: 1px solid #ccc;
            border-radius: 4px;
            width: 100px;
            box-sizing: border-box;
            transition: border-color 0.3s ease;
        }

        .rptselect:focus,
 .stockselectorone:focus,
 .stockselectortwo:focus {
            outline: none;
            border-color: #4a90e2;
            box-shadow: 0 0 3px rgba(74, 144, 226, 0.3);
        }

/*end select report */

/*pagination*/
#pagination,
 
.pagination {
    text-align: left;
    margin-top: 5px;
}

#pagination button,
 
.pagination button {
    background-color:rgb(255, 255, 255);
    border: 1px solid #ddd;
    color: #333;
    padding: 2px 4px;
    margin: 0 2px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 12px;
    transition: all 0.3s ease;
}

#pagination button:hover,
 
.pagination button:hover {
    background-color: #4CAF50;
    color: white;
    border-color: #4CAF50;
    transform: translateY(-2px);
}

#pagination button.active,
 
.pagination button.active {
    background-color: #4CAF50;
    color: white;
    border-color: #4CAF50;
    font-weight: bold;
}

#pagination button:focus,
 
.pagination:focus {
    outline: none;
}
/*pagination*/
        
        /* Responsive Design */
        @media (max-width: 600px) {
                .search-container {
                flex-direction: column; /* ซ้อนกันแทนเรียงแนวนอน */
                align-items: stretch;
                padding: 10px;
                font-size: 8px;
            }
            .container {
                max-width: 100%;
                padding: 10px;
            }
        
            .product img {
                width: 60px;
                height: 60px;
            }
        
            .payment-options {
                flex-direction: column;
                align-items: flex-start;
              /*  margin-bottom: 2px; */
            }
        
            .payment-option {
                margin-bottom: 10px;
            }

            
            .quantity {
                display: flex;
                align-items: center;
                gap: 1px; /* ระยะห่างระหว่างปุ่ม - และ + กับช่อง input */
            }
        
            .qty-decrement, .qty-increment {
            width: 15px; /* ขนาดปุ่มคงเดิม */
            height: 15px;
            font-size: 12px; /* ขนาดฟอนต์คงเดิม */
            }
        
           

            /*new search*/
             .rds-options {
                flex-direction: column;
                align-items: flex-start;
            }

            .rds-search input {
                font-size: 14px;
            }

            .search-icon {
                font-size: 16px;
            }
            /*new search*/

             .special-ssdr {
            display: flex;
            flex-wrap: nowrap;         /* ถ้าไม่ต้องการให้ตัดบรรทัดเลย ให้ใช้ wrap: nowrap */
            gap: 5px;               /* ระยะห่างระหว่าง select */
            margin: 5px 0;
            width: 40%;
            }

            .special-ssdr select {
            flex: 1;                 /* ให้ทั้งสอง select แบ่งพื้นที่เท่ากัน */
            
            padding: 2px;
            }

        }

    @media (max-width: 480px) {
            .search-container {
            flex-direction: column; /* ซ้อนกันแทนเรียงแนวนอน */
            align-items: stretch;
            padding: 10px;
            font-size: 8px;
            }

           

            .red-container {
                height: 100%; /* ลดลงแต่ยังใหญ่พอ */
                margin-bottom: 1px  !important;      /* ขยับใกล้ลง */

                
            }
            .red-container .imagelogo {
                height:100%;
                width: auto; /* เดิม width 100 ปรับ ใหม่ 2025-11-12 ขยายภาพให้ใหญ่เต็มกรอบ */
            }

                .popup {
                    min-width: 180px; /* มือถือแคบก็ใช้ขนาดแค่ 1 รูป */
                }

                .container {
                    max-width: 100%;
                    padding: 8px; /* ลดขอบให้เหมาะสมกับมือถือ */
                }

              
     .mainp {
           top-margin:2px;
            display: flex;             /* ใช้ Flexbox เพื่อจัดวางลูกๆ (.product และ .setqtystock) ในแถวเดียวกัน */
            align-items: flex-start;   /* จัดให้ลูกๆ เริ่มต้นจากด้านบนของ container (เพื่อให้ส่วนบนของ product และ setqtystock อยู่แนวเดียวกัน) */
           flex-direction: column;
            justify-content: space-between; /* ดัน .product ไปทางซ้าย และ .setqtystock ไปทางขวา โดยมีพื้นที่ว่างระหว่างกัน */
            width: 100%;               /* ให้ mainp กินพื้นที่ความกว้างทั้งหมดที่มี */
           /* flex-wrap: wrap;           /* สำคัญ: ถ้าหน้าจอแคบ ให้ลูกๆ ขึ้นบรรทัดใหม่ได้ (สำหรับ Responsive) */
            /* ** คุณอาจต้องการเพิ่ม padding, border, margin-bottom, background-color, box-shadow ที่นี่ 
            ถ้าคุณต้องการให้มันครอบคลุมทั้ง product และ setqtystock และไม่มีใน CSS เดิมของคุณ ** */
        }
        
        .product {
            display: flex;
            align-items: center;
            gap: 5px;
            border-bottom: 1px solid #ddd;
            padding-bottom: 5px;
            flex-grow: 1;  
        }

         .product img {
            width: 100px;
            height: 100px;
            object-fit: cover;
            border-radius: 8px;
        }

        .setqtystock {
            display: flex;
             align-items: flex-start;    
        }
                

                .product-title {
                    font-size: 13px;
                }

                .product-description {
                    font-size: 12px;
                }

                .product-price-new {
                    font-size: 13px;
                }

                .product-stock {
                    font-size: 12px;
                }

               

                .imgtocart {
                    gap: 2px;
                    align-items: center;
                }

                .qty-img-wrapper {
                    width: 80px;
                    height: auto;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }

                .qty-img-wrapper img.qty-increment {
                    width: 100%;
                    width: 100px;
                    max-height: 36px;
                    height: auto;
                    object-fit: contain;
                }

                .qty-img-wrapper-top {
                    width: 80px;
                    height: auto;
                    
                }

                .qty-img-wrapper-top img.qty-increment {
                    width: 100%;
                    width: 100px;
                    max-height: 36px;
                    height: auto;
                   
                }

            
                .opricegroup {
                    align-items: flex-end;
                }

                .opricegroup p {
                    font-size: 12px;
                    margin: 0 !important;
                    line-height: 1.2;
                }

                .price-original {
                    font-size: 0.8em;
                    margin-bottom: 2px;
                }

                .qty-decrement,
                .qty-increment {
                    width: 18px;
                    height: 18px;
                    font-size: 12px;
                    line-height: 18px;
                }

                .quantity {
                    justify-content: flex-end;
                    flex-wrap: nowrap;
                }
                    .summary-content {
                    padding: 10px 15px;
                    gap: 12px;
                }

                .summary-labels {
                    flex: 0 0 65%;
                    padding-right: 8px;
                }

                .summary-values-box {
                    flex: 0 0 35%;
                    padding: 8px 12px;
                    border-radius: 12px;
                    min-height: 120px;
                }

                .summary-labels p,
                .summary-values-box p {
                    font-size: 0.9em;
                    height: 24px;
                }

     .special-ssdr {
                display: flex;
                flex-wrap: nowrap;         /* ถ้าไม่ต้องการให้ตัดบรรทัดเลย ให้ใช้ wrap: nowrap */
                gap: 5px;               /* ระยะห่างระหว่าง select */
                margin: 5px 0;
                width: 30%;
            }

            .special-ssdr select {
                flex: 1;                 /* ให้ทั้งสอง select แบ่งพื้นที่เท่ากัน */
                
                padding: 2px;
            }

             
}

        
/* Responsive Design Adjustments */
@media (max-width: 768px) {
    .rds {
        
        max-width: 90%;
    }

      

    /* ปุ่มวิทยุถูกลบออกไปแล้ว */
    /* .radio-options { ... } */

    .search-box-container {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 8px;
        flex-wrap: nowrap; /* ไม่ให้ขึ้นบรรทัดใหม่ */
        overflow-x: auto; /* ถ้าจอเล็กมาก ให้ scroll แนวนอนได้ */
        padding: 0;
    }

    .search-type-dropdown {
        flex: 0 0 auto;
        padding: 10px 12px;
        font-size: 0.85rem;
        border-right: 1px solid #ccc;
        border-radius: 5px 0 0 5px;
        white-space: nowrap;
    }

    .search-input-wrapper {
        display: flex;
        align-items: center;
        flex: 1 1 auto;
        padding: 10px 12px;
        border: 1px solid #ccc;
        border-left: none;
        border-radius: 0 5px 5px 0;
        background-color: #fff;
        min-width: 0; /* ป้องกัน overflow */
    }

    .search-icon {
        font-size: 0.9rem;
        margin-right: 8px;
        flex-shrink: 0;
    }

    .search-input {
        font-size: 0.85rem;
        width: 100%;
        border: none;
        outline: none;
    }

    .mainp {
            display: flex;             /* ใช้ Flexbox เพื่อจัดวางลูกๆ (.product และ .setqtystock) ในแถวเดียวกัน */
            align-items: flex-start;   /* จัดให้ลูกๆ เริ่มต้นจากด้านบนของ container (เพื่อให้ส่วนบนของ product และ setqtystock อยู่แนวเดียวกัน) */
           flex-direction: column;
            justify-content: space-between; /* ดัน .product ไปทางซ้าย และ .setqtystock ไปทางขวา โดยมีพื้นที่ว่างระหว่างกัน */
            width: 100%;               /* ให้ mainp กินพื้นที่ความกว้างทั้งหมดที่มี */
           /* flex-wrap: wrap;           /* สำคัญ: ถ้าหน้าจอแคบ ให้ลูกๆ ขึ้นบรรทัดใหม่ได้ (สำหรับ Responsive) */
            /* ** คุณอาจต้องการเพิ่ม padding, border, margin-bottom, background-color, box-shadow ที่นี่ 
            ถ้าคุณต้องการให้มันครอบคลุมทั้ง product และ setqtystock และไม่มีใน CSS เดิมของคุณ ** */
        }
        
        .product {
            display: flex;
            align-items: center;
            gap: 5px;
            border-bottom: 1px solid #ddd;
            padding-bottom: 5px;
            flex-grow: 1;  
        }

         .product img {
            width: 100px;
            height: 100px;
            object-fit: cover;
            border-radius: 8px;
        }

        .setqtystock {
            display: flex;
             align-items: flex-start;    
        }

    .product-title {
                font-size: 15px;
             /*   font-weight: bold;*/
            }

            .product-description {
                font-size: 13px;
            }

            .product-price-new {
                font-price: 14px;
            }

            .product-stock {
                font-price: 12px;
            }

            .opricegroup {
            display: flex;
            
            
            }

            .opricegroup p {
            margin: 0 !important;         /* ตัด margin บน-ล่าง */
            padding: 0 !important;        /* ตัด padding เผื่อมี */
            
            font-size: 14px;
            }
}

.special-product {
    display: flex;
    flex-direction: column; /* เรียงแนวตั้ง */
     text-align: center !important;
    align-items: center;
    justify-content: center !important;
    margin-bottom: 2px;
}

 

.product-image-large {
    width: 250px !important;
    height: auto !important;
    margin-bottom: 2px;
}

 

 

.special-setqtystock {
    text-align: center;
    margin-top: 2px;
    align-items: center;
     
    
}



/* calculate promotion */
.calpro {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px; /* ระยะห่างเล็ก ๆ ระหว่างแต่ละองค์ประกอบ */
 /* padding: 10px; */
  /* border: 1px solid #ccc;  กรอบ */
  border-radius: 6px;
  font-family: sans-serif;
 /* background-color: #f9f9f9; */
}
.calpro input {
  padding: 4px 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.calpro button {
  padding: 5px 10px;
  background-color: #4CAF50;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}
.calpro button:hover {
  background-color: #45a049;
}
/* calculate promotion */

/* ตะกร้า + - */

.info-action-wrapper {
    display: flex;
    justify-content: space-between; /* กระจายช่องว่างระหว่าง infoDiv และ actionControlsDiv */
    align-items: center; /* จัดให้อยู่กึ่งกลางในแนวตั้ง */
    width: 100%; /* ให้ wrapper ใช้ความกว้างเต็มที่ */
}

.action-controls {
    display: flex;
    align-items: center; /* จัดให้ปุ่ม Qty และ Remove อยู่กึ่งกลางแนวตั้ง */
    gap: 10px; /* เพิ่มระยะห่างระหว่าง qtyControlDiv และ removeBtn */
}

/* คุณอาจจะต้องปรับแต่ง .qty-control และ .selected-item-remove เพิ่มเติม */
.qty-control {
    display: flex;
    align-items: center;
}

.qty-input {
    width: 40px; /* หรือตามที่คุณต้องการ */
    text-align: center;
    margin: 0 5px;
    border-radius: 5px;
}



/* ตะกร้า */

        