.visibility-stack{border-top:2px solid var(--ink);grid-template-columns:minmax(20rem,.72fr) minmax(30rem,1fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.visibility-stack-visual{min-width:0;padding-top:.1rem;position:sticky;top:7rem}.visibility-stack-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-block:.85rem;display:flex}.visibility-stack-heading p,.visibility-stack-heading span{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:700}.visibility-stack-heading span{color:var(--accent-dark);font-size:.57rem}.visibility-model{isolation:isolate;perspective:70rem;min-height:31rem;position:relative;overflow:hidden}.visibility-model-grid{z-index:-2;background-color:#0000;background-image:linear-gradient(#07111f0b 1px,#0000 1px),linear-gradient(90deg,#07111f0b 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:1.25rem 1.25rem;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 2%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(#0000 2%,#000 18% 82%,#0000 100%)}.visibility-model:before,.visibility-model:after{z-index:-1;content:"";pointer-events:none;position:absolute}.visibility-model:before{border:1px solid #007a6424;border-radius:50%;width:15rem;height:15rem;top:7rem;left:50%;transform:translate(-50%);box-shadow:0 0 0 3rem #007a6406}.visibility-model:after{background:linear-gradient(transparent, var(--accent) 18%, var(--accent) 82%, transparent);width:1px;top:5rem;bottom:5.4rem;left:50%}.visibility-layers{height:25rem;transform-style:preserve-3d;margin-top:1rem;position:relative;transform:rotate(-1deg)}.visibility-layer{--layer-y:0rem;z-index:1;width:min(82%,25rem);height:6.2rem;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transform:translate3d(-50%, var(--layer-y), 0) rotateX(58deg) rotateZ(-1deg);transform-origin:50%;transform-style:preserve-3d;background:linear-gradient(90deg,#007a640a,#0000 62%),#f7fafdf0;border:1px solid #22304747;border-radius:.2rem;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.85rem 1rem 1.25rem;transition:border-color .24s,background-color .24s,box-shadow .24s,color .24s,transform .42s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;top:2.2rem;left:50%;box-shadow:0 1.2rem 1.7rem #07111f12}.visibility-layer:before,.visibility-layer:after{content:"";pointer-events:none;position:absolute}.visibility-layer:before{border:1px solid #007a641f;inset:.55rem}.visibility-layer:after{transform-origin:0 0;background:#c9d3e17a;border:1px solid #2230472e;border-top:0;height:.38rem;bottom:-.45rem;left:.35rem;right:-1px;transform:skew(-45deg)}.visibility-layer-1{--layer-y:0rem}.visibility-layer-2{--layer-y:3.15rem}.visibility-layer-3{--layer-y:6.3rem}.visibility-layer-4{--layer-y:9.45rem}.visibility-layer-5{--layer-y:12.6rem}.visibility-layer[aria-pressed=true]{z-index:3;border-color:var(--accent);transform:translate3d(-54%, calc(var(--layer-y) - .8rem), 2.5rem) rotateX(52deg) rotateZ(-1deg);background:linear-gradient(90deg,#4ae0be33,#0000 68%),#fffffffa;box-shadow:0 1.8rem 2.6rem #07111f24,inset 0 0 0 1px #4ae0be2e}.visibility-layer>span{color:var(--accent-dark);letter-spacing:.08em;font-size:.6rem;font-weight:750}.visibility-layer>strong{font-family:var(--display);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.82rem,1.15vw,1rem);font-weight:600;line-height:1.1;overflow:hidden}.visibility-layer>i{border:1px solid var(--accent);background:var(--surface);border-radius:50%;width:.46rem;height:.46rem;box-shadow:0 0 #007a6447}.visibility-layer[aria-pressed=true]>i{background:var(--accent);animation:2.8s ease-out infinite visibility-layer-pulse}.visibility-signal-rail{z-index:4;pointer-events:none;background:linear-gradient(#0000,#007a648c,#0000);width:1px;height:14rem;position:absolute;top:7rem;right:8%}.visibility-signal-rail i{background:var(--accent);opacity:0;border-radius:50%;width:.34rem;height:.34rem;animation:4.8s linear infinite visibility-signal-travel;position:absolute;left:50%;transform:translate(-50%,-50%)}.visibility-signal-rail i:nth-child(2){animation-delay:-1.6s}.visibility-signal-rail i:nth-child(3){animation-delay:-3.2s}.visibility-model-caption{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:1rem;margin:0;padding-top:.8rem;display:flex;position:absolute;bottom:1.15rem;left:0;right:0}.visibility-model-caption span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:700}.visibility-model-caption strong{color:var(--accent-dark);font-family:var(--display);text-align:right;font-size:.82rem;font-weight:650}.visibility-stack-list{min-width:0}.visibility-stack-item{border-bottom:1px solid var(--line);transition:border-color .2s}.visibility-stack-item button{width:100%;min-height:13.5rem;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:2.5rem minmax(0,1fr) .65rem;align-items:start;gap:clamp(1.25rem,3vw,2.4rem);padding:2.35rem 0;display:grid;position:relative}.visibility-stack-item button:before{content:"";background:var(--accent);width:0;height:1px;transition:width .42s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-1px;right:0}.visibility-stack-item[data-active=true] button:before{width:100%}.visibility-item-index{color:var(--muted);letter-spacing:.08em;padding-top:.15rem;font-size:.65rem;font-weight:750;transition:color .18s}.visibility-item-copy{gap:.7rem;display:grid}.visibility-item-context{color:var(--accent-dark);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:750}.visibility-item-copy strong{max-width:20ch;font-family:var(--display);text-wrap:balance;font-size:clamp(1.65rem,2.75vw,2.45rem);font-weight:500;line-height:1.08;transition:color .18s,transform .3s}.visibility-item-copy>span:last-child{max-width:44rem;color:var(--muted);font-size:.9rem;line-height:1.7}.visibility-item-state{border:1px solid var(--line);border-radius:50%;width:.55rem;height:.55rem;margin-top:.2rem;transition:background-color .18s,border-color .18s,box-shadow .18s}.visibility-stack-item[data-active=true] .visibility-item-index,.visibility-stack-item[data-active=true] .visibility-item-copy strong{color:var(--accent-dark)}.visibility-stack-item[data-active=true] .visibility-item-copy strong{transform:translate(.35rem)}.visibility-stack-item[data-active=true] .visibility-item-state{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 .3rem #007a6414}@keyframes visibility-layer-pulse{0%{box-shadow:0 0 #007a6447}70%,to{box-shadow:0 0 0 .65rem #007a6400}}@keyframes visibility-signal-travel{0%{opacity:0;top:0}12%,82%{opacity:.75}to{opacity:0;top:100%}}@media (max-width:62rem){.visibility-stack{grid-template-columns:1fr;gap:2rem}.visibility-stack-visual{position:static}.visibility-model{min-height:28rem}.visibility-layers{width:min(100%,34rem);margin-inline:auto}.visibility-stack-item button{min-height:auto}}@media (max-width:40rem){.visibility-stack-heading{align-items:flex-start}.visibility-stack-heading span{text-align:right}.visibility-model{min-height:24rem}.visibility-layers{height:20.5rem}.visibility-layer{width:86%;height:5.2rem;padding-inline:.75rem;top:1.1rem}.visibility-layer-1{--layer-y:0rem}.visibility-layer-2{--layer-y:2.55rem}.visibility-layer-3{--layer-y:5.1rem}.visibility-layer-4{--layer-y:7.65rem}.visibility-layer-5{--layer-y:10.2rem}.visibility-signal-rail{height:11rem;top:5rem;right:4%}.visibility-model-caption{bottom:.8rem}.visibility-stack-item button{grid-template-columns:1.8rem minmax(0,1fr) .55rem;gap:.8rem;padding-block:1.65rem}.visibility-item-copy strong{font-size:1.75rem}.visibility-stack-item[data-active=true] .visibility-item-copy strong{transform:none}}@media (prefers-reduced-motion:reduce){.visibility-layer,.visibility-stack-item button:before,.visibility-item-copy strong,.visibility-item-state{transition:none}.visibility-layer>i,.visibility-signal-rail i{animation:none}.visibility-signal-rail i:nth-child(2){opacity:.55;top:50%}.visibility-signal-rail i:nth-child(3){opacity:.4;top:100%}.visibility-signal-rail i:first-child{opacity:.4;top:0}}
