/* Product contact design shared by every page, without generic popup selectors. */
#procode-contact-popup{position:fixed;inset:0;z-index:100000;display:block;background:rgba(0,0,0,0);opacity:0;visibility:hidden;pointer-events:none;transition:background .3s ease,opacity .3s ease,visibility .3s ease;}
#procode-contact-popup.is-open{background:rgba(0,0,0,.4);opacity:1;visibility:visible;pointer-events:auto;}
.procode-contact-popup__container{position:absolute;right:0;top:0;width:35%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#fff;border-radius:16px 16px 0 0;box-shadow:0 -3px 12px rgba(0,0,0,.15);transform:translateX(100%);transition:transform .35s cubic-bezier(.4,0,.2,1),height .35s ease;}
#procode-contact-popup.is-open .procode-contact-popup__container{transform:translateX(0);}
.procode-contact-popup__drag-bar{flex:0 0 auto;width:15vw;height:5px;margin:6px auto 10px;background:#dfd9d9;border-radius:5px;touch-action:none;}
.procode-contact-popup__header{flex:0 0 auto;position:relative;display:flex;align-items:center;justify-content:space-between;padding:0 14px 5px;margin:0 0 10px;background:#fff;border-bottom:1px solid #e0e0e0;color:#52525b;font-size:18px;font-weight:700;touch-action:none;}
#procode-contact-popup .procode-contact-popup__close{display:grid;place-items:center;min-width:28px;width:28px;height:28px;padding:0;color:#d32f2f;background:none;border:0;box-shadow:none;font-size:28px;line-height:1;cursor:pointer;}
.procode-contact-popup__body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:10px 15px;-webkit-overflow-scrolling:touch;}
.procode-contact-popup__content{padding:15px;color:#333;font-size:14px;line-height:1.7;}
.procode-contact-popup__content table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;}
.procode-contact-popup__content th,.procode-contact-popup__content td{padding:10px 12px;border-bottom:1px solid #eee;text-align:right;}
.procode-contact-popup__content th{width:35%;color:#555;font-weight:500;}
html.procode-contact-open,body.procode-contact-open{overflow:hidden;}
#procode-contact-launcher{position:fixed;top:auto;right:20px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:499;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:10px;width:150px;height:48px;padding:0 16px;border:0;border-radius:24px;background:#ed4545;color:#fff;box-shadow:0 4px 12px rgba(0,0,0,.2);font:inherit;cursor:pointer;transition:width .35s ease,padding .35s ease;}
#procode-contact-launcher:hover{background:#ed4545;color:#fff;}
#procode-contact-launcher img{width:24px;height:24px;flex:0 0 24px;transform:rotate(275deg);}
#procode-contact-launcher span{white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden;}
#procode-contact-launcher.is-compact{width:48px;padding:0;gap:0;}
#procode-contact-launcher.is-compact span{display:none;}
@media(max-width:767px){
 .procode-contact-popup__container{top:auto;right:0;left:0;bottom:0;width:100%;height:70vh;height:70dvh;max-height:100%;transform:translateY(100%);}
 #procode-contact-popup.is-open .procode-contact-popup__container{transform:translateY(0);}
 #procode-contact-popup.is-full .procode-contact-popup__container{height:100%;border-radius:0;}
 .procode-contact-popup__header{font-weight:800;}
 .procode-contact-popup__body{padding:8px 8px calc(24px + env(safe-area-inset-bottom));}
 .procode-contact-popup__content{padding:0;line-height:1.8;}
 #procode-contact-launcher{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));height:46px;}
 body:has(.mobile-product-bottom-bar) #procode-contact-launcher,body:has(.mobile-catagory-bottom-bar) #procode-contact-launcher{display:none;}
}
@media(prefers-reduced-motion:reduce){#procode-contact-popup,.procode-contact-popup__container,#procode-contact-launcher{transition:none;}}
