/* Usage-image preview, isolated to product details. */
.product-details-responsive .ns-usage-section { position:relative; box-sizing:border-box; padding-bottom:37px; }
.ns-usage-preview { position:absolute; left:6px; bottom:6px; display:inline-flex; align-items:center; justify-content:center; min-height:26px; padding:2px 7px; border:1px solid #c7dbce; border-radius:7px; background:#f7fcf6; color:#15583b; font:inherit; font-size:10px; line-height:1.5; cursor:pointer; z-index:1; }
.ns-usage-preview::after { content:""; position:absolute; inset:-9px -3px; }
.product-details-responsive .ns-usage-image { cursor:zoom-in; }
.ns-usage-preview:focus-visible,.product-details-responsive .ns-usage-image:focus-visible { outline:3px solid #087b49; outline-offset:3px; }
.ns-usage-viewer {
 width:min(1000px,calc(100vw - 24px)); max-width:none; max-height:92dvh; padding:0; border:1px solid #c3d7ca; border-radius:18px;
 background:#fff; color:#194a34; font-family:inherit; direction:rtl; box-shadow:0 20px 70px #092b264d;
}
.ns-usage-viewer:not([open]) { display:none; }
.ns-usage-viewer::backdrop { background:rgba(7,28,22,.65); }
.ns-usage-viewer__head { position:sticky; top:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 14px; background:#f1f7ef; border-bottom:1px solid #d8e6d9; }
.ns-usage-viewer__head h2 { margin:0; font:inherit; font-size:17px; font-weight:700; }
.ns-usage-viewer button { display:inline-flex; justify-content:center; align-items:center; min-height:44px; padding:8px 12px; border:1px solid #c3d7ca; border-radius:10px; background:#fff; color:#15583b; font:inherit; font-size:12px; cursor:pointer; }
.ns-usage-viewer__close { width:44px; flex:none; font:30px/1 Arial,sans-serif !important; padding:0 !important; }
.ns-usage-viewer button:focus-visible { outline:3px solid #087b49; outline-offset:2px; }
.ns-usage-viewer__stage { overflow:auto; max-height:calc(92dvh - 70px); background:#fff; padding:12px; direction:ltr; overscroll-behavior:contain; touch-action:pan-x pan-y pinch-zoom; }
.ns-usage-viewer__image { display:block; width:100%; height:calc(86dvh - 80px); object-fit:contain; margin:0 auto; }
.ns-usage-viewer__status { padding:10px 14px; margin:0; font-size:13px; }
.ns-usage-viewer__status[hidden] { display:none; }
body.ns-usage-viewer-open { overflow:hidden; }
@media(max-width:768px) {
 .ns-usage-viewer { width:calc(100vw - 16px); border-radius:14px; }
 .ns-usage-viewer__head { padding:8px 10px; }
 .ns-usage-viewer__head h2 { font-size:15px; }
}
