.sv-overview{position:relative;isolation:isolate;width:100%;margin:0 0 17px;--sv-gap:7%;color:#056bff}
.sv-phases{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sv-gap)}
.sv-phase{min-width:0;position:relative}
.sv-scene{width:100%;height:auto;aspect-ratio:1.2;overflow:visible;transform-origin:50% 70%;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .6s}
.sv-scene path,.sv-scene circle,.sv-scene rect{stroke-linecap:round;stroke-linejoin:round}
.sv-connection{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:-1}
.sv-route-base,.sv-route-draw{fill:none;stroke-width:1;stroke-linecap:round;vector-effect:non-scaling-stroke}
.sv-route-base{stroke:#7fa7db;opacity:.11}
.sv-route-draw{stroke:url(#sv-route-color);stroke-dasharray:1;stroke-dashoffset:0}
.sv-view-ghost{fill:none;stroke:#528bd1;stroke-width:.85;opacity:.18}
.sv-view-ghost:first-child{opacity:.09}
.sv-view-plane{fill:url(#sv-view-fill);stroke:#5c99e8;stroke-width:.85;stroke-opacity:.42}
.sv-view-content{fill:none;stroke:#4686d5;stroke-width:1;opacity:.55}
.sv-view-corners{fill:none;stroke:#056bff;stroke-width:1.3;opacity:.67}
.sv-optical-ray{fill:none;stroke:#438dec;stroke-width:.8;opacity:.27}
.sv-optical-axis{fill:none;stroke:#438dec;stroke-width:.75;stroke-dasharray:3 6;opacity:.27}
.sv-camera-shadow{fill:#769dcd;opacity:.07}
.sv-camera-depth{fill:url(#sv-camera-side);stroke:#426999;stroke-width:.8}
.sv-camera-top{fill:url(#sv-camera-top);stroke:#99b9e3;stroke-width:.8}
.sv-camera-body{fill:url(#sv-camera-body);stroke:#83a6d5;stroke-width:1}
.sv-camera-grip{fill:#96b6de;opacity:.55}
.sv-camera-seam{fill:none;stroke:#98b6dc;stroke-width:.65;opacity:.6}
.sv-camera-shutter{fill:#2d557f}
.sv-camera-finder{fill:#405f83;stroke:#eaf3ff;stroke-width:1}
.sv-lens-rim{fill:#eaf3ff;stroke:#698ebc;stroke-width:1.1}
.sv-lens-barrel{fill:#304e75;stroke:#597baa;stroke-width:1.1}
.sv-lens-glass{fill:url(#sv-lens-glass);stroke:#89b9f4;stroke-width:.7;transition:filter .5s}
.sv-lens-inner{fill:none;stroke:#76b6fc;stroke-width:.7;opacity:.35}
.sv-lens-reflection{fill:none;stroke:#c7e7ff;stroke-width:2.3;opacity:.7}
.sv-camera-status{fill:#056bff}
.sv-floor-guide{fill:none;stroke:#729acb;stroke-width:.65;opacity:.13}
.sv-build-floor{fill:url(#sv-build-floor)}
.sv-build-wall{fill:url(#sv-build-wall)}
.sv-build-wall-side{fill:url(#sv-build-wall-side)}
.sv-build-object-top{fill:#b8d5ff;fill-opacity:.4}
.sv-build-object-front{fill:#73a9f3;fill-opacity:.22}
.sv-build-object-side{fill:#357edc;fill-opacity:.23}
.sv-model-mesh{fill:none;stroke:#689bdd;stroke-width:.7;opacity:.24}
.sv-build-edges{fill:none;stroke:#6b9edc;stroke-width:1.05;stroke-opacity:.65}
.sv-samples{fill:#056bff}
.sv-sample-column circle{opacity:.75}
.sv-sample-column circle:nth-child(3n+2){opacity:.4}
.sv-object-samples{opacity:.64}
.sv-finish-shadow{fill:#84a7d3;opacity:.11}
.sv-finish-floor{fill:url(#sv-finish-floor)}
.sv-finish-left{fill:url(#sv-finish-left)}
.sv-finish-right{fill:url(#sv-finish-right)}
.sv-finish-skirt{fill:none;stroke:#7099cd;stroke-width:1;opacity:.28}
.sv-finish-edges{fill:none;stroke:#7da6dc;stroke-width:1;stroke-opacity:.58}
.sv-finish-window{fill:#eff7ff;fill-opacity:.8;stroke:#8eafe0;stroke-width:1}
.sv-finish-window-line{fill:none;stroke:#98b8e4;stroke-width:1}
.sv-finish-object-shadow{fill:#5c8ecb;opacity:.1}
.sv-finish-object-top{fill:#b0d0fa;stroke:#aacbf7;stroke-width:.8}
.sv-finish-object-front{fill:#80ade8;stroke:#7da9df;stroke-width:.8}
.sv-finish-object-side{fill:#4789df;stroke:#6b9bd9;stroke-width:.8}
.sv-selected-edge{fill:none;stroke:#056bff;stroke-width:1.8}
.sv-dimension-extension{fill:none;stroke:#056bff;stroke-width:.85;opacity:.42}
.sv-dimension-line{fill:none;stroke:#056bff;stroke-width:1.2;stroke-dasharray:1;stroke-dashoffset:0}
.sv-dimension-ticks{fill:none;stroke:#056bff;stroke-width:1.1}
.sv-endpoint-halo{fill:#056bff;fill-opacity:.08;stroke:#056bff;stroke-opacity:.15;stroke-width:.7}
.sv-endpoint{fill:#056bff;stroke:#eef3fb;stroke-width:1.3}
@media(hover:hover) and (pointer:fine){
  .sv-phase:hover .sv-scene,.sv-phase[data-sv-current] .sv-scene{transform:translateY(-5px);filter:drop-shadow(0 8px 9px #1f66bc0b)}
  .sv-phase:hover .sv-lens-glass,.sv-phase[data-sv-current] .sv-lens-glass{filter:brightness(1.2)}
}
@media(min-width:1500px){.sv-overview{margin-top:-7px;margin-bottom:21px}.sv-scene{max-height:350px}}
@media(max-width:800px){.sv-overview{--sv-gap:5%;margin-bottom:13px}.sv-connection{opacity:.75}}
@media(max-width:560px){
  .sv-overview{height:132px;margin-top:-6px;margin-bottom:21px;--sv-gap:2%}
  .sv-phases{height:100%;align-items:center}
  .sv-scene{height:132px;aspect-ratio:auto;overflow:visible}
  .sv-connection{height:108px;top:12px;opacity:.8}
  .sv-detail{display:none}
  .sv-view-plane,.sv-view-corners,.sv-build-edges,.sv-finish-edges{stroke-width:1.5}
  .sv-optical-ray{stroke-width:1.3;opacity:.36}
  .sv-sample-column circle{r:3.2px}
  .sv-sample-column circle:nth-child(3n+2){display:none}
  .sv-camera-body{stroke-width:1.5}
  .sv-selected-edge{stroke-width:2.8}
  .sv-dimension-line,.sv-dimension-ticks{stroke-width:2}
  .sv-endpoint{r:4px}
}
@media(prefers-reduced-motion:reduce){.sv-scene{transition:none!important;transform:none!important}.sv-lens-glass{transition:none!important}}
