/* 3D viewer (Blender scenes as GLB) */
.v3d{margin:var(--s5) 0;border:1px solid var(--rule);border-radius:var(--r);background:var(--plate);overflow:hidden}
.v3d-stage{position:relative;aspect-ratio:16/10;background:#1a1d22}
.v3d-stage.is-live{touch-action:none}
.v3d-stage>img{width:100%;height:100%;object-fit:contain;display:block}
.v3d-stage.is-live>img{display:none}
.v3d-stage canvas{width:100%!important;height:100%!important;display:block;touch-action:none}
.v3d-bar{display:flex;flex-wrap:wrap;gap:var(--s2);align-items:center;padding:var(--s3)}
.v3d-bar button{min-height:44px;padding:0 var(--s4);border:1px solid var(--line);border-radius:var(--r-s);background:var(--paper);color:var(--ink);font-weight:600;cursor:pointer}
.v3d-bar button[data-v3d-load]{background:var(--sel-bg);color:var(--sel-fg);border-color:var(--sel-bg)}
.v3d-bar button[aria-pressed=true]{background:var(--sel-bg);color:var(--sel-fg)}
.v3d-bar button:disabled{opacity:.45;cursor:not-allowed}
.v3d-status{flex:1 1 220px;color:var(--ink-2);font-size:var(--t14);margin:0}
.v3d-facts{padding:0 var(--s3) var(--s3);color:var(--ink-3);font-size:var(--t13);margin:0}
.v3d-none{margin:var(--s4) 0;padding:var(--s3) var(--s4);border:1px dashed var(--line);border-radius:var(--r);color:var(--ink-2);font-size:var(--t14)}
.v3d-item{margin-top:var(--s6)}.v3d-item h3{margin-bottom:var(--s2)}
