/* Sprint 30 - Kamera barkod okuyucu + XLSX export polish */
.barcode-camera-panel {
  margin-top: 14px;
  border: 1px solid #e2e9f3;
  border-radius: 18px;
  background: linear-gradient(180deg,#fff,#f8fbff);
  padding: 12px;
}
.barcode-camera-frame {
  position: relative;
  overflow: hidden;
  display: grid;
  place-items: center;
  min-height: 196px;
  border-radius: 16px;
  background: #0b1424;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.barcode-camera-frame video {
  width: 100%;
  max-height: 280px;
  object-fit: cover;
  opacity: .55;
  transform: scaleX(1);
}
.barcode-camera-frame video.is-live { opacity: 1; }
.camera-scan-line {
  position: absolute;
  left: 12%;
  right: 12%;
  top: 50%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #ff7a00, transparent);
  box-shadow: 0 0 18px rgba(255,122,0,.75);
  animation: nts-scanline 1.55s ease-in-out infinite;
}
.camera-corners::before,
.camera-corners::after {
  content: "";
  position: absolute;
  inset: 18%;
  border: 2px solid rgba(255,255,255,.62);
  border-left-color: #ff7a00;
  border-right-color: #ff7a00;
  border-radius: 14px;
  pointer-events: none;
}
@keyframes nts-scanline {
  0%,100% { transform: translateY(-54px); opacity:.6; }
  50% { transform: translateY(54px); opacity:1; }
}
.camera-toolbar {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 10px;
}
.camera-help {
  margin: 9px 0 0;
  color: #64748b;
  font-size: 12px;
  line-height: 1.45;
}
.danger-soft {
  color: #dc2626 !important;
  border-color: #fecaca !important;
  background: #fff7f7 !important;
}
.export-panel .primary-btn,
.import-head .head-actions a.secondary-btn,
.import-head .head-actions a.primary-btn { text-decoration: none; }
.product-transfer-live-note {
  display:flex;
  gap:8px;
  align-items:center;
  padding:10px 12px;
  border-radius:14px;
  background:#fff7ed;
  color:#9a3412;
  border:1px solid #fed7aa;
  font-size:12px;
  font-weight:700;
}
@media (max-width: 760px) {
  .barcode-camera-frame { min-height: 168px; }
  .camera-toolbar .secondary-btn,
  .camera-toolbar .primary-btn { width: 100%; justify-content: center; }
}
