@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";#root{max-width:1280px;margin:0 auto;padding:0;text-align:center}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--color-primary: #2563EB;--color-primary-dark: #1D4ED8;--color-primary-light: #EFF6FF;--color-success: #16A34A;--color-warning: #D97706;--color-error: #DC2626;--color-bg: #F8FAFC;--color-surface: #FFFFFF;--color-text: #1E293B;--color-text-muted: #64748B;--color-border: #E2E8F0;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.1);--shadow-card: 0 4px 24px rgba(0,0,0,.08)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased}#root{display:flex;flex-direction:column;min-height:100vh}.container{max-width:800px;margin:0 auto;padding:1rem .75rem;width:100%}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-card);border:1px solid var(--color-border)}h1,h2,h3{font-weight:700;color:var(--color-text);margin-bottom:.5rem}p{color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;border:none;font-size:1rem;gap:.5rem;text-decoration:none}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px)}.btn-primary:disabled{background:var(--color-border);cursor:not-allowed}.btn-secondary{background:var(--color-primary-light);color:var(--color-primary)}.btn-secondary:hover{background:#dbeafe}.btn-ghost{background:transparent;color:var(--color-text-muted)}.btn-ghost:hover{background:var(--color-bg);color:var(--color-text)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.fade-in{animation:fadeIn .3s ease-out}.slide-up{animation:slideUp .4s ease-out}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-text)}.form-control{width:100%;padding:.75rem 1rem;border-radius:var(--radius-md);border:2px solid var(--color-border);font-family:inherit;font-size:1rem;transition:border-color .2s}.form-control:focus{outline:none;border-color:var(--color-primary)}.form-control::placeholder{color:var(--color-text-muted);opacity:.5}@media (max-width: 768px){.card{padding:1.25rem 1rem}}@media (max-width: 480px){.card{border-radius:var(--radius-md);border:none;background:transparent;box-shadow:none;padding:0}}.stepper{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;position:relative;width:100%}.stepper:before{content:"";position:absolute;top:19px;left:0;right:0;height:2px;background:var(--color-border);z-index:1}.step-item{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center}.step-circle{width:38px;height:38px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:var(--color-text-muted);transition:all .3s ease;margin-bottom:.5rem}.step-item.active .step-circle{border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 0 0 4px var(--color-primary-light)}.step-item.completed .step-circle{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.step-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);text-align:center;position:absolute;top:45px;white-space:nowrap}.step-item.active .step-label{color:var(--color-primary)}.step-item.completed .step-label{color:var(--color-text)}@media (max-width: 480px){.step-label{display:none}}.dropzone{border:4px dashed var(--color-border);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--color-bg);display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:2rem}.dropzone:hover,.dropzone.dragging{border-color:var(--color-primary);background:var(--color-primary-light)}.dropzone-icon{font-size:3rem;color:var(--color-primary)}.dropzone-label{font-size:1.25rem;font-weight:700;color:var(--color-text);margin-bottom:-.5rem}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.25rem;margin-top:1rem}.preview-card{position:relative;background:#fff;border-radius:var(--radius-md);overflow:hidden;border:2px solid var(--color-border);aspect-ratio:16/10;box-shadow:var(--shadow-sm);transition:all .3s ease}.preview-img{width:100%;height:100%;object-fit:cover}.preview-badge{position:absolute;top:10px;left:10px;background:#1e293bd9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;z-index:2}.preview-remove{position:absolute;top:8px;right:8px;background:var(--color-error);color:#fff;width:28px;height:28px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;transition:transform .2s,background-color .2s;z-index:3}.preview-remove:hover{transform:scale(1.1);background-color:#b91c1c}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172afa;z-index:1000;display:flex;flex-direction:column;color:#fff}.camera-container{flex:1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000}.camera-preview{width:100%;height:100%;object-fit:contain}.camera-controls{padding:3rem 2rem;display:flex;justify-content:center;align-items:center;gap:3rem;background:linear-gradient(to top,#0f172a,#0f172a00)}.shutter-btn{width:80px;height:80px;border-radius:50%;background:#fff;border:8px solid rgba(255,255,255,.2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.shutter-btn:hover{transform:scale(1.05);border-color:#fff6}.shutter-btn:active{transform:scale(.95);background:#e2e8f0}.shutter-btn-inner{width:32px;height:32px;border:3px solid var(--color-primary);border-radius:50%}.camera-close{position:absolute;top:1.5rem;right:1.5rem;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:none;color:#fff;width:48px;height:48px;border-radius:50%;font-size:2rem;cursor:pointer;z-index:1010;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.camera-close:hover{background:#ffffff4d}.ocr-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;padding:2rem;text-align:center}.spinner{width:64px;height:64px;border:5px solid var(--color-primary-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.ocr-message{font-size:1.25rem;font-weight:600;color:var(--color-primary);animation:pulse 1.5s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}
