/* Камера на цял екран за добавяне на поръчка (OrderAdd) — съдържанието на модал `full` без заглавие: само видео, едно кръгло копче и „×“. */
.oc { position: relative; width: 100%; height: 100%; background: #000; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; }
.oc-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.oc-bar { position: relative; margin-bottom: max(28px, env(safe-area-inset-bottom)); }
.oc-torch { position: absolute; right: calc(100% + 28px); bottom: 12px; width: 52px; height: 52px; border: 2px solid #fff; border-radius: 50%; background: rgba(255, 255, 255, .2); color: #fff; font-size: 22px; display: flex; align-items: center; justify-content: center; }
.oc-torch[hidden] { display: none; }
.oc-torch[aria-pressed="true"] { background: #ffc107; border-color: #ffc107; color: #000; }
.oc-focus { position: absolute; width: 64px; height: 64px; margin: -32px 0 0 -32px; border: 2px solid #ffc107; border-radius: 50%; pointer-events: none; animation: oc-ring .7s ease-out forwards; }
@keyframes oc-ring { from { transform: scale(1.5); opacity: 1; } to { transform: scale(.9); opacity: .2; } }
.oc-shot { position: relative; width: 76px; height: 76px; border-radius: 50%; border: 4px solid #fff; background: rgba(255, 255, 255, .25); color: #fff; font-size: 30px; display: flex; align-items: center; justify-content: center; }
.oc-shot:active { background: rgba(255, 255, 255, .5); }
.oc-shot[disabled] { opacity: .55; }
.oc-shot.oc-busy i { animation: oc-pulse 0.9s ease-in-out infinite; }
.oc-close { position: absolute; top: max(12px, env(safe-area-inset-top)); right: 12px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(0, 0, 0, .4); color: #fff; font-size: 18px; display: flex; align-items: center; justify-content: center; }
@keyframes oc-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(.78); } }
