/* 2.5.12 — Close-fitting glossy covers and compact, centered reports.
   Style the image surface itself so existing Elementor images keep their links,
   captions and source files when their content is replaced. */
body .em-product-detail .em-pd-cover img,
body .elementor .elementor-widget-image.em-pd-cover img,
body .woocommerce-product-gallery .woocommerce-product-gallery__image img {
 display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;margin-inline:auto;
 object-fit:contain;object-position:center;
 padding:clamp(10px,1.6vw,18px);
 border:2px solid transparent;border-radius:18px;
 background:linear-gradient(135deg,#ffffff25,transparent 36%,transparent 65%,#ffffff14) padding-box,linear-gradient(145deg,#424d60,#2b3546 60%,#5a4453) padding-box,linear-gradient(135deg,#ffe5d1,#edaa95 20%,#67596a 48%,#bd8589 76%,#ffdcc6) border-box;
 box-shadow:inset 0 1px 2px #ffffff38,0 14px 32px #0004,0 0 20px #ef947b20;
}
body .em-product-detail .em-pd-screenshot img,
body .elementor .elementor-widget-image.em-pd-screenshot img,
body .em-product-detail .em-pd-performance-image img,
body .elementor .elementor-widget-image.em-pd-performance-image img {
 display:block;width:100%;height:auto;max-height:none;object-fit:contain;
 padding:clamp(10px,1.6vw,18px);border:1px solid #aab7ce30;border-radius:16px;
 background:linear-gradient(145deg,#28313e,#151c26);
 box-shadow:inset 0 1px 0 #ffffff10,0 12px 30px #0003;
}
/* The third image's report gets a full row, including already-installed pages. */
body .em-product-detail.em-pd-tinted .em-pd-split,
body .elementor .em-product-detail.em-pd-tinted .e-con.em-pd-split {
 flex-direction:column;--flex-direction:column;gap:30px;--row-gap:30px;
}
body .em-product-detail.em-pd-tinted .em-pd-copy,
body .em-product-detail.em-pd-tinted .em-pd-visual,
body .elementor .em-product-detail.em-pd-tinted .e-con.em-pd-copy,
body .elementor .em-product-detail.em-pd-tinted .e-con.em-pd-visual {
 width:100%;--width:100%;
}
body .em-product-detail.em-pd-tinted .em-pd-copy {max-width:800px;margin-inline:auto;text-align:center}
body .em-product-detail.em-pd-tinted .em-pd-visual {max-width:none}
body .em-product-detail .em-pd-track,
body .elementor .em-product-detail .e-con.em-pd-track {width:100%;--width:100%;max-width:100%;gap:18px;--row-gap:18px}
body .em-product-detail .em-pd-performance-image {max-width:none}
/* Center the widget and its actual image, including custom Elementor widths,
   linked images and the optional enlargement button. */
body .em-product-detail .em-pd-track,
body .elementor .em-product-detail .e-con.em-pd-track {margin-inline:auto;align-items:center;--align-items:center}
body .em-product-detail .em-pd-performance-image,
body .elementor .elementor-widget-image.em-pd-performance-image,
body .em-product-detail .em-pd-performance-image .elementor-widget-container,
body .elementor .elementor-widget-image.em-pd-performance-image .elementor-widget-container,
body .em-product-detail .em-pd-performance-image figure,
body .em-product-detail .em-pd-performance-image .em-media-open {margin-inline:auto;align-self:center;text-align:center}
body .em-product-detail .em-pd-performance-image img,
body .elementor .elementor-widget-image.em-pd-performance-image img {margin-inline:auto}
/* Backtesting and both tracking services share the same desktop/tablet limits.
   Natural proportions and compact image frames are retained; phone sizes stay. */
@media(min-width:768px) {
 body .em-product-detail.em-pd-tinted .em-pd-visual,
 body .elementor .em-product-detail.em-pd-tinted .e-con.em-pd-visual,
 body .em-product-detail .em-pd-track,
 body .elementor .em-product-detail .e-con.em-pd-track {max-width:760px;margin-inline:auto}
 body .em-product-detail.em-pd-tinted .em-pd-screenshot,
 body .em-product-detail .em-pd-performance-image {width:100%;max-width:760px;align-self:center;margin-inline:auto}
 body .em-product-detail.em-pd-tinted .em-pd-screenshot img,
 body .elementor .em-product-detail.em-pd-tinted .elementor-widget-image.em-pd-screenshot img,
 body .em-product-detail .em-pd-performance-image img,
 body .elementor .em-product-detail .elementor-widget-image.em-pd-performance-image img {width:auto;max-width:100%;height:auto;max-height:520px;aspect-ratio:auto;margin-inline:auto}
}
body .woocommerce-product-gallery .flex-viewport {border-radius:20px}
body .woocommerce-product-gallery .flex-control-thumbs {display:flex;flex-wrap:wrap;gap:10px;margin-top:14px!important;padding:0}
body .woocommerce-product-gallery .flex-control-thumbs li {float:none!important;width:calc(25% - 8px)!important;max-width:110px;flex:0 1 110px}
body .woocommerce-product-gallery .flex-control-thumbs img {aspect-ratio:4 / 3;object-fit:contain;padding:6px;background:#1c2430;border:1px solid #aab7ce30;border-radius:9px}
body .woocommerce-product-gallery .flex-control-thumbs img.flex-active {border-color:#f28c70}
/* Product cards share the same cover treatment without changing their links. */
body .woocommerce ul.products li.product a img,
body .em-catalog-card>a>img {
 width:100%;height:auto;aspect-ratio:16 / 11;object-fit:contain;padding:14px;
 border:1px solid #f28c7033;border-radius:14px;
 background:radial-gradient(ellipse at bottom left,#ec684823,transparent 65%),linear-gradient(145deg,#303946,#171d26);
}
body button.em-media-open {display:block;position:relative;width:100%;max-width:100%;margin:0;padding:0;border:0;border-radius:20px;background:transparent;color:#c2ccda;box-shadow:none;text-align:inherit;line-height:1.4;cursor:zoom-in;transform:none}
body button.em-media-open:hover {background:transparent;color:#ffd0b7;transform:none}
body .em-media-hint {display:block;text-align:end;margin-top:8px;padding-inline:2px;font-size:12px;font-weight:400;line-height:1.4}
body .em-product-detail .wp-caption {max-width:100%;margin-inline:0}
body .em-product-detail .widget-image-caption {color:#b6c0ce;font-size:13px;line-height:1.6;margin-top:10px}
html.em-media-view-open {overflow:hidden}
body dialog.em-media-dialog {box-sizing:border-box;width:min(1160px,calc(100vw - 32px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);padding:18px;margin:auto;background:#151c26;color:#f1f4f9;border:1px solid #8794aa55;border-radius:18px;box-shadow:0 28px 100px #0009;overflow:auto}
body dialog.em-media-dialog::backdrop {background:rgba(3,6,12,.88)}
body .em-media-toolbar {display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
body .em-media-title {flex:1;min-width:120px;margin:0;color:#f1f4f9;font-size:15px;font-weight:500;line-height:1.45;overflow-wrap:anywhere}
body .em-media-actions {display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body .em-media-actions button,body .em-media-actions a {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;font-size:13px;line-height:1.4;border:1px solid #8794aa55;border-radius:7px;color:#f1f4f9;background:#293342;text-decoration:none;box-shadow:none;transform:none}
body .em-media-actions button:hover,body .em-media-actions a:hover {background:#39465a;color:#fff;transform:none}
body .em-media-actions button:disabled {opacity:.5;cursor:default}
body .em-media-viewport {height:min(72vh,760px);height:min(72dvh,760px);overflow:auto;overscroll-behavior:contain;display:flex;align-items:center;justify-content:center;background:#0b1018;border-radius:8px}
body .em-media-viewport img {display:block;width:100%;height:100%;max-width:100%;max-height:100%;padding:0;border:0;border-radius:0;object-fit:contain;background:none;box-shadow:none}
body .em-media-viewport [hidden] {display:none!important}
body .em-media-dialog.is-zoomed .em-media-viewport {display:block}
body .em-media-dialog.is-zoomed .em-media-viewport img {height:auto;max-width:none;max-height:none;object-fit:initial}
body .em-media-error {padding:24px;color:#e9b6a6;text-align:center}
@media(max-width:767px) {
 body .em-pd-hero .em-pd-split,body .elementor .em-pd-hero .e-con.em-pd-split {flex-direction:column-reverse;--flex-direction:column-reverse}
 body .em-pd-overview .em-pd-split,body .elementor .em-pd-overview .e-con.em-pd-split {flex-direction:column;--flex-direction:column}
 body .em-product-detail .em-pd-cover img,body .elementor .elementor-widget-image.em-pd-cover img {padding:10px;border-radius:16px}
 body .em-product-detail .em-pd-screenshot img,body .em-product-detail .em-pd-performance-image img {padding:9px;border-radius:12px}
 body dialog.em-media-dialog {padding:12px;border-radius:12px}
 body .em-media-toolbar {gap:10px}
 body .em-media-title {flex-basis:100%}
 body .em-media-actions {width:100%;justify-content:flex-end}
}
@media(prefers-reduced-motion:reduce) {body .em-media-open,body .em-media-actions button {transition:none}}
