/* Scoped reusable component. No site, tracking or business data dependencies. */
.dc{--dc-paper:#f4f3ef;--dc-ink:#1c2b2e;--dc-accent:#81382d;--dc-x:50%;--dc-y:50%;--dc-radius:80px;max-inline-size:100%;color:var(--dc-ink);font:inherit}
.dc *{box-sizing:border-box}.dc [hidden]{display:none!important}.dc__help,.dc__status{line-height:1.6;overflow-wrap:anywhere}.dc__stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:100%;background:var(--dc-paper);border-radius:24px}
.dc__view{min-width:0;margin:0}.dc__view img{display:block;width:100%;height:auto;aspect-ratio:var(--dc-aspect,3/2);object-fit:contain;user-select:none;-webkit-user-drag:none}.dc__caption{padding:.65rem;line-height:1.5}
.dc__ring{display:none;pointer-events:none}.dc__controls[hidden]{display:none!important}.dc__controls{margin:1rem 0 0;padding:1rem;border:1px solid #728987;border-radius:20px;min-width:0;background:#edf1ed}
.dc__controls legend{padding:0 .4rem;font-weight:800}.dc__modes,.dc__actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.dc button{font:inherit;min-height:48px;padding:.7rem 1rem;border:1px solid #536b6b;border-radius:999px;background:var(--dc-paper);color:var(--dc-ink);cursor:pointer;white-space:normal;max-width:100%}
.dc button[aria-pressed=true]{background:var(--dc-ink);color:#fff}.dc__axes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0;border:0;padding:0;min-width:0}.dc__axes label{display:block;line-height:1.5;font-weight:700;min-width:0}
.dc input[type=range]{display:block;min-height:48px;width:100%;margin:.4rem 0 0;accent-color:var(--dc-accent);cursor:ew-resize}.dc__axes:disabled{opacity:.65}.dc__position{font-variant-numeric:tabular-nums;line-height:1.5}.dc :focus-visible{outline:3px solid var(--dc-accent);outline-offset:4px}.dc__failure{padding:1.5rem;border:1px dashed var(--dc-accent);line-height:1.5}
.dc--enhanced .dc__stage{position:relative;display:block;aspect-ratio:var(--dc-aspect,3/2);overflow:hidden;isolation:isolate;touch-action:pan-y pinch-zoom;cursor:crosshair}
.dc--enhanced .dc__view{position:absolute;inset:0}.dc--enhanced .dc__view img{width:100%;height:100%;object-fit:contain}.dc--enhanced .dc__view--b{clip-path:circle(var(--dc-radius) at var(--dc-x) var(--dc-y));opacity:0;pointer-events:none}
.dc--enhanced.dc--active .dc__view--b{opacity:1}.dc--enhanced .dc__caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dc--enhanced.dc--active .dc__ring{display:block;position:absolute;left:var(--dc-x);top:var(--dc-y);width:calc(var(--dc-radius)*2);height:calc(var(--dc-radius)*2);transform:translate(-50%,-50%);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #17393c;z-index:2}
.dc--enhanced.dc--full-b .dc__view--b{clip-path:none;opacity:1}.dc--enhanced.dc--full-a .dc__view--b{opacity:0}.dc--full-a .dc__ring,.dc--full-b .dc__ring{display:none!important}.dc--enhanced .dc__static-help{display:none}
.dc--soft-mask .dc__view--b{clip-path:none;-webkit-mask-image:radial-gradient(circle var(--dc-radius) at var(--dc-x) var(--dc-y),#000 0%,#000 78%,transparent 100%);mask-image:radial-gradient(circle var(--dc-radius) at var(--dc-x) var(--dc-y),#000 0%,#000 78%,transparent 100%)}
.dc--soft-mask.dc--full-b .dc__view--b{-webkit-mask-image:none;mask-image:none}
@media(max-width:600px){.dc__stage,.dc__axes{grid-template-columns:minmax(0,1fr)}.dc__controls{padding:.85rem}.dc__modes button{flex:1 1 6rem}}
@media(prefers-reduced-motion:reduce){.dc *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
