.banner-minor img {
    max-width: 100%;
    max-height: 100%;
}

.banner-minor .item {
    margin-bottom: 25px;   
}

/* 2026-06-15 (Nova #marquee) — แถบโปรโมชั่นวิ่ง: ป้ายติดซ้าย + ไล่เฉดสี + ปุ่ม pill */
.marquee-promotion {
    display: flex;
    align-items: stretch;
    background: linear-gradient(90deg, #eaa033 0%, #d88f21 55%, #c87d14 100%);
    box-shadow: 0 2px 10px rgba(0, 0, 0, .18);
    overflow: hidden;
}

.marquee-promotion .mq-badge {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 22px;
    background: rgba(0, 0, 0, .24);
    color: #fff;
    font-weight: 800;
    font-size: 16px;
    letter-spacing: .3px;
    white-space: nowrap;
    box-shadow: 2px 0 8px rgba(0, 0, 0, .15);
    z-index: 2;
}

.marquee-promotion marquee {
    flex: 1 1 auto;
    align-self: center;
    padding: 14px 0;
}

.marquee-promotion .item {
    font-size: 18px;
    margin-right: 70px;
    color: #fff;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .18);
}

.marquee-promotion .item a {
    margin-left: 14px;
    font-size: 13.5px;
    color: #c87d14;
    font-weight: 800;
    text-decoration: none;
    background: #fff;
    padding: 5px 16px;
    border-radius: 999px;
    white-space: nowrap;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
    transition: transform .12s ease, box-shadow .12s ease;
}

.marquee-promotion .item a:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .28);
}

@media (max-width: 767px) {
    .marquee-promotion .mq-badge { padding: 0 14px; font-size: 13px; }
    .marquee-promotion .item { font-size: 15px; margin-right: 48px; }
    .marquee-promotion .item a { font-size: 12px; padding: 4px 12px; margin-left: 10px; }
    .marquee-promotion marquee { padding: 11px 0; }
}

.section-member .promotion-list h2 {
    font-weight: bold;
}

.section-member .promotion-list .attr {
    font-size: 12px;
}

.section-member .promotion-list .price {
    font-size: 11px;
}

.d-history .panel-collapse {
    padding-bottom: 80px !important;
}

.section-cart .promotion-list {
    margin-top: 40px;
}

.section-cart .promotion-list .product-item {
    margin-bottom: 20px;
    min-height: 200px;
}

.section-cart .promotion-list .product-item .text {
    padding-top: 0px;
}

.section-cart .promotion-list .product-item .price {
    font-size: 12px;
}
/* ========================================================================
   2026-06-15 (Nova) — ปรับแถบกรองสินค้า (product list) + ช่อง "เรียงโดย"
   พี่นัด: แถบเอียงซ้ายเกินไป (เหลือที่ว่างขวา) + ช่องเรียงโดยจางมองไม่เห็น
   แก้: กระจายช่องกรองให้เต็มแถบ + ทำช่องเรียงโดยเป็น pill ขาวเด่น (desktop)
   ======================================================================== */
@media (min-width: 768px) {
    /* แถบกรอง: เดิมช่องกองซ้าย (14.25% ต่อช่อง) เหลือพื้นที่ขาวว่างด้านขวา
       → ใช้ flex กระจายทุกช่องให้เต็มความกว้างแถบเท่า ๆ กัน */
    .form-filter { display: flex !important; align-items: stretch; }
    .form-filter > .form-group { float: none !important; width: auto !important; flex: 1 1 0; }
    .form-filter .dropdown,
    .form-filter .dropdown .dropdown-toggle { width: 100% !important; }

    /* ช่อง "เรียงโดย" ให้เด่นขึ้น = pill ขาว ขอบมน เงานุ่ม เห็นชัดบนพื้นเข้ม
       + จัดให้อยู่ระดับเดียวกับแถบกรอง */
    .form-sort { padding-top: 10px !important; text-align: right; }
    .form-sort .select { width: 100%; }
    .form-sort .select select.form-control {
        background: #fff !important;
        color: #333 !important;
        border: 1px solid #E8E8E8 !important;
        border-radius: 60px !important;
        height: auto !important;
        line-height: 1.3 !important;
        padding: 15px 42px 15px 22px !important;
        font-size: 14px !important;
        width: 100% !important;
        box-shadow: 0 3px 12px rgba(0, 0, 0, .18);
        cursor: pointer;
    }
    .form-sort .select select.form-control:hover {
        border-color: #d88f21 !important;
    }
    .form-sort .select span {
        color: #d88f21 !important;
        right: 20px;
        top: 50%;
        margin-top: -6px;
    }
}

/* ========================================================================
   2026-06-15 (Nova) — แบนเนอร์ย่อยหน้าแรก (banner-minor) เรียงไม่เป็นระเบียบ
   พี่นัด: "มั่วไม่เรียงกัน" — เดิม .item เป็น col-xs-6 (float) รูปสูงต่างกันนิด
   เดียวก็ติด/เหลื่อม → เปลี่ยนเป็น CSS grid (desktop 2 คอลัมน์ / mobile 1)
   + บังคับอัตราส่วนเท่ากัน (รูปทุกใบ ~2.2:1) ให้เรียงเป๊ะทุกแถว
   ======================================================================== */
.banner-minor {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-items: start;
}
.banner-minor .item.col-xs-6 {
    width: auto !important;
    max-width: none !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.banner-minor .item a {
    display: block;
    width: 100%;
}
.banner-minor .item .img,
.banner-minor .item img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    aspect-ratio: 222 / 100;   /* รูปต้นฉบับ ~2.22:1 ทุกใบ → ครอบเท่ากัน เรียงเป๊ะ */
    object-fit: cover;
    display: block;
    border-radius: 12px;
}
@media (max-width: 767px) {
    .banner-minor {
        grid-template-columns: 1fr;   /* มือถือ: เรียงลงล่างทีละใบ เต็มกว้าง อ่านง่าย */
        gap: 14px;
    }
}

/* Nova 2026-06-16 (พี่นัด) — มือถือ: รูปสินค้าในรายการแสดงไม่เต็ม (height ตายตัว 272px + object-fit:cover → ซูม/ครอป บังโลโก้).
   รูปสินค้าทุกใบอัตราส่วน ~1200:1236 (เกือบ square) → ให้ height:auto โชว์เต็มรูป (ไม่ครอป) เฉพาะจอ ≤767px. เดสก์ท็อปคงเดิม. */
@media (max-width: 767px) {
    .product .item img { height: auto !important; }
}

/* Nova 2026-10-05 nv732 (พี่นัด) — ตารางเลือกสินค้า Dropship (.d-table-product): ราคาหน้าร้าน(ขีดฆ่า) / ราคาขายจริง ต้องอยู่บรรทัดเดียวและเรียงแบบนี้ทุกแถว
   เดิม main.css ใช้ .price small{float:left} ดันราคาขีดฆ่าไปไว้ข้างหน้า แต่ช่องราคากว้างตายตัว 100px (เนื้อที่จริง 84px)
   ราคา 3 หลักทั้งคู่ เช่น ฿250 / ฿178 กว้าง 85px → float ตกบรรทัดล่าง ลำดับเลยสลับเป็น ราคาจริงบน / ราคาขีดฆ่าล่าง
   แก้: จัดลำดับด้วย flex (row-reverse) + ห้ามตัดบรรทัด → คอลัมน์ขยายตามราคาเอง ไม่ขึ้นกับความกว้างอีก */
.d-table-product td .price {
    display: inline-flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    align-items: baseline;
    white-space: nowrap;
}
.d-table-product td .price small {
    float: none;
    flex: 0 0 auto;
}

/* nv776 (พี่นัด 15 ต.ค. 2026) — แสดงเลข ID สมาชิกบนหัวเว็บ + หน้า Profile (กันแคปรูปส่งต่อ) */
.d-member .uid { font-size: 12px; line-height: 15px; font-weight: 700; color: #F0A43A; letter-spacing: .3px; margin-top: 2px; }
.d-uid-m { display: none; }
@media (max-width: 920px) {
    header .navbar .navbar-header .d-uid-m { display: inline-block; vertical-align: top; margin: 12px 8px 0 0; font-size: 12px; line-height: 18px; font-weight: 700; color: #F0A43A; white-space: nowrap; }
}
.profile-box .title .d-profile-uid { float: left; margin: 10px 0 0 14px; padding: 3px 12px; border: 1px solid #F0A43A; border-radius: 6px; color: #F0A43A; font-size: 15px; line-height: 1.6; font-weight: 700; }
.profile-box .title:has(.d-profile-uid) h1 { width: auto; } /* nv776 ธีมมือถือตั้ง h1 กว้าง 175px ทำให้ป้าย ID ห่างจากคำว่า Profile */

/* nv777 (พี่นัด 15 ต.ค. 2026) — ลายน้ำ ชื่อ · ID สีส้มจางทับตารางสินค้า (แบบ 3) · ค่า --ds-wm ตั้งจาก JS ใน dropship/layout.tpl · ทะลุคลิก */
.ds-wm { position: relative; }
.ds-wm::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; pointer-events: none; z-index: 6; background-image: var(--ds-wm, none); background-repeat: repeat; }
/* nv777 — ป๊อปอัปเพิ่มสินค้า: กล่อง .cart-product.for-select เป็นกล่องเลื่อนในตัว + ธีมซ่อน ::after ไว้ → ย้ายลายน้ำไปที่ .table-responsive ข้างใน (โหลดใหม่ทุกครั้งแต่ CSS ตามไปเอง และสูงเท่ารายการทั้งหมด) */
.cart-product.for-select.ds-wm::after { display: none !important; }
.cart-product.for-select.ds-wm .table-responsive { position: relative; }
.cart-product.for-select.ds-wm .table-responsive::after { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; pointer-events: none; z-index: 6; background-image: var(--ds-wm, none); background-repeat: repeat; }

/* nv818 (พี่นัด 16 ต.ค. "รูปย่อให้เล็กลงอีก จะได้ประหยัดเนื้อที่ แต่กดที่รูปแล้วให้ขยายรูปจริงขึ้น เมื่อกดนอกรูปให้ปิดรูป")
   หน้า สร้างรายการ: รูปในตะกร้า 65→48px · ป๊อปอัปเพิ่มสินค้า 70→48px (มือถือ 55→46px) · กดรูป = ขยายรูปเต็ม (nv818-zoom ใน dropship/layout.tpl) */
.cart-list.for-dropship .product-item .img { width: 48px !important; height: 48px !important; object-fit: cover; border-radius: 6px; cursor: zoom-in; }
.cart-list.for-dropship .product-item { padding-left: 60px !important; min-height: 48px; }
#modal-product-add .img-product { width: 48px !important; height: 48px !important; object-fit: cover; border-radius: 6px; cursor: zoom-in; }
#modal-product-add .cart-product.for-select table thead th:first-child { width: 60px; }
@media (max-width: 920px) {
    .modal#modal-product-add .cart-product.for-select table tbody tr { padding-left: 64px; }
    .modal#modal-product-add .cart-product.for-select table tbody tr td:first-child { width: 46px; }
    .modal#modal-product-add .cart-product.for-select table tbody tr td:first-child img { width: 46px !important; height: 46px !important; }
}
#nv818-zoom { display: none; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 2147483000; /* nv818c — ป๊อปอัปเพิ่มสินค้าถูกตั้ง z-index 3005 ตอนรัน รูปขยายเลยไปอยู่ข้างหลัง */ background: rgba(0, 0, 0, .82); align-items: center; justify-content: center; padding: 24px; cursor: zoom-out; }
#nv818-zoom.is-open { display: flex; }
#nv818-zoom img { max-width: 92vw; max-height: 88vh; border-radius: 12px; background: #fff; box-shadow: 0 18px 60px rgba(0, 0, 0, .6); cursor: default; }

/* nv818b (พี่นัด 16 ต.ค. "ตั้งแต่ใต้เส้นเหลืองลงไป มันต้องมีลายน้ำด้วย กันแคปราคาไปให้คนอื่นดู")
   ลายน้ำ ชื่อ · ID # (แบบ nv777 — ค่า --ds-wm ตั้งจาก JS ใน dropship/layout.tpl) ทับ "รายการสินค้า" ของแต่ละบิลในหน้า สร้างรายการ ; ทะลุคลิก */
.cart-list.for-dropship .cart-product { position: relative; }
.cart-list.for-dropship .cart-product::after { content: '' !important; display: block !important; position: absolute; top: 0; right: 0; bottom: 0; left: 0; pointer-events: none; z-index: 6; background-image: var(--ds-wm, none); background-repeat: repeat; background-size: 240px 120px; }

/* nv818d (พี่นัด 16 ต.ค. "ใน mobile mode หัวบิลข้อความมันซ้อนกัน") — ธีมตั้ง .d-order .price เป็น absolute มุมขวาบน
   แต่บรรทัด Order No. กว้างเต็มแถว → "ยอดรวมสินค้า ฿…" ทับข้อความ ; มือถือให้เรียงบรรทัดปกติ: Order No. / วันที่ / ยอดรวมสินค้า (เว้นที่ให้ลูกศรขวา) */
@media (max-width: 767px) {
    .panel-group.for-order .d-order { padding-right: 28px; }
    .panel-group.for-order .d-order .price { position: static !important; display: block; text-align: left !important; margin-top: 2px; font-size: 13px; line-height: 1.6; }
    .panel-group.for-order .d-order .row > div { line-height: 1.6; }
}

/* nv854 (พี่นัด 17 ต.ค. 2026 "เอาไว้กลางดิ") — หน้า จัดการคำสั่งซื้อ (dropship/order_history* 4 แท็บ): ช่องค้นหา + แถบแท็บ อยู่กลาง
   (dropship_main.css ตั้ง .d-history .nav-tabs margin:0 = ชิดซ้าย) · ไม่มีออเดอร์ = tpl ขยายคอลัมน์รายการเต็มแถว "ไม่มีข้อมูล" จึงอยู่กลาง */
.d-form-history.d-oh-center { margin-left: auto; margin-right: auto; }
.d-history.d-oh-center .tab.style-2 .nav-tabs { margin: 0 auto; }
