/* Bride Era R14.7.184 · Estúdio 3D (interface sobre o palco 3D, estilo jogo) */
.e3d{position:relative;margin:-6px 0 0}
.e3d-stage{scroll-margin-top:78px;position:relative;height:calc(100dvh - 150px);min-height:440px;border-radius:14px;overflow:hidden;background:#1d1a19;box-shadow:0 18px 50px rgba(40,26,24,.22);user-select:none;-webkit-user-select:none;touch-action:none}
.e3d-stage:fullscreen{border-radius:0;height:100vh!important}
.e3d-host,.e3d-host canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}
.e3d-stage.colocando .e3d-host canvas{cursor:crosshair!important}

/* vidro fosco para os painéis */
.e3d-top,.e3d-cat,.e3d-cfg,.e3d-sel,.e3d-props,.e3d-base>div,.e3d-hint,.e3d-passeio>button,.e3d-passeio-dica,.e3d-demo{background:rgba(28,22,21,.62);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);color:#F7EFEA;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.e3d button{font:inherit;color:inherit;cursor:pointer}

.e3d-top{position:absolute;left:12px;right:12px;top:12px;z-index:5;display:flex;align-items:center;gap:10px;padding:7px 8px 7px 14px;border-radius:12px}
.e3d-chip{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}
.e3d-chip b{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.15rem;font-weight:600;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e3d-chip span{font-size:.7rem;opacity:.72;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.e3d-modos{display:flex;background:rgba(255,255,255,.08);border-radius:10px;padding:3px;gap:2px;flex:0 0 auto}
.e3d-modos button{border:0;background:transparent;padding:7px 12px;border-radius:8px;font-size:.84rem;font-weight:600;white-space:nowrap}
.e3d-modos button.on{background:#F7EFEA;color:#3A2B28;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.e3d-acoes{display:flex;gap:5px;flex:0 0 auto}
.e3d-acoes button{width:36px;height:36px;border-radius:9px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);font-size:1rem}
.e3d-acoes button:hover,.e3d-modos button:not(.on):hover{background:rgba(255,255,255,.14)}

/* catálogo (modo construção) */
.e3d-cat,.e3d-cfg{position:absolute;top:70px;bottom:62px;z-index:6;width:292px;border-radius:14px;display:flex;flex-direction:column;padding:12px;gap:9px}
.e3d-cat{left:12px}.e3d-cfg{right:12px;overflow:auto}
.e3d-cat-h{display:flex;align-items:center;justify-content:space-between}
.e3d-cat-h b{font-size:.92rem;letter-spacing:.02em}
.e3d-x{width:28px;height:28px;border-radius:8px;border:0;background:rgba(255,255,255,.08)}
.e3d-cat input,.e3d-cfg select,.e3d-cfg input:not([type=range]):not([type=checkbox]):not([type=color]),.e3d-props input:not([type=color]){width:100%;background:rgba(255,255,255,.1)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;padding:8px 10px!important;font-size:.85rem!important;min-height:0!important}
.e3d-cat input::placeholder{color:rgba(255,255,255,.55)}
.e3d-cfg select option{color:#222}
.e3d-grupos{display:flex;gap:5px;overflow-x:auto;scrollbar-width:none;flex:0 0 auto;padding-bottom:2px}
.e3d-grupos::-webkit-scrollbar{display:none}
.e3d-grupos button{flex:0 0 auto;border:1px solid rgba(255,255,255,.16);background:transparent;border-radius:999px;padding:5px 10px;font-size:.74rem;white-space:nowrap}
.e3d-grupos button.on{background:#E8A6A0;border-color:#E8A6A0;color:#2C1E1C;font-weight:700}
.e3d-itens{flex:1;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:7px;align-content:start;padding-right:2px;scrollbar-width:thin}
.e3d-item{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;padding:10px 6px 8px;border-radius:11px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));transition:transform .12s,background .12s}
.e3d-item:hover{transform:translateY(-2px);background:rgba(255,255,255,.16)}
.e3d-item .e3d-ic{font-size:1.6rem;line-height:1.1;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35))}
.e3d-item b{font-size:.72rem;font-weight:600;line-height:1.15}
.e3d-item small{font-size:.62rem;opacity:.6}
.e3d-dica{font-size:.7rem;opacity:.7;margin:0;line-height:1.4}

/* painel de ambiente */
.e3d-cfg h4{margin:6px 0 0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
.e3d-f{display:flex;flex-direction:column;gap:5px;font-size:.78rem;margin:0}
.e3d-f>span{display:flex;justify-content:space-between;opacity:.9}
.e3d-f input[type=range]{width:100%;accent-color:#E8A6A0}
.e3d-f input[type=color]{width:100%;height:34px;border:0;background:transparent;padding:0}
.e3d-hs{display:flex;justify-content:space-between;font-size:.62rem;opacity:.6}.e3d-hs i{font-style:normal}
.e3d-chk{display:flex;gap:8px;align-items:center;font-size:.78rem}
.e3d-cfg-acoes{display:grid;gap:6px;margin-top:6px}
.e3d-cfg-acoes button,.e3d-ok{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:9px;padding:8px;font-size:.8rem}
.e3d-cfg-acoes .perigo{border-color:rgba(255,120,110,.5);color:#FFC2BC}
.e3d-ok{background:#E8A6A0;color:#2C1E1C;font-weight:700;border:0;width:100%}
.e3d-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* barra do item selecionado */
.e3d-sel{position:absolute;z-index:7;display:flex;align-items:center;gap:3px;padding:5px 6px 5px 12px;border-radius:11px;white-space:nowrap;transition:opacity .15s}
.e3d-sel b{font-size:.8rem;margin-right:6px;max-width:190px;overflow:hidden;text-overflow:ellipsis}
.e3d-sel button{width:32px;height:32px;border:0;border-radius:8px;background:rgba(255,255,255,.08);font-size:.95rem}
.e3d-sel button:hover{background:rgba(255,255,255,.2)}
.e3d-sel button[data-ed=excluir]:hover{background:#B4534A}
.e3d-props{position:absolute;right:12px;top:70px;z-index:8;width:280px;border-radius:14px;padding:12px;display:grid;gap:9px}

/* base: câmeras e histórico */
.e3d-base{position:absolute;left:12px;right:12px;bottom:12px;z-index:5;display:flex;gap:8px;align-items:flex-end;justify-content:space-between;pointer-events:none}
.e3d-base>div{pointer-events:auto;border-radius:12px;padding:4px;display:flex;gap:3px}
.e3d-cams{overflow-x:auto;scrollbar-width:none;max-width:calc(100% - 90px)}
.e3d-cams::-webkit-scrollbar{display:none}
.e3d-cams button,.e3d-hist button{border:0;background:transparent;border-radius:8px;padding:7px 11px;font-size:.76rem;white-space:nowrap}
.e3d-cams button.on,.e3d-cams button:hover,.e3d-hist button:not(:disabled):hover{background:rgba(255,255,255,.16)}
.e3d-hist button{font-size:1rem;padding:5px 10px}.e3d-hist button:disabled{opacity:.35;cursor:default}
.e3d-hint{position:absolute;left:50%;transform:translateX(-50%);bottom:64px;z-index:4;font-size:.72rem;padding:6px 12px;border-radius:999px;white-space:nowrap;opacity:.85;pointer-events:none}
.e3d-hint:empty{display:none}
.e3d-stage.modo-construir .e3d-hint{left:calc(50% + 150px)}

/* passeio */
.e3d-passeio{position:absolute;inset:0;z-index:6;pointer-events:none}
.e3d-passeio>*{pointer-events:auto}
.e3d-passeio>button{position:absolute;right:14px;top:70px;border-radius:10px;padding:8px 12px;font-size:.8rem}
.e3d-passeio-dica{position:absolute;left:50%;transform:translateX(-50%);top:70px;border-radius:999px;padding:6px 14px;font-size:.72rem}
.e3d-joy{position:absolute;left:24px;bottom:78px;width:118px;height:118px;border-radius:50%;background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.35);display:none;touch-action:none}
.e3d-joy i{position:absolute;left:50%;top:50%;width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;background:rgba(255,255,255,.85);box-shadow:0 4px 12px rgba(0,0,0,.3)}
@media (pointer:coarse){.e3d-joy{display:block}.e3d-passeio-dica{display:none}}
.e3d-stage.modo-passeio .e3d-base,.e3d-stage.modo-passeio .e3d-hint{display:none}

.e3d-demo{position:absolute;right:12px;bottom:62px;z-index:4;font-size:.7rem;padding:5px 10px;border-radius:999px}

/* carregamento */
.e3d-load{position:absolute;inset:0;z-index:20;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 40%,#3B2E2B,#191514);color:#F7EFEA;transition:opacity .5s}
.e3d-load.saindo{opacity:0;pointer-events:none}
.e3d-load b{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.5rem;margin:12px 0 4px}
.e3d-load small{opacity:.7;font-size:.8rem}
.e3d-spin{display:inline-block;font-size:2.4rem;animation:e3dGira 1.6s ease-in-out infinite}
@keyframes e3dGira{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(12deg)}}

/* celular: catálogo e ambiente viram gavetas de baixo */
@media (max-width:760px){
  .e3d{margin:-4px -4px 0}
  .e3d-stage{border-radius:10px;min-height:420px}
  .e3d-top{left:8px;right:8px;top:8px;padding:6px;gap:6px}
  .e3d-chip{display:none}
  .e3d-modos{flex:1}.e3d-modos button{flex:1;padding:8px 4px;font-size:.78rem}
  .e3d-modos button::after{content:attr(title);display:none}
  .e3d-cat,.e3d-cfg{left:6px;right:6px;width:auto;top:auto;bottom:6px;max-height:58%;border-radius:16px 16px 12px 12px}
  .e3d-cat.recolhido{max-height:54px;overflow:hidden}
  .e3d-cat.recolhido .e3d-grupos,.e3d-cat.recolhido .e3d-itens,.e3d-cat.recolhido input,.e3d-cat.recolhido .e3d-dica{display:none}
  .e3d-itens{grid-template-columns:repeat(3,1fr)}
  .e3d-item{padding:8px 4px;min-height:86px;overflow:hidden;justify-content:flex-start}.e3d-item .e3d-ic{font-size:1.35rem}.e3d-item b{font-size:.64rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.e3d-item small{font-size:.58rem;white-space:nowrap}
  .e3d-props{left:6px;right:6px;width:auto;top:auto;bottom:6px}
  .e3d-base{left:6px;right:6px;bottom:6px}
  .e3d-cams{max-width:calc(100% - 82px)}
  .e3d-hint{display:none}
  .e3d-stage.modo-construir .e3d-base{display:none}
  .e3d-sel b{max-width:110px}
}
.e3d [hidden]{display:none!important}

#view .e3d button{min-height:0!important}
#view .e3d input[type=range]{border:0!important;background:transparent!important;padding:0!important;height:22px!important;box-shadow:none!important}
@media (max-width:760px){#view .e3d .e3d-item{min-height:86px!important}.e3d-modos button{font-size:.74rem}}
@media (max-width:350px){.e3d-modos button span{display:none}}
/* R14.7.185: setas na tela para o passeio */
.e3d-setas{position:absolute;right:18px;bottom:84px;display:grid;grid-template-columns:repeat(3,46px);gap:6px;user-select:none;-webkit-user-select:none;touch-action:none}
.e3d-setas button{width:46px;height:46px;border-radius:12px;background:rgba(28,22,21,.62);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#F7EFEA;border:1px solid rgba(255,255,255,.18);font-size:1.05rem;cursor:pointer;touch-action:none;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.e3d-setas button.on,.e3d-setas button:active{background:rgba(192,138,125,.9);color:#fff}
@media (max-width:760px){.e3d-setas{grid-template-columns:repeat(3,40px);gap:5px;right:12px;bottom:92px}.e3d-setas button{width:40px;height:40px}}
