/* Type 59 marker integration. The existing 72px trigger owns geometry. */
.ubd-hotspot[data-ubd-hotspot-visual]::before,.ubd-hotspot[data-ubd-hotspot-visual]::after { display:none; }
.ubd-hotspot > .ubd-hs-marker { position:absolute; top:50%; left:50%; width:44px; height:44px; min-width:44px; min-height:44px; }
.ubd-hs-marker { --hotspot:var(--ubd-hotspot-dot-color,var(--element-accent,#111)); --wave-color:var(--ubd-hotspot-wave-color,var(--hotspot)); --halo-rgb:255,255,255; --on-hotspot:#fff; --wave-alpha:1; }
.ubd-hs-marker * { box-sizing:border-box; }
.ubd-hs-marker .h-effect,.ubd-hs-marker .ubd-hs-v2-motion { color:var(--wave-color); }
.ubd-hs-marker .ubd-hs-v2-motion { opacity:var(--wave-alpha); }
.ubd-hs-marker .h-effect { filter:opacity(var(--wave-alpha)); }
.ubd-hs-marker .h-core,.ubd-hs-marker .h-label { --halo-rgb:var(--dot-rgb,255,255,255); }
.ubd-hotspot:focus-visible .ubd-hs-marker::after { outline:2px solid #fff; outline-offset:3px; box-shadow:0 0 0 6px #27232c; }
.ubd-hotspot:is(:hover,:focus-visible) .ubd-hs-marker:not(.is-open) .h-label { opacity:1; }
.ubd-hotspot:focus-visible .ubd-hs-marker[data-style="plus"] .h-effect.e1 { opacity:.45; transform:scale(1); }
.ubd-hs-marker .h-label { overflow:hidden; text-overflow:ellipsis; }
.ubd-hs-marker[data-paused="true"] *,.ubd-hs-marker[data-paused="true"] *::before,.ubd-hs-marker[data-paused="true"] *::after { animation-play-state:paused!important; }
.ubd-hs-marker[data-motion="false"] *,.ubd-hs-marker[data-motion="false"] *::before,.ubd-hs-marker[data-motion="false"] *::after { animation-play-state:paused!important; transition:none!important; --mx:0px; --my:0px; }
@media(prefers-reduced-motion:reduce) {
    .ubd-hs-marker *,.ubd-hs-marker *::before,.ubd-hs-marker *::after { animation:none!important; transition:none!important; --mx:0px!important; --my:0px!important; }
}
.ubd-hs-picker { direction:rtl; }
.ubd-hs-current { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.ubd-hs-sample { position:relative; display:block; width:86px; height:86px; flex-shrink:0; background:#49444e; border-radius:10px; overflow:hidden; }
.ubd-hs-sample > .ubd-hs-marker { top:50%; left:50%; }
.ubd-hs-legacy-dot { position:absolute; top:50%; left:50%; width:12px; height:12px; border-radius:50%; background:#fff; transform:translate(-50%,-50%); box-shadow:0 0 0 10px #ffffff30,0 0 0 22px #ffffff18; }
.ubd-hs-gallery[hidden],.ubd-hs-picker [hidden] { display:none!important; }
.ubd-hs-gallery { margin-top:12px; padding:12px; border:1px solid #dce5ef; border-radius:12px; }
.ubd-hs-filters { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.ubd-hs-filters input { flex:1; min-width:120px; }
.ubd-hs-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(125px,1fr)); gap:8px; max-height:420px; overflow:auto; padding:4px; }
.ubd-hs-card { display:flex; flex-direction:column; align-items:center; gap:7px; padding:9px; font:inherit; font-size:12px; border:1px solid #dce5ef; background:#fff; color:#24436a; border-radius:10px; }
.ubd-hs-card[aria-pressed="true"] { border-color:#377ed3; background:#eaf2ff; box-shadow:inset 0 0 0 1px #377ed3; }
.ubd-hs-settings { margin-top:12px; border:1px solid #dce5ef; padding:10px; border-radius:10px; }
.ubd-hs-settings > summary { cursor:pointer; font-weight:600; }
.ubd-hs-fields { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:12px; margin-block:12px; }
.ubd-hs-fields label { display:flex; flex-direction:column; gap:5px; font-size:12px; }
.ubd-hs-fields .ubd-hs-toggle { flex-direction:row; align-items:center; }
.ubd-hs-picker button:focus-visible { outline:2px solid #377ed3; outline-offset:2px; }
