.ip3d-source[hidden] { display: none !important; }
.ip3d-thumb { list-style: none; }
.ip3d-thumb .ip3d-open { position: relative; display: block; width: 100%; padding: 0; margin: 0; border: 1px solid #dce4df; border-radius: 7px; background: #f5f5f5; color: #244f3e; overflow: hidden; cursor: pointer; box-shadow: none; line-height: 1.4; }
.ip3d-thumb .ip3d-open:hover { border-color: #477960; }
.ip3d-thumb .ip3d-open:focus-visible { outline: 3px solid #397957; outline-offset: 2px; }
.ip3d-thumb .ip3d-open img { display: block !important; width: 100% !important; height: auto !important; aspect-ratio: 1; object-fit: contain; opacity: 1 !important; margin: 0 !important; }
.ip3d-thumb .ip3d-badge { position: absolute; left: 4px; bottom: 4px; padding: 3px 6px; border-radius: 5px; background: #24563f; color: white; font-family: inherit; font-size: 10px; font-weight: 600; line-height: 1.3; }
.ip3d-thumb .ip3d-caption { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.ip3d-strip { clear: both; padding: 14px 0; width: 100%; }
.ip3d-strip .ip3d-strip-title { margin: 0 0 10px; font: inherit; font-size: 13px; color: #526058; }
.ip3d-strip .ip3d-strip-items { display: flex; flex-wrap: wrap; gap: 10px; }
.ip3d-strip .ip3d-thumb { flex: 0 0 88px; max-width: 24%; }

.ip3d-inline, .ip3d-inline *, .ip3d-thumb button { font-family: inherit; box-sizing: border-box; }
.ip3d-inline { width: 100%; clear: both; border: 1px solid #e4e7e5; border-radius: 12px; background: #fff; color: inherit; margin-bottom: 14px; }
.ip3d-inline[hidden] { display: none !important; }
.ip3d-inline [hidden] { display: none !important; }
.ip3d-inline-active > :not(.ip3d-inline):not(.flex-control-thumbs):not(.ip3d-strip):not(.ip3d-source) { display: none !important; }
.ip3d-inline .ip3d-inline-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px; padding: 12px; }
.ip3d-inline .ip3d-inline-head h2 { font-family: inherit; font-size: 14px; line-height: 1.8; margin: 0; color: inherit; min-width: 0; overflow-wrap: anywhere; }
.ip3d-inline button { font-family: inherit; font-size: 12px; line-height: 1.7; border: 1px solid #d8e0db; border-radius: 7px; padding: 7px 12px; background: #f7f9f7; color: inherit; cursor: pointer; }
.ip3d-inline button:disabled { opacity: .4; cursor: default; }
.ip3d-inline button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.ip3d-inline .ip3d-inline-foot { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 10px; }
.ip3d-inline .ip3d-counter { font-size: 12px; }
.ip3d-inline .product-3d-viewer { height: auto; aspect-ratio: 1; min-height: 320px; border-radius: 0; border-inline: 0; }
.ip3d-inline .product-3d-viewer:fullscreen, .ip3d-inline .product-3d-viewer.p3d--expanded { height: 100dvh; aspect-ratio: auto; }
.ip3d-inline .p3d__surface { bottom: 64px; }
.ip3d-inline .p3d__toolbar { left: 12px; bottom: 12px; }
.ip3d-inline .p3d__button { width: 40px; min-width: 40px; padding: 0; }
.ip3d-inline .p3d__button span { display: none; }
.ip3d-inline .p3d__hint { right: 12px; bottom: 20px; max-width: calc(100% - 180px); font-size: 10px; }
.ip3d-inline .ip3d-opening { min-height: 320px; display: grid; place-items: center; padding: 20px; text-align: center; font-size: 13px; }
.ip3d-thumb .ip3d-open[aria-pressed="true"] { outline: 2px solid #397957; outline-offset: -2px; }
