.container-legacy-visual[hidden]{display:none!important}
.container-3d-panel{position:relative;isolation:isolate;overflow:hidden;background:#17201d;color:#e4ece6;font-family:Arial,Helvetica,sans-serif;border-bottom:1px solid #39443e}
.c3-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 22px;border-bottom:1px solid #ffffff12;position:relative;z-index:3;background:#111915}
.c3-toolbar strong{font-size:13px;letter-spacing:.04em}.c3-toolbar small{display:block;font-size:11px;color:#9eaea4;margin-top:5px}
.c3-controls{display:flex;align-items:center;gap:7px}.c3-controls button{cursor:pointer;border:1px solid #ffffff30;border-radius:3px;color:#dbe6dd;background:#ffffff05;font:600 12px/1 Arial;padding:10px 12px;min-height:36px}.c3-controls button:hover{background:#ffffff13;color:#fff}.c3-controls button:focus-visible,.c3-stage:focus-visible{outline:2px solid #d9c835;outline-offset:-4px}
.c3-stage{position:relative;height:450px;perspective:1250px;perspective-origin:50% 42%;touch-action:pan-y;cursor:grab;user-select:none;overflow:hidden;background:radial-gradient(ellipse at 48% 45%,#34463d80,transparent 64%),linear-gradient(#17201d 0%,#1a251f 62%,#24312b 100%)}
.c3-stage.is-dragging{cursor:grabbing}.c3-stage:before{content:"";position:absolute;left:0;right:0;top:66%;height:45%;background:repeating-linear-gradient(90deg,transparent 0 90px,#ffffff08 91px 92px),repeating-linear-gradient(0deg,transparent 0 38px,#ffffff08 39px 40px);transform:perspective(280px) rotateX(40deg);transform-origin:center top;pointer-events:none;opacity:.65}
.c3-shadow{position:absolute;left:50%;top:66%;width:68%;height:45px;transform:translate(-50%,-40%);border-radius:50%;background:#0009;filter:blur(14px);pointer-events:none}
.c3-world{position:absolute;left:47%;top:66%;width:0;height:0;transform-style:preserve-3d;transform:rotateX(-14deg) rotateY(var(--c3-yaw,-28deg));will-change:transform;pointer-events:none}
.c3-model{position:absolute;left:calc(var(--c3-l)/-2);top:calc(-1*var(--c3-h));width:var(--c3-l);height:var(--c3-h);transform-style:preserve-3d}
.c3-face{position:absolute;top:0;left:0;width:var(--c3-l);height:var(--c3-h);transform-style:preserve-3d;background:linear-gradient(100deg,#a82c25,#b4392e 48%,#8a211c);border:2px solid #69221c;box-shadow:inset 0 0 18px #0002;backface-visibility:visible}
.c3-front{transform:translateZ(calc(var(--c3-d)/2))}.c3-back{transform:rotateY(180deg) translateZ(calc(var(--c3-d)/2));background:linear-gradient(90deg,#74221c,#a22b23)}
.c3-end{width:var(--c3-d);left:calc((var(--c3-l) - var(--c3-d))/2);background:linear-gradient(110deg,#a32c24,#7e211c)}
.c3-right{transform:rotateY(90deg) translateZ(calc(var(--c3-l)/2))}.c3-left{transform:rotateY(-90deg) translateZ(calc(var(--c3-l)/2))}
.c3-face:before{content:"";position:absolute;left:-4px;right:-4px;top:-5px;height:9px;background:linear-gradient(#686d63,#3d443d 40%,#202b25);border:1px solid #899083;transform:translateZ(2px);box-shadow:0 2px 2px #0006}
.c3-face:after{content:"";position:absolute;left:-3px;right:-3px;bottom:-7px;height:12px;background:linear-gradient(#4b534b,#1c2821);border:1px solid #111a15;transform:translateZ(2px)}
.c3-floor{position:absolute;left:0;top:calc(var(--c3-h) - var(--c3-d)/2);width:var(--c3-l);height:var(--c3-d);transform:rotateX(90deg);background:repeating-linear-gradient(90deg,#59221d 0 44px,#4b1d18 45px 47px);border:3px solid #5c2922;box-shadow:inset 0 0 25px #0008;backface-visibility:visible}
.c3-ribs{position:absolute;inset:3px 0 6px;display:flex;justify-content:space-evenly;align-items:stretch;transform:translateZ(3px)}
.c3-rib{display:block;flex:0 0 6px;background:linear-gradient(90deg,#74261d,#dd665045 30%,#c24a35 55%,#82281d);border-left:1px solid #f09b6740;border-right:1px solid #59251b;box-shadow:2px 0 2px #0003}
.c3-stencil{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%) translateZ(5px);white-space:nowrap;font:bold clamp(11px,1.7vw,20px)/1 Arial;letter-spacing:.09em;color:#e7d9b9a6;text-shadow:0 1px #63241c;pointer-events:none}
.c3-door-seam{position:absolute;left:50%;top:7px;bottom:6px;width:2px;background:#4a1a16;transform:translateZ(5px)}
.c3-door-seam:before,.c3-door-seam:after{content:"";position:absolute;top:42%;width:10px;height:6px;border:2px solid #26322a;background:#839082}.c3-door-seam:before{right:6px}.c3-door-seam:after{left:7px}
.c3-person{position:absolute;right:6%;bottom:34%;height:var(--c3-person-h);width:calc(var(--c3-person-h)*.3);color:#bcc8b2;pointer-events:none;filter:drop-shadow(3px 1px 2px #0005)}.c3-person svg{display:block;height:100%;width:100%;overflow:visible}.c3-person-label{position:absolute;bottom:-29px;left:50%;transform:translateX(-50%);font:600 10px/1.3 Arial;text-align:center;white-space:nowrap;color:#acbcb1}
.c3-readout{padding:12px 22px;display:flex;justify-content:space-between;gap:18px;font:400 12px/1.6 Arial;background:#111915;border-top:1px solid #ffffff14;color:#aebfb2}.c3-readout strong{color:#e2e9df;font-weight:600}.c3-readout span:last-child{text-align:right;font-size:11px;color:#91a598}
.c3-instructions{position:absolute;bottom:15px;left:20px;color:#a8baad;font-size:11px;pointer-events:none}.c3-instructions:before{content:"↔";margin-right:8px;font-size:15px;color:#d9c835}.c3-status{position:absolute;left:22px;top:17px;font-size:10px;letter-spacing:.1em;color:#9eb2a4;text-transform:uppercase;pointer-events:none}
@media(max-width:640px){.c3-toolbar{padding:13px 12px;gap:8px;align-items:flex-start}.c3-toolbar strong{font-size:11px}.c3-toolbar small{font-size:10px;line-height:1.5;max-width:165px}.c3-controls{gap:4px}.c3-controls button{padding:8px;min-width:32px}.c3-controls button[data-c3-reset]{font-size:10px}.c3-stage{height:310px;perspective:850px}.c3-status{left:12px;font-size:9px}.c3-person{right:5%}.c3-instructions{left:12px;font-size:10px}.c3-readout{padding:11px 12px;flex-direction:column;gap:4px;font-size:11px}.c3-readout span:last-child{text-align:left;font-size:10px}.c3-rib{flex-basis:4px}.c3-face:before{height:6px;top:-3px}.c3-face:after{height:8px;bottom:-5px}.c3-stencil{font-size:10px;letter-spacing:.035em}}
@media(prefers-reduced-motion:reduce){.c3-world{will-change:auto}}

.container-3d-panel[hidden]{display:none!important}

/* Keep the structural frame within the stated outside dimensions. */
.c3-model,.c3-face,.c3-floor{box-sizing:border-box}.c3-face:before{left:0;right:0;top:0;height:7px;transform:translateZ(0)}.c3-face:after{left:0;right:0;bottom:0;height:10px;transform:translateZ(0)}
.c3-reference-world{position:absolute;left:47%;top:66%;width:0;height:0;transform-style:preserve-3d;transform:rotateX(-14deg);pointer-events:none}
.c3-reference-world .c3-person{left:calc(12.5 * var(--c3-unit));right:auto;top:calc(-1 * var(--c3-person-h));bottom:auto;width:calc(var(--c3-person-h) * .3272727273);height:var(--c3-person-h);transform:translateX(-50%);transform-style:preserve-3d;filter:none}
.c3-reference-world .c3-person svg{width:100%;height:100%;display:block;overflow:visible}.c3-reference-world .c3-person:after{content:"";position:absolute;left:50%;top:100%;width:120%;height:7px;background:#0006;border-radius:50%;transform:translate(-50%,-30%);filter:blur(3px)}
.c3-reference-world .c3-person-label{font-size:11px;color:#b9c8bd;bottom:-28px}
@media(max-width:640px){.c3-face:before{height:5px;top:0}.c3-face:after{height:6px;bottom:0}.c3-reference-world .c3-person-label{font-size:9px;bottom:-24px}}

/* More separation and a brighter reference worker, without changing the 6 ft scale. */
.c3-world,.c3-reference-world{left:43%}.c3-reference-world .c3-person{left:calc(16 * var(--c3-unit))}.c3-reference-world .c3-person:before{content:"";position:absolute;inset:-12% -40% -5%;background:radial-gradient(ellipse,#e1eadb23,transparent 70%);filter:blur(10px);z-index:-1;pointer-events:none}.c3-reference-world .c3-person-label{color:#e4eee5;font-weight:700;text-shadow:0 1px 3px #000}

@media(max-width:640px){.c3-reference-world .c3-person-label{left:auto;right:-2px;transform:none;text-align:right}}

/* Paint each solid wall and its details as one surface to prevent 3D plane slicing. */
.c3-face{transform-style:flat}.c3-ribs{transform:none}.c3-stencil{transform:translate(-50%,-50%)}.c3-door-seam{transform:none}
