/* Copyright (c) 2026 Marketing-Brand®. */
.mbaz-loupe-control { box-sizing:border-box; width:min(252px,calc(100vw - 32px)); padding:10px 12px; border:1px solid #ffffff26; border-radius:14px; background:#171b1ff7; color:#faf8f2; font-size:13px; line-height:1.4; font-family:inherit; box-shadow:0 6px 24px #0003; text-align:left; pointer-events:auto; }
.mbaz-loupe-control[hidden] { display:none !important; }
/* Native lightbox: reserve space inside the image stage, never cover the artwork. */
.elementor-lightbox.mbaz-controls-docked .dialog-message > .swiper { margin-left:var(--mbaz-dock-side-space,0px); width:calc(100% - var(--mbaz-dock-side-space,0px)); height:calc(100% - var(--mbaz-dock-bottom-space,0px)); }
@media (max-width:699px),(max-height:559px) { .elementor-lightbox.mbaz-controls-docked .elementor-lightbox-item { padding-bottom:12px; } }
.elementor-lightbox.mbaz-controls-docked .elementor-slideshow__footer { bottom:var(--mbaz-dock-footer-offset,0px); }
.elementor-lightbox .mbaz-native-strength { position:absolute; top:auto; bottom:max(12px,env(safe-area-inset-bottom,0px)); left:50%; transform:translateX(-50%); z-index:20; width:min(340px,calc(100% - 32px)); padding:2px 10px; background:#181b1ef5; box-shadow:0 4px 18px #0002; }
@media (max-width:699px) {
 .elementor-lightbox .mbaz-native-strength { --mbaz-phone-inset-left:max(var(--mbaz-phone-left,16px),env(safe-area-inset-left,0px)); --mbaz-phone-inset-right:max(var(--mbaz-phone-right,16px),env(safe-area-inset-right,0px)); left:calc(50% + (var(--mbaz-phone-inset-left) - var(--mbaz-phone-inset-right))/2); width:min(340px,calc(100% - var(--mbaz-phone-inset-left) - var(--mbaz-phone-inset-right))); bottom:max(12px,env(safe-area-inset-bottom,0px),var(--mbaz-phone-bottom,0px)); border-radius:16px; }
}
.elementor-lightbox .mbaz-native-strength .mbaz-strength-row { display:none; }
:is(.elementor-lightbox,.mbaz-dialog) .mbaz-native-strength button.mbaz-strength-toggle { appearance:none; display:flex !important; align-items:center; gap:10px; width:100%; min-height:44px; padding:0; margin:0; border:0; border-radius:8px; background:transparent; color:#faf8f2; font:inherit; text-transform:none; letter-spacing:normal; text-align:left; cursor:pointer; box-shadow:none; }
.mbaz-native-strength .mbaz-strength-toggle .mbaz-strength-value { margin-left:auto; }
.mbaz-native-strength[data-expanded=false] .mbaz-strength-body { display:none; }
.mbaz-native-strength[data-expanded=true] .mbaz-strength-chevron { transform:rotate(180deg); }
.elementor-lightbox .mbaz-native-strength[data-expanded=true] .mbaz-strength-compact-note { display:none !important; }
.mbaz-native-strength[data-expanded=false] .mbaz-strength-compact-note:not([hidden]) { display:block !important; margin:0 0 8px; height:1.4em; min-height:1.4em; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--mbaz-control-readable,#f5d27d); font-size:11px; line-height:1.4; }
@media (min-width:700px) and (min-height:560px) {
 .elementor-lightbox .mbaz-native-strength { top:50%; bottom:auto; left:max(12px,env(safe-area-inset-left,0px)); transform:translateY(-50%); width:84px; padding:12px 6px; border-radius:22px; text-align:center; max-height:calc(100% - 160px); overflow:auto; scrollbar-width:thin; }
 .elementor-lightbox .mbaz-native-strength .mbaz-strength-row { display:flex; flex-direction:column; gap:2px; font-size:11px; margin-bottom:6px; }
 .elementor-lightbox .mbaz-native-strength .mbaz-strength-body { display:block; }
 .elementor-lightbox .mbaz-native-strength button.mbaz-strength-toggle,.elementor-lightbox .mbaz-native-strength[data-expanded] .mbaz-strength-compact-note { display:none !important; }
 .elementor-lightbox .mbaz-native-strength .mbaz-strength-track { flex-direction:column-reverse; gap:4px; }
 .elementor-lightbox .mbaz-native-strength input[type=range] { writing-mode:vertical-lr; direction:rtl; flex:none; width:44px; min-width:44px; height:clamp(88px,22vh,160px); touch-action:none; }
 .mbaz-native-strength input[type=range]::-webkit-slider-runnable-track { width:4px; height:100%; background:linear-gradient(to top,var(--mbaz-control-accent,#eac263) var(--mbaz-strength-progress,60%),#ffffff45 var(--mbaz-strength-progress,60%)); }
 .mbaz-native-strength input[type=range]::-webkit-slider-thumb { margin:0 0 0 -10px; }
 .mbaz-native-strength input[type=range]::-moz-range-track { width:4px; height:100%; }
 .mbaz-native-strength input[type=range]::-moz-range-progress { width:4px; }
 .elementor-lightbox .mbaz-native-strength .mbaz-strength-note { margin:8px 0 0; min-height:0; font-size:10px; line-height:1.4; overflow-wrap:normal; }
}
.mbaz-strength-row { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:12px; }
.mbaz-strength-value { color:var(--mbaz-control-readable,#f5d27d); font-size:16px; font-weight:650; font-variant-numeric:tabular-nums; }
.mbaz-strength-track { display:flex; align-items:center; gap:6px; }
.mbaz-loupe-control .mbaz-strength-track button { appearance:none; flex:none; display:grid; place-items:center; margin:0; padding:0; width:44px; height:44px; min-width:44px; min-height:44px; border:0; border-radius:9px; background:transparent; color:#faf8f2; font:22px/1 system-ui; cursor:pointer; touch-action:manipulation; box-shadow:none; }
.mbaz-loupe-control .mbaz-strength-track button:hover { background:#ffffff18; }
.mbaz-loupe-control .mbaz-strength-track button:active { background:#ffffff2b; }
.mbaz-loupe-control .mbaz-strength-track button:disabled { opacity:.3; cursor:default; }
.mbaz-loupe-control input[type=range] { appearance:none; -webkit-appearance:none; display:block; flex:1; width:0; min-width:60px; height:44px; margin:0; padding:0; border:0; background:transparent; accent-color:var(--mbaz-control-accent,#eac263); cursor:pointer; touch-action:pan-y; }
/* The selected HEX color paints the track and thumb without theme button overrides. */
.mbaz-loupe-control input[type=range]::-webkit-slider-runnable-track { height:4px; border-radius:4px; background:linear-gradient(to right,var(--mbaz-control-accent,#eac263) var(--mbaz-strength-progress,60%),#ffffff45 var(--mbaz-strength-progress,60%)); }
.mbaz-loupe-control input[type=range]::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:24px; height:24px; margin-top:-10px; border:2px solid #faf8f2; border-radius:50%; background:var(--mbaz-control-accent,#eac263); box-shadow:0 1px 4px #0006; }
.mbaz-loupe-control input[type=range]::-moz-range-track { height:4px; border-radius:4px; background:#ffffff45; }
.mbaz-loupe-control input[type=range]::-moz-range-progress { height:4px; background:var(--mbaz-control-accent,#eac263); }
.mbaz-loupe-control input[type=range]::-moz-range-thumb { width:20px; height:20px; border:2px solid #faf8f2; border-radius:50%; background:var(--mbaz-control-accent,#eac263); }
.mbaz-loupe-control:not(.mbaz-native-strength) .mbaz-strength-toggle,.mbaz-loupe-control:not(.mbaz-native-strength) .mbaz-strength-compact-note { display:none !important; }
@media (max-width:600px),(max-height:480px) {
 .mbaz-loupe-control { width:min(244px,calc(100vw - 32px)); padding:2px 10px; }
 :is(.elementor-lightbox,.mbaz-dialog) .mbaz-loupe-control button.mbaz-strength-toggle { appearance:none; display:flex !important; align-items:center; gap:10px; width:100%; min-height:44px; padding:0; margin:0; border:0; border-radius:8px; background:transparent; color:#faf8f2; font:inherit; text-transform:none; letter-spacing:normal; text-align:left; cursor:pointer; box-shadow:none; }
 .mbaz-strength-toggle .mbaz-strength-value { margin-left:auto; }
 .mbaz-strength-chevron { font:20px/1 system-ui; }
 .mbaz-loupe-control[data-expanded=true] .mbaz-strength-chevron { transform:rotate(180deg); }
 .mbaz-loupe-control .mbaz-strength-row { display:none; }
 .mbaz-loupe-control[data-expanded=false] .mbaz-strength-body { display:none; }
 .mbaz-loupe-control .mbaz-strength-compact-note:not([hidden]) { display:block !important; margin:0 0 8px; color:#faf8f2; font-size:11px; line-height:1.4; }
 .mbaz-loupe-control[data-expanded=true] .mbaz-strength-compact-note { display:none !important; }
 .mbaz-strength-note { margin-bottom:8px; }
}
.mbaz-loupe-control :is(button,input):focus-visible { outline:2px solid var(--mbaz-control-readable,#f5d27d); outline-offset:2px; }
.mbaz-strength-note { margin:0; min-height:2.8em; font-size:11px; line-height:1.4; color:#c9ced2; }
.mbaz-loupe-control[data-limited=true] .mbaz-strength-note { color:var(--mbaz-control-readable,#f5d27d); }
.mbaz-bottom > .mbaz-loupe-control { margin:0 auto 10px; }
@media (max-height:480px) { .mbaz-loupe-control:not(.mbaz-native-strength) { padding:6px 10px; } }
@media (forced-colors:active) { .mbaz-loupe-control { border:1px solid CanvasText; background:Canvas; color:CanvasText; } .mbaz-strength-value,.mbaz-strength-note,.mbaz-loupe-control[data-limited=true] .mbaz-strength-note { color:CanvasText; } }
.mbaz-dialog {
  --mbaz-bg: #111315; --mbaz-panel: #1d2023; --mbaz-line: #41464c; --mbaz-ink: #f8f7f4;
  position: fixed; inset: 0; box-sizing: border-box; width: 100%; max-width: none;
  height: 100vh; height: 100dvh; max-height: none; margin: 0; padding: 0; border: 0;
  background: var(--mbaz-bg); color: var(--mbaz-ink); overscroll-behavior: contain; overflow:hidden;
  font: 14px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color-scheme: dark;
}
.mbaz-dialog[open] { display: flex; flex-direction: column; }
.mbaz-dialog::backdrop { background: rgb(0 0 0 / 90%); }
.mbaz-dialog *, .mbaz-lens { box-sizing: border-box; }
.mbaz-dialog [hidden], .mbaz-lens[hidden] { display: none !important; }
.mbaz-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 24px; border-bottom: 1px solid #2c3034; flex: none; }
.mbaz-heading { min-width: 0; }
.mbaz-counter { display: block; font-size: 11px; letter-spacing: .14em; color: #b9c0c8; margin-bottom: 3px; }
.mbaz-title { max-width: 1000px; overflow-wrap: anywhere; font-size: 14px; line-height: 1.4; }
.mbaz-top-buttons, .mbaz-control-group { display: flex; align-items: center; gap: 4px; }
.mbaz-top-buttons { flex: none; }
.mbaz-dialog button.mbaz-button {
  appearance: none; position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  min-width: 44px; min-height: 44px; width: auto; margin: 0; padding: 8px 12px; border: 1px solid transparent;
  border-radius: 9px; background: transparent; color: var(--mbaz-ink); font: inherit; text-transform: none;
  text-decoration: none; letter-spacing: normal; box-shadow: none; cursor: pointer;
  transition: background-color 120ms ease, border-color 120ms ease, transform 120ms cubic-bezier(.23,1,.32,1);
}
.mbaz-dialog button.mbaz-button:disabled { opacity: .35; cursor: default; }
.mbaz-dialog button.mbaz-button[aria-pressed="true"] { background: #f4f1e9; color: #111315; }
.mbaz-dialog button.mbaz-button:active:not(:disabled) { transform: scale(.97); }
.mbaz-dialog button:focus-visible { outline: 2px solid #f0cf9e; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .mbaz-dialog button.mbaz-button:hover:not(:disabled) { border-color: #6e7782; background: #353b42; color: #fff; }
}
.mbaz-icon { display: inline-block; font-size: 24px; line-height: 1; font-weight: 400; }
.mbaz-button[data-action="native"] .mbaz-icon { font-size: 17px; }
.mbaz-button-text { font-size: 12px; white-space: nowrap; }
.mbaz-stage { position: relative; flex: 1; min-height: 0; overflow: hidden; touch-action: none; }
.mbaz-workspace { display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);flex:1;min-height:0;min-width:0; }
.mbaz-workspace.mbaz-split { grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:12px; }
.mbaz-inspector { display:flex;flex-direction:column;min-height:0;min-width:0;border:1px solid #41464c;border-radius:10px;overflow:hidden; }
.mbaz-inspector-heading { padding:10px 14px;font-size:11px;letter-spacing:.06em;border-bottom:1px solid #41464c;flex:none; }
.mbaz-detail-image { flex:1;min-height:0;background-color:#080a0c;background-repeat:no-repeat;touch-action:none; }
.mbaz-focus-mark { position:absolute;width:24px;height:24px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #000b;transform:translate(-50%,-50%);pointer-events:none; }
.mbaz-focus-mark::after { content:"";position:absolute;inset:8px;background:white;border-radius:50%;box-shadow:0 0 0 1px #111; }
.mbaz-stage[aria-busy="true"]::after { content: ""; position: absolute; inset: 50% auto auto 50%; width: 24px; height: 24px; margin: -12px; border: 2px solid #5a6068; border-top-color: #fff; border-radius: 50%; animation: mbaz-loading 700ms linear infinite; }
@keyframes mbaz-loading { to { transform: rotate(360deg); } }
.mbaz-dialog img.mbaz-image { position: absolute; left: 50%; top: 50%; max-width: none !important; max-height: none !important; min-width: 0; margin: 0; border: 0; border-radius: 0; object-fit: contain; transform-origin: center; user-select: none; -webkit-user-drag: none; pointer-events: none; image-rendering: auto; }
.mbaz-can-pan { cursor: grab; }
.mbaz-can-pan:active { cursor: grabbing; }
.mbaz-lens { position: fixed; z-index: 2147483646; pointer-events: none; border-radius: 50%; border: 2px solid rgb(255 255 255 / 85%); background-repeat: no-repeat; background-origin:border-box; background-color: #111315; box-shadow: 0 0 0 1px rgb(0 0 0 / 50%), 0 12px 40px rgb(0 0 0 / 35%); }
.mbaz-dialog > .mbaz-lens { position: absolute; z-index: 5; }
.mbaz-lens { overflow: hidden; }
.mbaz-lens[data-renderer="original-crop"] { background-image: none !important; }
.mbaz-lens > canvas.mbaz-lens-surface { position: absolute; left: -2px; top: -2px; display: block; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; pointer-events: none; }
.mbaz-lens > canvas.mbaz-lens-surface[hidden] { display: none !important; }
.mbaz-dialog button.mbaz-mini { position: absolute; right: 20px; bottom: 20px; display: block; width: 128px; height: 96px; padding: 0; border: 0; border-radius: 4px; overflow: hidden; background: #030405; box-shadow: 0 0 0 1px #687078, 0 4px 20px #0008; cursor: crosshair; touch-action: manipulation; }
.mbaz-mini img.mbaz-mini-image { display: block; width: 100%; height: 100%; max-width: none; object-fit: contain; opacity: .75; border: 0; border-radius: 0; }
.mbaz-mini-window { display: block; position: absolute; border: 1.5px solid #fff; background: rgb(255 255 255 / 14%); pointer-events: none; }
.mbaz-bottom { padding: 12px 20px max(12px, env(safe-area-inset-bottom)); border-top: 1px solid #2c3034; flex: none; }
.mbaz-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; }
.mbaz-control-group { background: var(--mbaz-panel); padding: 3px; border: 1px solid var(--mbaz-line); border-radius: 12px; }
.mbaz-scale { display: block; min-width: 52px; text-align: center; color: #eee; font-size: 13px; font-variant-numeric: tabular-nums; }
.mbaz-status { min-height: 18px; margin-top: 9px; color: #b9c0c8; font-size: 11px; text-align: center; }
.mbaz-error { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; text-align: center; }
.mbaz-gallery { display: grid; grid-template-columns: repeat(var(--mbaz-columns, 3), minmax(0, 1fr)); gap: 16px; }
.mbaz-gallery a { display: block; }
.mbaz-gallery img { width: 100%; height: auto; display: block; }
@media (max-width: 600px) {
  .mbaz-workspace.mbaz-split { grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px; }
  .mbaz-top { padding: max(10px, env(safe-area-inset-top)) 12px 10px; gap: 8px; }
  .mbaz-title { font-size: 11px; max-height: 48px; overflow: auto; }
  .mbaz-top-buttons { gap: 0; }
  .mbaz-dialog .mbaz-top-buttons .mbaz-button { padding: 8px; }
  .mbaz-bottom { padding: 8px 8px max(8px, env(safe-area-inset-bottom)); }
  .mbaz-tools { gap: 6px; }
  .mbaz-control-group { padding: 1px; gap: 0; }
  .mbaz-dialog button.mbaz-button { padding: 8px; }
  .mbaz-button-text { display: none; }
  .mbaz-scale { min-width: 42px; }
  .mbaz-status { font-size: 10px; }
  .mbaz-dialog button.mbaz-mini { width: 88px; height: 66px; right: 12px; bottom: 12px; }
  .mbaz-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .mbaz-dialog button.mbaz-button { transition: none; }
  .mbaz-dialog button.mbaz-button:active:not(:disabled) { transform: none; }
  .mbaz-stage[aria-busy="true"]::after { animation: none; border-color: #d4d8dd; }
}
/* Touch gestures stay inside Elementor's existing image area. */
.elementor-lightbox.mbaz-touch-enabled .swiper-zoom-container,
.elementor-lightbox.mbaz-touch-enabled .elementor-lightbox-image { touch-action: none; }
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom { appearance:none; display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; max-width:190px; padding:8px 14px; margin-inline-end:auto; border:1px solid #ffffff70; border-radius:999px; color:#fff; background:#151817e8; font:500 14px/1.2 system-ui,sans-serif; cursor:pointer; touch-action:manipulation; }
.elementor-lightbox button.mbaz-touch-zoom[hidden] { display:none !important; }
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:disabled { opacity:.55; cursor:default; }
.elementor-lightbox.mbaz-touch-enabled .dialog-close-button,
.elementor-lightbox.mbaz-touch-enabled .elementor-slideshow__header [role="switch"] { min-width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; }

.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:active:not(:disabled) { transform:scale(.97); }
@media (prefers-reduced-motion: reduce) {
  .elementor-lightbox.mbaz-touch-enabled .swiper-zoom-container,
  .elementor-lightbox.mbaz-touch-enabled .elementor-lightbox-image { transition-duration:0ms !important; }
}

.elementor-lightbox.mbaz-touch-instant .swiper-zoom-container,
.elementor-lightbox.mbaz-touch-instant .elementor-lightbox-image { transition-duration:0ms !important; }

/* Scoped states outrank Elementor/theme button focus/hover colors. */
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom,
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:hover,
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:focus,
.elementor-lightbox.mbaz-touch-enabled button.mbaz-touch-zoom:active { color:#22211f;background:#f4c86a;border-color:#805b16;box-shadow:0 2px 12px #0003; }

/* Informational text in the native toolbar; no click or focus target. */
.elementor-lightbox .mbaz-loupe-hint { display:flex;align-items:center;gap:8px;flex:0 1 auto;min-width:0;max-width:min(340px,calc(100vw - 160px));margin:0;margin-inline-end:auto;padding:6px 0;border:0;border-radius:0;background:transparent;color:var(--lightbox-ui-color,inherit);font-family:inherit;font-size:12px;font-weight:400;line-height:1.4;text-align:start;white-space:normal;pointer-events:none;user-select:none; }
.elementor-lightbox .mbaz-loupe-hint[data-mbaz-style="amber"] { padding:6px 10px;border:1px solid #f4c86a35;border-radius:8px;background:#151817c9;color:#f5e5bf;--mbaz-hint-icon:#f4c86a; }
.elementor-lightbox .mbaz-loupe-hint[hidden] { display:none !important; }
.elementor-lightbox .mbaz-hint-icon { position:relative;display:block;flex:0 0 12px;width:12px;height:12px;margin-inline-end:2px;border:1.5px solid var(--mbaz-hint-icon,currentColor);border-radius:50%;box-sizing:border-box; }
.elementor-lightbox .mbaz-hint-icon::after { content:'';position:absolute;right:-4px;bottom:-2px;width:5px;height:1.5px;background:var(--mbaz-hint-icon,currentColor);transform:rotate(45deg);border-radius:1px; }
