/* Shared by the main site and the standalone/embedded estimate page. */
:root { --arketon-cad-ready: 1; }

.arketon-cad-layer {
  all: initial;
  position: fixed;
  inset: 0;
  display: none;
  overflow: hidden;
  pointer-events: none !important;
  user-select: none;
  z-index: 2147483600;
}
.arketon-cad-adaptive { mix-blend-mode: difference; }
.arketon-cad-part {
  all: initial;
  position: absolute;
  box-sizing: border-box;
  display: block;
  pointer-events: none !important;
}
.arketon-cad-left, .arketon-cad-right {
  top: var(--y);
  height: 1px;
}
.arketon-cad-left { left: 0; width: max(0px, calc(var(--x) - 15px)); }
.arketon-cad-right { left: calc(var(--x) + 15px); right: 0; }
.arketon-cad-up, .arketon-cad-down {
  left: var(--x);
  width: 1px;
}
.arketon-cad-up { top: 0; height: max(0px, calc(var(--y) - 15px)); }
.arketon-cad-down { top: calc(var(--y) + 15px); bottom: 0; }
.arketon-cad-box {
  left: calc(var(--x) - 10px);
  top: calc(var(--y) - 10px);
  width: 20px;
  height: 20px;
  border: 1px solid transparent;
}
.arketon-cad-adaptive .arketon-cad-part:not(.arketon-cad-box) { background: #fff; }
.arketon-cad-adaptive .arketon-cad-box {
  border-color: #fff;
}

@media (any-hover: hover) and (any-pointer: fine) and (forced-colors: none) {
  .arketon-cad-layer[data-visible] { display: block; }
  html[data-arketon-cad-active], html[data-arketon-cad-active] * { cursor: none !important; }
}
@media print { .arketon-cad-layer { display: none !important; } }
