/* Independent product-detail presentation; existing cart and variant operations stay intact. */
@media screen {
    #menuCustomize #menu-order-quantity { margin: 0 !important; }
    #menuCustomize .footer .count { display: flex; align-items: center; height: 46px; }
    #menuCustomize { background: #fff !important; color: #14283d; }
    #menuCustomize .sidebar-header { background: #fff !important; box-shadow: none !important; border-bottom: 1px solid #f0f2f3; height: auto !important; min-height: 56px !important; padding: max(6px,env(safe-area-inset-top)) 14px 6px !important; box-sizing: border-box; }
    #menuCustomize .product-panel-heading { font-size: 16px !important; line-height: 1.4; font-weight: 650; color: #14283d; }
    #menuCustomize #dismiss.product-panel-close { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: 0 0 44px; padding: 0; border: 0; border-radius: 50%; background: #f3f5f5; color: #14283d; box-shadow: none; }
    #menuCustomize #dismiss.product-panel-close:hover { background: #e7efeb; }
    #menuCustomize .sidebar-wrapper { background: #fff !important; }
    #menuCustomize .sidebar-wrapper > .section,
    #menuCustomize #menu-variants .section { margin: 0 !important; padding: 18px 16px !important; border: 0 !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
    #menuCustomize .sidebar-wrapper .customize-product-image-section { position: relative; display: grid !important; place-items: center; padding: 0 !important; margin: 0 !important; width: 100%; height: clamp(260px,48vh,430px) !important; background: #fff !important; border-radius: 0 !important; overflow: hidden; }
    #menuCustomize .customize-product-image-section .customize-product-image { display: block; width: auto !important; height: auto !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; margin: 0 auto !important; border-radius: 0 !important; }
    #menuCustomize .customize-gallery-arrow { position: absolute; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 40px !important; height: 40px !important; padding: 0; border: 1px solid #edf0ee; border-radius: 50%; background: #fffffff2 !important; color: #14283d !important; box-shadow: 0 3px 12px #152d1e0a; }
    #menuCustomize .customize-gallery-arrow[hidden], #menuCustomize .customize-gallery-count[hidden] { display: none !important; }
    #menuCustomize .customize-gallery-previous { right: 12px; left: auto; }
    #menuCustomize .customize-gallery-next { left: 12px; right: auto; }
    #menuCustomize .customize-gallery-count { position: absolute; bottom: 12px; left: 14px; padding: 3px 12px; border-radius: 20px; font-size: 12px; color: #14283d; background: #fffffff0; }
    #menuCustomize .sidebar-wrapper .customize-product-heading { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: start; gap: 14px; }
    #menuCustomize .customize-product-name { flex: 1 1 160px; min-width: 0; }
    #menuCustomize .customize-product-title { margin: 0 0 6px !important; padding: 0 !important; font-size: 21px !important; line-height: 1.5; font-weight: 750; color: #14283d !important; overflow-wrap: anywhere; }
    #menuCustomize .customize-product-name .customize-info-brand { margin: 4px 0 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; width: auto !important; max-width: none !important; text-align: start !important; color: #78838e; font-size: 12px; line-height: 1.8; }
    #menuCustomize .customize-product-name .customize-info-brand strong { display: inline !important; color: #596b75 !important; font-size: 12px !important; font-weight: 500 !important; white-space: normal !important; overflow: visible !important; text-overflow: clip !important; overflow-wrap: anywhere; unicode-bidi: plaintext; }
    #menuCustomize .customize-product-name .customize-info-brand span { display: inline !important; margin-inline-end: 6px; font-size: 11px !important; font-weight: 400 !important; }
    #menuCustomize .customize-price-block { text-align: end; }
    #menuCustomize .customize-unit-price { margin: 0 !important; padding: 0 !important; color: #07845f !important; background: none !important; font-size: 25px !important; line-height: 1.5; font-weight: 800; white-space: nowrap; }
    #menuCustomize .customize-price-block small { display: block; color: #7b8792; font-size: 11px; }
    #menuCustomize .customize-description-title { display: none; }
    #menuCustomize .customize-item-description { font-size: 14px !important; line-height: 1.9; color: #55636e !important; white-space: pre-line; }
    #menuCustomize .section.product-description-section, #menuCustomize .customize-item-description { border: 0 !important; border-radius: 0 !important; background: #fff !important; box-shadow: none !important; }
    #menuCustomize .customize-item-description { padding: 0 !important; margin: 0 !important; min-height: 0 !important; height: auto !important; }
    #menuCustomize .customize-info-grid { display: flex !important; flex-wrap: nowrap; gap: 0 !important; width: 100%; padding: 12px 0 !important; border-top: 1px solid #e8ecee; border-bottom: 1px solid #e8ecee; }
    #menuCustomize .customize-info-grid .customize-info-item { flex: 1 1 0 !important; min-width: 0 !important; width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 10px !important; border: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; text-align: start !important; }
    #menuCustomize .customize-info-grid .customize-info-item + .customize-info-item { border-inline-start: 1px solid #e8ecee !important; }
    #menuCustomize .customize-info-item span { color: #7b8792 !important; font-size: 12px; }
    #menuCustomize .customize-info-grid .customize-info-item strong { display: block !important; margin-top: 5px; max-width: 100%; color: #344957 !important; font-family: ui-monospace,Consolas,monospace; font-weight: 500 !important; font-size: 12px !important; line-height: 1.6; direction: ltr; unicode-bidi: isolate; white-space: nowrap !important; overflow-wrap: normal !important; word-break: normal !important; overflow-x: auto !important; text-overflow: clip !important; }
    #menuCustomize .customize-info-grid .customize-info-item:not([style*="display: none"]) { display: flex !important; flex: 1 1 auto !important; align-items: center; gap: 6px; padding-inline: 8px !important; }
    #menuCustomize .customize-info-grid .customize-info-reference:not([style*="display: none"]) { flex: 0 1 42% !important; }
    #menuCustomize .customize-info-grid .customize-info-barcode:not([style*="display: none"]) { flex: 1 1 58% !important; }
    #menuCustomize .customize-info-grid .customize-info-item > span { flex: 0 0 auto; white-space: nowrap; }
    #menuCustomize .customize-info-grid .customize-info-item > span:after { content: ":"; }
    #menuCustomize .customize-info-grid .customize-info-item > strong { display: inline-block !important; min-width: 0; margin-top: 0; scrollbar-width: none; }
    #menuCustomize .customize-info-grid .customize-info-item > strong::-webkit-scrollbar { display: none; width: 0; height: 0; }
    #menuCustomize .customize-colors-wrap { margin-top: 18px; padding-top: 0 !important; border: 0 !important; }
    #menuCustomize .customize-colors-title { display: block; color: #14283d; font-size: 17px; font-weight: 700; margin-bottom: 12px; }
    #menuCustomize .customize-colors-list { display: flex; gap: 12px; flex-wrap: wrap; }
    #menuCustomize .customize-color-dot { display: block; width: 30px !important; height: 30px !important; border: 3px solid white !important; border-radius: 50%; background: var(--customize-color); outline: 1px solid #dce3e5; box-shadow: none !important; }
    #menuCustomize .extras-heading .title { color: #14283d !important; font-size: 18px !important; font-weight: 750; margin-bottom: 12px; }
    #menuCustomize #menu-variants .line-separate { display: none; }
    #menuCustomize .menu-variant-option { display: grid !important; gap: 10px; }
    #menuCustomize #menu-variants .menu-extra-item { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; min-height: 54px; margin: 0 !important; padding: 12px 14px !important; border: 1px solid #e1e6e8 !important; border-radius: 12px !important; background: #fff !important; box-shadow: none !important; }
    #menuCustomize #menu-variants .menu-extra-item:has(input:checked) { border-color: #07845f !important; background: #eff8f4 !important; }
    #menuCustomize .extra-item-title { color: #203749 !important; font-size: 15px !important; font-weight: 600; line-height: 1.7; cursor: pointer; }
    #menuCustomize #menu-variants .extra-item-title { flex: 1; }
    #menuCustomize .variant-option-price { color: #07845f; font-size: 14px; font-weight: 700; white-space: nowrap; }
    #menuCustomize .custom-control-input:checked ~ .custom-control-label:before { border-color: #07845f !important; background: #07845f !important; }
    #menuCustomize .custom-control-input:checked ~ .custom-control-label:after { background-color: transparent !important; }
    #menuCustomize .product-order-note-section label { color: #14283d; font-size: 16px; }
    #menuCustomize #product-order-note { height: 84px; min-height: 76px !important; padding: 12px !important; border: 1px solid #dce3e5 !important; border-radius: 12px !important; background: #fff !important; font-size: 14px !important; box-shadow: none !important; }
    #menuCustomize .product-order-note-meta { font-size: 11px; color: #83909a; }
    #menuCustomize .footer.footer-extras { background: #fff !important; border-top: 1px solid #e8eeeb; box-shadow: 0 -4px 16px #163c2c05 !important; }
    #menuCustomize .footer.footer-extras .section { margin: 0 !important; padding: 12px 14px !important; }
    #menuCustomize .footer .row.no-gutters { display: grid !important; grid-template-columns: 120px minmax(0,1fr); gap: 10px; align-items: center; }
    #menuCustomize .footer .row.no-gutters:before, #menuCustomize .footer .row.no-gutters:after { display: none; }
    #menuCustomize .footer .row.no-gutters > div { width: 100% !important; max-width: none !important; padding: 0 !important; min-width: 0; }
    #menuCustomize .footer .add-btn.add-item-btn { width: 100% !important; height: 48px !important; border: 1px solid #dce4df !important; border-radius: 12px !important; background: #f5f8f6 !important; box-shadow: none !important; }
    #menuCustomize .footer .add-item-btn .wrapper { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 100%; }
    #menuCustomize .footer .addition { display: grid; place-items: center; width: 34px; height: 46px; padding: 0; border: 0; background: transparent; color: #1f3d42 !important; font-size: 22px; cursor: pointer; }
    #menuCustomize .footer .count { flex: 1; width: auto; padding: 0 !important; margin: 0 !important; min-width: 0; background: #fff !important; }
    #menuCustomize #menu-order-quantity { display: block; width: 100% !important; height: 46px; padding: 0 !important; border: 0 !important; border-inline: 1px solid #e3eae6 !important; background: #fff !important; color: #14283d !important; font-size: 17px !important; font-weight: 700; text-align: center; direction: ltr; border-radius: 0; box-shadow: none !important; }
    #menuCustomize #add-order-button { display: flex; justify-content: center; align-items: center; gap: 5px; width: 100%; min-height: 48px; padding: 10px 8px !important; border: 0 !important; border-radius: 12px !important; background: #07845f !important; color: #fff !important; font-size: 13px !important; font-weight: 700; box-shadow: none !important; flex-wrap: wrap; }
    #menuCustomize #order-price { white-space: nowrap; }
    #menuCustomize :is(button,input,textarea):focus-visible { outline: 2px solid #07845f !important; outline-offset: 2px; }
    #menuCustomize .customize-min-order { margin: 0; background: #fffbec; color: #806719; font-size: 12px; }

    @media (max-width: 768px) {
        #menuCustomize .sidebar-wrapper > .section,
        #menuCustomize #menu-variants .section { padding: 13px 18px !important; }
        #menuCustomize .sidebar-wrapper .customize-product-image-section {
            display: grid !important;
            place-items: center;
            width: calc(100% - 36px);
            height: clamp(260px, 48vh, 390px) !important;
            margin: 14px auto 2px !important;
            border: 1px solid #eef1ed !important;
            border-radius: 20px !important;
            background: linear-gradient(145deg, #f7f6f2, #fbfcfb) !important;
        }
        #menuCustomize .customize-product-image-section .customize-product-image {
            width: auto !important;
            height: auto !important;
            max-width: 100% !important;
            max-height: 100% !important;
            padding: 8px;
            box-sizing: border-box;
            border-radius: 20px !important;
            object-fit: contain !important;
            cursor: zoom-in;
        }
        #menuCustomize .customize-image-zoom {
            position: absolute;
            top: 12px;
            left: 12px;
            z-index: 4;
            display: grid;
            place-items: center;
            width: 40px;
            height: 40px;
            padding: 0;
            border: 1px solid #e5e9e7;
            border-radius: 50%;
            background: #ffffffed;
            color: #243b38;
            box-shadow: 0 4px 14px #102c2018;
            cursor: zoom-in;
        }
        #menuCustomize .customize-image-zoom i { font-size: 17px; }
        #product-image-viewer { z-index: 10080; }
        #product-image-viewer img {
            width: auto !important;
            height: auto !important;
            max-width: min(96vw, 1100px) !important;
            max-height: 90dvh !important;
            object-fit: contain !important;
            background: transparent;
            box-shadow: 0 18px 60px #0007;
        }
        #menuCustomize .sidebar-wrapper .customize-product-heading {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            gap: 7px;
            padding: 10px 18px 12px !important;
        }
        #menuCustomize .customize-product-name { width: 100%; }
        #menuCustomize .customize-product-title {
            margin: 0 !important;
            direction: ltr;
            unicode-bidi: plaintext;
            text-align: right;
            font-size: 19px !important;
            line-height: 1.4;
            font-weight: 800;
            overflow-wrap: break-word;
            word-break: normal;
        }
        #menuCustomize .customize-product-name .customize-info-brand { margin-top: 3px !important; }
        #menuCustomize .customize-price-block {
            display: flex;
            align-items: baseline;
            justify-content: space-between;
            gap: 10px;
            width: 100%;
            padding: 8px 12px;
            box-sizing: border-box;
            border: 1px solid #e1efe7;
            border-radius: 13px;
            background: #f4faf6;
            text-align: right;
        }
        #menuCustomize .customize-unit-price { font-size: 22px !important; line-height: 1.35; }
        #menuCustomize .customize-price-block small { font-size: 11px; white-space: nowrap; }
        #menuCustomize .product-order-note-section { padding-top: 12px !important; }
        #menuCustomize .product-order-note-section label { font-size: 14px; margin-bottom: 8px; }
        #menuCustomize #product-order-note { height: 72px; min-height: 68px !important; }
    }
}
