#camera-feed, #captured-image { width: 100%; height: 100%; object-fit: cover; border: 1px solid black; } .scan-effect { position: absolute; top: -100%; left: 0; width: 100%; height: 10px; background: linear-gradient(to bottom, rgba(0,255,255,0) 0%, rgba(0,255,255,0.8) 50%, rgba(0,255,255,0) 100%); opacity: 0; box-shadow: 0 0 10px rgba(0,255,255,0.5); } @keyframes pulse { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .pulse { animation: pulse 2s infinite; } button { margin: 10px 0; padding: 10px 20px; font-size: 16px; } input[type="text"] { margin: 10px 0; padding: 5px; font-size: 16px; } .camera-container { position: relative; overflow: hidden; border-radius: 0.5rem; width: 320px; height: 240px; margin: 20px auto; } body { background-image: url('/images/background.jpg'); background-size: cover; background-position: center; background-repeat: no-repeat; } .bg-transparent { background-color: rgba(128, 128, 128, 0); /* Adjust the alpha value for desired transparency */ } @font-face { font-family: 'GeistMono'; src: url('/static/fonts/GeistMono-Black.ttf') format('truetype'); font-weight: normal; font-style: normal; } .icon-geistmono { font-family: 'GeistMono', monospace; }