:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:1rem;text-align:center}.app-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:90vh}h1{font-size:2rem;margin-bottom:2rem;color:#333}h2{font-size:1.5rem;margin-bottom:1rem;color:#555}.start-section{margin-top:2rem}.start-button{padding:1rem 2rem;font-size:1.2rem;background-color:#646cff;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s}.start-button:hover{background-color:#535bf2}.upload-section{margin-top:1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.upload-section p{margin:.5rem 0;color:#666}.upload-button{display:inline-block;padding:.8rem 1.5rem;font-size:1rem;background-color:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s;min-width:200px;text-align:center}.start-section{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-top:2rem;padding:2rem;background-color:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000d;max-width:800px;width:100%}.upload-button:hover{background-color:#059669}.camera-section{display:flex;flex-direction:column;align-items:center;margin-top:1rem}.camera-video{width:100%;max-width:800px;height:300px;object-fit:cover;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-bottom:1rem;transform:scaleX(-1);aspect-ratio:4/1.5}.camera-section{position:relative;width:100%;max-width:800px;margin:0 auto}.capture-button{padding:1rem 2rem;font-size:1.1rem;background-color:#22c55e;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s;margin-right:1rem}.capture-button:hover{background-color:#16a34a}.cancel-button{padding:1rem 2rem;font-size:1.1rem;background-color:#ef4444;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s}.cancel-button:hover{background-color:#dc2626}.result-section{margin-top:1rem;display:flex;flex-direction:column;align-items:center}.captured-image{width:100%;max-width:800px;height:300px;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-bottom:1rem;position:relative;aspect-ratio:4/1.5;background-color:#f3f4f6}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fffc;display:flex;align-items:center;justify-content:center;border-radius:8px;z-index:10}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #646cff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-container{position:relative;width:100%;max-width:600px;margin:0 auto}.retake-button{padding:.8rem 1.5rem;font-size:1rem;background-color:#f59e0b;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s;margin-right:1rem}.retake-button:hover{background-color:#d97706}.extract-button{padding:.8rem 1.5rem;font-size:1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s}.extract-button:hover{background-color:#2563eb}.button-group{margin-top:1rem;display:flex;gap:1rem}@media(max-width:768px){h1{font-size:1.5rem}h2{font-size:1.2rem}.start-button,.capture-button,.cancel-button,.retake-button,.extract-button{padding:.8rem 1.5rem;font-size:1rem}.camera-video,.captured-image{max-width:90%}}.ocr-results{margin-top:2rem;width:100%;max-width:600px;text-align:left}.main-results-card{background-color:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000000d}.main-results-content{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.main-result-item{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.other-results-content{margin-top:1.5rem}.other-results-content h4{font-size:1.1rem;margin-bottom:1rem;color:#333}.scan-result-item{display:flex;align-items:center;padding:1rem;background-color:#f9fafb;border-radius:8px;border-left:4px solid #646cff;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.result-label{font-weight:600;color:#333;min-width:80px;flex-shrink:0}.result-value{flex:1;color:#666;word-break:break-all}.copy-all-section{display:flex;justify-content:center;margin-top:1rem}.copy-all-button{padding:.8rem 1.6rem;font-size:1rem;background-color:#646cff;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s;box-shadow:0 2px 4px #0000001a}.copy-all-button:hover{background-color:#535bf2}.copy-all-button:active{background-color:#4338ca;transform:translateY(1px)}@media(max-width:480px){.main-result-item,.scan-result-item{flex-direction:column;align-items:flex-start;gap:.5rem}.result-label{min-width:auto}.result-value{width:100%}.copy-all-button{width:100%;text-align:center}}.loading-indicator{margin-top:1rem;font-size:1rem;color:#646cff}.error-message{margin-top:1rem;font-size:1rem;color:#ef4444}.warning-message{margin:1rem 0;padding:1rem;background-color:#fef3c7;border:1px solid #fcd34d;border-radius:6px;color:#92400e;font-size:.9rem;text-align:center}.password-warning{margin:.5rem 0;padding:.8rem;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#b91c1c;font-size:.85rem;text-align:center;font-style:italic}
