/* 3D PCB showcase — boxless product stage, side rail controls; inherits site theme vars */
#pcb3d-showcase{scroll-margin-top:6rem;padding:4.5rem 1.5rem 3.5rem}
#pcb3d-showcase .p3-inner{max-width:76rem;margin:0 auto}
#pcb3d-showcase .p3-kicker{font-family:var(--font-mono,ui-monospace,monospace);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--primary);margin:0 0 .6rem}
#pcb3d-showcase h2{font-size:clamp(1.6rem,3.2vw,2.2rem);font-weight:700;margin:0 0 .35rem;color:var(--foreground)}
#pcb3d-showcase .p3-sub{color:var(--muted-foreground,#8a93a6);margin:0;font-size:.98rem}
#pcb3d-showcase .p3-stage{position:relative;margin-top:.5rem}
#pcb3d-showcase model-viewer{width:100%;height:min(76vh,660px);display:block;background:transparent;--poster-color:transparent;outline:none}
/* ---- side rail ---- */
#pcb3d-showcase .p3-rail{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-end;gap:1.05rem;z-index:4}
#pcb3d-showcase .p3-v{appearance:none;border:0;background:none;cursor:pointer;text-align:right;
  font-family:var(--font-mono,ui-monospace,monospace);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted-foreground,#8a93a6);padding:.15rem 0;display:flex;align-items:center;gap:.6rem;transition:color .18s}
#pcb3d-showcase .p3-v::after{content:"";width:1.5rem;height:2px;background:var(--border);transition:all .18s}
#pcb3d-showcase .p3-v:hover{color:var(--foreground)}
#pcb3d-showcase .p3-v.p3-on{color:var(--primary)}
#pcb3d-showcase .p3-v.p3-on::after{background:var(--primary);width:2.5rem}
#pcb3d-showcase .p3-railsep{width:2.5rem;height:1px;background:var(--border)}
#pcb3d-showcase .p3-info-btn{appearance:none;border:0;background:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;
  font-family:var(--font-mono,ui-monospace,monospace);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--muted-foreground,#8a93a6);transition:color .18s}
#pcb3d-showcase .p3-info-btn:hover{color:var(--foreground)}
#pcb3d-showcase .p3-info-btn[aria-expanded="true"]{color:var(--primary)}
/* ---- meta caption ---- */
#pcb3d-showcase .p3-meta{position:absolute;left:0;bottom:.3rem;z-index:3;
  font-family:var(--font-mono,ui-monospace,monospace);font-size:.72rem;letter-spacing:.14em;color:var(--muted-foreground,#8a93a6)}
#pcb3d-showcase .p3-note{margin-left:1rem;font-size:.63rem;letter-spacing:.1em;opacity:.62;font-style:italic}
/* ---- info popover ---- */
#pcb3d-showcase .p3-panel{display:none;position:absolute;top:6%;right:6.2rem;width:min(400px,calc(100% - 8rem));max-height:86%;overflow:auto;
  padding:1.15rem 1.3rem;border:1px solid var(--border);border-radius:.9rem;
  background:color-mix(in oklab,var(--card) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 14px 40px rgb(0 0 0/.35);z-index:6}
#pcb3d-showcase .p3-panel.p3-open{display:block;animation:p3fade .22s ease}
@keyframes p3fade{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
#pcb3d-showcase .p3-panel h3{margin:.2rem 0 .5rem;font-size:1.02rem;color:var(--foreground)}
#pcb3d-showcase .p3-panel p{margin:.35rem 0;color:var(--muted-foreground,#97a0b5);font-size:.92rem;line-height:1.55}
#pcb3d-showcase .p3-specs{display:grid;grid-template-columns:1fr;gap:.5rem;margin:.9rem 0 .2rem;padding:0;list-style:none}
#pcb3d-showcase .p3-specs li{font-size:.85rem;color:var(--foreground);display:flex;gap:.5rem;align-items:baseline}
#pcb3d-showcase .p3-specs li::before{content:"▪";color:var(--primary);font-size:.7rem}
#pcb3d-showcase .p3-badge{display:inline-block;font-family:var(--font-mono,ui-monospace,monospace);font-size:.72rem;
  border:1px solid var(--primary);color:var(--primary);border-radius:99px;padding:.18rem .7rem;margin-bottom:.6rem;letter-spacing:.06em}
#pcb3d-showcase .p3-close{position:absolute;top:.55rem;right:.6rem;appearance:none;border:0;background:transparent;color:var(--muted-foreground,#8a93a6);cursor:pointer;padding:.25rem;border-radius:.4rem;line-height:0}
#pcb3d-showcase .p3-close:hover{color:var(--foreground)}
/* ---- mobile: rail drops below the stage ---- */
@media (max-width:760px){
  #pcb3d-showcase .p3-rail{position:static;transform:none;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.1rem;margin-top:.6rem}
  #pcb3d-showcase .p3-v{text-align:center}
  #pcb3d-showcase .p3-v::after{display:none}
  #pcb3d-showcase .p3-railsep{display:none}
  #pcb3d-showcase .p3-meta{position:static;display:block;text-align:center;margin-top:.5rem}
  #pcb3d-showcase .p3-panel{right:1rem;left:1rem;width:auto}
  #pcb3d-showcase model-viewer{height:58vh}
}
