/* Lumise drawControls skin: solid purple frame, circular midpoints, square corner actions. */
.cwir-reference-images,.cwir-reference-controls{
 inset:0;pointer-events:none;
 --cwir-reference-fade:28px;
 --cwir-reference-boundary-mask:linear-gradient(to right,transparent,#000 var(--cwir-reference-fade),#000 calc(100% - var(--cwir-reference-fade)),transparent),linear-gradient(to bottom,transparent,#000 var(--cwir-reference-fade),#000 calc(100% - var(--cwir-reference-fade)),transparent);
 -webkit-mask-image:var(--cwir-reference-boundary-mask);mask-image:var(--cwir-reference-boundary-mask);
 -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
 -webkit-mask-size:var(--cwir-reference-mask-size,100% 100%);mask-size:var(--cwir-reference-mask-size,100% 100%);
 -webkit-mask-position:var(--cwir-reference-mask-position,0px 0px);mask-position:var(--cwir-reference-mask-position,0px 0px);
 -webkit-mask-composite:source-in;mask-composite:intersect;
}
.cwir-reference-images{position:absolute;overflow:hidden}
.cwir-reference-images{z-index:2}
.cwir-reference-controls{position:fixed;overflow:hidden;z-index:19}
.cwir-reference-images[hidden],.cwir-reference-controls[hidden],.cwir-reference-ui[hidden]{display:none}
.cwir-reference-body{position:absolute;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;cursor:move;transform-origin:center}
.cwir-reference-body.is-pinned{pointer-events:none;cursor:inherit}
.cwir-reference-image{display:block;width:100%;height:100%;object-fit:fill;transform-origin:center;pointer-events:none;-webkit-user-drag:none}
#cwir-reference-ink{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;background:transparent}
.cwir-reference-outline{position:absolute;box-sizing:border-box;border:1px solid #8065d8;border-radius:0;transform-origin:center;pointer-events:none;opacity:0}
.cwir-reference-outline.is-visible{opacity:1}
.cwir-reference-controls button{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:0;transform:translate(-50%,-50%);touch-action:none;pointer-events:none;background:transparent;color:#5c39cd;opacity:0;user-select:none;-webkit-user-select:none;cursor:pointer}
.cwir-reference-controls button.is-visible{opacity:1;pointer-events:auto}
.cwir-reference-controls button:focus-visible{outline:2px solid #8065d8;outline-offset:-3px;border-radius:9px}
.cwir-reference-controls .cwir-reference-action::before{content:"";position:absolute;inset:7px;border:1px solid #ded5f4;border-radius:8.4px;background:#fff;box-shadow:0 2px 6px #3e28651a;pointer-events:none}
.cwir-reference-controls svg{position:relative;width:21px;height:21px;pointer-events:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cwir-reference-controls .cwir-reference-delete{color:#ec5966}
.cwir-reference-controls .cwir-reference-delete::before{background:#fffafb;border-color:#f2dce1}
.cwir-reference-handle-middle span{width:8px;height:8px;box-sizing:border-box;border:1.2px solid #8065d8;border-radius:50%;background:#fff;pointer-events:none}
.cwir-reference-controls .cwir-reference-pin{color:#98949f}
.cwir-reference-controls .cwir-reference-pin.is-pinned{color:#5c39cd}
.cwir-reference-controls .cwir-reference-pin.is-pinned::before{background:#f1ebff;border-color:#b9a5ec}
.cwir-reference-resize{cursor:nwse-resize!important}
.cwir-reference-handle-middle[data-corner=mt],.cwir-reference-handle-middle[data-corner=mb]{cursor:ns-resize}
.cwir-reference-handle-middle[data-corner=ml],.cwir-reference-handle-middle[data-corner=mr]{cursor:ew-resize}
.cwir-reference-opacity-control{position:absolute;display:flex;box-sizing:border-box;height:40px;background:#fffffff5;border:1px solid #e7e1f4;border-radius:9px;box-shadow:0 2px 6px #3e286512;opacity:0;pointer-events:none}
.cwir-reference-opacity-control.is-visible{opacity:1;pointer-events:auto}
.cwir-reference-controls .cwir-reference-opacity-toggle{position:static;flex:0 0 74px;width:74px;min-width:74px;height:38px;min-height:38px;gap:7px;border-radius:8px;transform:none;font-size:11px;color:#635b73}
.cwir-reference-opacity-arrow{font-size:20px;line-height:1}
.cwir-reference-opacity-toggle[aria-expanded=true] .cwir-reference-opacity-arrow{transform:rotate(180deg)}
label.cwir-reference-opacity{display:flex;flex:1;min-width:0;align-items:center;gap:7px;box-sizing:border-box;height:38px;margin:0;padding:3px 8px 3px 0;font-size:11px;color:#635b73;opacity:0;pointer-events:none}
label.cwir-reference-opacity[hidden]{display:none}
label.cwir-reference-opacity.is-visible{opacity:1;pointer-events:auto}
label.cwir-reference-opacity>span{white-space:nowrap}
label.cwir-reference-opacity input{min-width:0;width:100%;height:32px;margin:0;padding:0;accent-color:#8065d8;touch-action:none}
label.cwir-reference-opacity output{min-width:29px;text-align:right;font-size:11px;font-variant-numeric:tabular-nums}
