.vd-session-feedback {
  position: fixed;
  z-index: 260;
  left: 50%;
  bottom: calc(76px + env(safe-area-inset-bottom));
  transform: translate(-50%, 8px);
  display: flex;
  align-items: center;
  gap: 11px;
  max-width: min(90vw, 430px);
  width: max-content;
  padding: 10px 15px;
  border: 1px solid #f1d3bc;
  border-radius: 14px;
  background: #fffaf4;
  color: #193351;
  box-shadow: 0 9px 32px #17294626;
  font: 600 13px/1.7 Vazirmatn, Tahoma, sans-serif;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 170ms ease, transform 170ms ease, visibility 170ms;
}
.vd-session-feedback.is-visible { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.vd-session-spinner {
  flex: 0 0 20px;
  height: 20px;
  border: 2px solid #f6dec9;
  border-top-color: #de6824;
  border-right-color: #de6824;
  border-radius: 50%;
}
.vd-session-feedback.is-visible .vd-session-spinner { animation: vd-session-spin 700ms linear infinite; }
@keyframes vd-session-spin { to { transform: rotate(1turn); } }

#vw-room .vw-workspace { grid-template-columns: minmax(0, 1fr); }
#vw-room #vw-side.vw-sidebar {
  position: fixed;
  display: flex;
  z-index: 251;
  inset: 0 auto 0 0;
  width: min(430px, calc(100vw - 24px));
  height: 100dvh;
  max-height: none;
  flex-direction: column;
  overflow: hidden;
  padding-bottom: env(safe-area-inset-bottom);
  border-radius: 0 20px 20px 0;
  background: #fffdfa;
  border: 1px solid #eddfd5;
  box-shadow: 14px 0 54px #162b4a30;
  visibility: hidden;
  transform: translateX(-105%);
  pointer-events: none;
  animation: none;
  transition: transform 250ms cubic-bezier(.22,.8,.26,1), visibility 250ms;
}
#vw-room #vw-side.vw-sidebar.is-open {
  visibility: visible;
  transform: translateX(0);
  pointer-events: auto;
  animation: none;
}
#vw-room #vw-side-backdrop:not([hidden]) {
  position: fixed;
  display: block;
  inset: 0;
  z-index: 250;
  width: 100vw;
  height: 100dvh;
  border: 0;
  background: #12233d65;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 250ms ease, visibility 250ms;
}
#vw-room.vd-drawer-open #vw-side-backdrop {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
#vw-room #vw-side .vw-side-heading { padding: calc(12px + env(safe-area-inset-top)) 15px 12px; flex-shrink: 0; }
#vw-room #vw-side .vw-side-pane {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow-y: auto;
  overscroll-behavior: contain;
}
#vw-room #vw-side .vw-side-tabs { flex-shrink: 0; }
#vw-room #vw-side .vw-side-tabs button[aria-selected="true"] {
  background: #fff0e4;
  border-color: #f3c9a9;
  color: #984718;
}

#vw-room .vd-camera-turn {
  display: none;
  position: absolute;
  top: 9px;
  left: 9px;
  z-index: 6;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid #ffffff73;
  border-radius: 10px;
  background: #142641e6;
  color: #fff;
  cursor: pointer;
}
#vw-room .vw46-primary[data-vd-camera-image="true"] > .vd-camera-turn { display: grid; }
#vw-room .vd-camera-turn:disabled { opacity: .6; cursor: wait; }
#vw-room .vd-camera-turn:focus-visible { outline: 2px solid #ffb16e; outline-offset: 2px; }
#vw-room .vw-stage .vw-slot[data-vd-camera-image="true"]:is([data-vd-rotation="90"],[data-vd-rotation="180"],[data-vd-rotation="270"]) > video {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%) rotate(var(--vd-camera-angle));
  object-fit: contain;
}
#vw-room .vw-stage .vw-slot[data-vd-camera-image="true"]:is([data-vd-rotation="90"],[data-vd-rotation="270"]) > video {
  width: var(--vd-camera-height, 100%) !important;
  height: var(--vd-camera-width, 100%) !important;
  max-width: none;
  max-height: none;
}
@media (max-width: 650px) {
  #vw-room:not(.vw44-float-active) .vw-stage:is(.vw46-focus-0,.vw46-focus-1,.vw46-focus-2) .vw-slot[data-slot].vw46-primary { grid-column: 1/-1 !important; grid-row: 1 !important; aspect-ratio: 16 / 9 !important; }
  #vw-room:not(.vw44-float-active) .vw-stage:is(.vw46-focus-0,.vw46-focus-1,.vw46-focus-2) .vw-slot[data-slot]:not(.vw46-primary) { grid-column: auto !important; grid-row: 2 !important; aspect-ratio: 4 / 3 !important; }
}
@media (prefers-reduced-motion: reduce) {
  .vd-session-feedback, #vw-room #vw-side.vw-sidebar, #vw-room #vw-side-backdrop { transition: none; }
  .vd-session-feedback.is-visible .vd-session-spinner { animation: none; }
}
