/* SPACE_EMPIRE_SHIPS3D — habillage de la vitrine 3D intégrée au jeu */
.s3d-wrap {
  position: fixed; inset: 0; z-index: 60;
  display: flex; align-items: center; justify-content: center;
  background: rgba(3, 6, 12, 0.82); backdrop-filter: blur(6px);
}
.s3d-wrap[hidden] { display: none; }
.s3d-box {
  position: relative; width: min(1180px, 96vw); height: min(760px, 88vh);
  border: 1px solid rgba(120, 160, 200, 0.22); border-radius: 14px;
  background: #05070d; overflow: hidden;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.6);
}
.s3d-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; touch-action: none; cursor: grab; }
.s3d-canvas:active { cursor: grabbing; }
.s3d-head { position: absolute; top: 14px; left: 18px; pointer-events: none; text-shadow: 0 2px 10px #000; }
.s3d-head b { display: block; font-size: 17px; letter-spacing: 0.03em; color: #eaf3ff; }
.s3d-head span { font-size: 12px; color: #8fa3b8; }
.s3d-close {
  position: absolute; top: 12px; right: 12px; width: 32px; height: 32px;
  border-radius: 50%; cursor: pointer; font-size: 14px; line-height: 1;
  background: rgba(10, 16, 24, 0.85); border: 1px solid rgba(120, 160, 200, 0.28); color: #d7e2ee;
}
.s3d-close:hover { border-color: #4fd8ff; color: #fff; }
.s3d-bar {
  position: absolute; left: 50%; transform: translateX(-50%); bottom: 14px;
  display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; max-width: 92%;
}
.s3d-bar button {
  padding: 6px 11px; border-radius: 18px; cursor: pointer; font-size: 12px;
  background: rgba(10, 16, 24, 0.88); border: 1px solid rgba(120, 160, 200, 0.24); color: #b9c8d8;
}
.s3d-bar button:hover { border-color: rgba(79, 216, 255, 0.55); color: #eaf7ff; }
.s3d-bar button.on { border-color: #4fd8ff; color: #fff; box-shadow: inset 0 0 14px rgba(79, 216, 255, 0.2); }
.s3d-specs {
  position: absolute; top: 60px; right: 16px; display: grid; gap: 6px;
  padding: 10px 12px; border-radius: 10px; min-width: 150px;
  background: rgba(8, 13, 20, 0.7); border: 1px solid rgba(120, 160, 200, 0.16);
}
.s3d-specs div { display: flex; justify-content: space-between; gap: 14px; font-size: 12px; }
.s3d-specs small { color: #8fa3b8; }
.s3d-specs b { color: #e6eef7; font-weight: 500; }
body.s3d-open { overflow: hidden; }
@media (max-width: 720px) {
  .s3d-box { width: 100vw; height: 100vh; border-radius: 0; border: 0; }
  .s3d-specs { top: auto; bottom: 66px; right: 10px; min-width: 120px; padding: 7px 9px; }
  .s3d-bar { bottom: 8px; }
  .s3d-bar button { padding: 5px 9px; font-size: 11px; }
}
