*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}.container{margin-left:auto;margin-right:auto;padding-left:15px;padding-right:15px;width:100%}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}@media (max-width:768px){h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}.section{padding:2rem 0}@media (max-width:768px){.section{padding:1rem 0}}.grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group{margin-bottom:1rem}.form-control{border:1px solid #ccc;padding:.5rem;width:100%}.btn,.form-control{border-radius:4px;font-size:1rem}.btn{cursor:pointer;padding:.5rem 1rem;transition:all .3s ease}@media (max-width:768px){.btn{margin-bottom:.5rem;width:100%}}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}img{height:auto;max-width:100%}.card{border:1px solid #ddd;border-radius:4px;margin-bottom:1rem;padding:1rem}@media (max-width:768px){.card{margin:.5rem 0}}.text-center{text-align:center}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.d-flex{display:flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.justify-content-center{justify-content:center}.align-items-center{align-items:center}@media (max-width:768px){.flex-column-mobile{flex-direction:column}.text-center-mobile{text-align:center}}.footer{background-color:#222;border-top:1px solid #333;color:#fff;font-size:.9rem;padding:40px 20px}.footer-content{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;margin:0 auto;max-width:1200px}.footer-center,.footer-left,.footer-right{flex:1 1;min-width:250px}.footer-logo{align-items:center;display:flex;margin-bottom:15px}.footer-logo-img{height:40px;margin-right:10px}.footer-logo-text{color:#fff;font-size:1.8rem;font-weight:700}.footer-tagline{color:#bbb;font-size:1.1rem;margin-bottom:10px}.footer-company,.footer-copyright{color:#aaa;font-size:.8rem;margin-bottom:5px}.footer-links h4{border-bottom:2px solid #007bff;color:#fff;display:inline-block;font-size:1.2rem;margin-bottom:15px;padding-bottom:5px}.footer-link{color:#bbb;display:block;margin-bottom:8px;text-decoration:none;transition:color .3s ease}.footer-link:hover{color:#007bff}.footer-issues,.footer-support{color:#bbb;line-height:1.6;margin-bottom:15px}.footer-email{color:#007bff;display:block;margin-top:5px;text-decoration:none;transition:color .3s ease}.footer-email:hover{color:#66b3ff}@media (max-width:768px){.footer-content{align-items:center;flex-direction:column;text-align:center}.footer-center,.footer-left,.footer-right{margin-bottom:30px;width:100%}.footer-links h4{margin-top:20px}}.face-registration{margin:0 auto;max-width:800px;padding:20px;text-align:center}.face-registration h2{color:#333;margin-bottom:30px}.registration-complete{background:#f8f9fa;border-radius:10px;box-shadow:0 2px 10px #0000001a;padding:30px}.registered-face{margin-bottom:30px}.registered-face-image{border-radius:10px;box-shadow:0 4px 15px #0000001a;max-width:300px}.registration-message{color:#333}.registration-message h3{color:#28a745;font-size:24px;margin-bottom:15px}.registration-message p{font-size:16px;line-height:1.6;margin:10px 0}.contact-info{background:#fff;border-left:4px solid #28a745;border-radius:5px;color:#666;font-style:italic;margin-top:20px;padding:15px}.loading-message{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:20px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#fff;border-left:4px solid #dc3545;border-radius:5px;color:#dc3545;margin-top:10px;padding:10px}.registration-progress{background:#f5f5f5;border-radius:8px;display:flex;justify-content:space-between;margin:2rem 0;padding:1rem}.progress-step{align-items:center;display:flex;flex:1 1;flex-direction:column;position:relative}.progress-step:after{background:#ddd;content:"";height:2px;position:absolute;right:-50%;top:20px;width:100%;z-index:1}.progress-step:last-child:after{display:none}.step-number{align-items:center;background:#ddd;border-radius:50%;color:#666;display:flex;font-weight:700;height:40px;justify-content:center;margin-bottom:.5rem;position:relative;width:40px;z-index:2}.progress-step.current .step-number{background:#2196f3;color:#fff}.progress-step.completed .step-number{background:#4caf50;color:#fff}.step-label{color:#666;font-size:.9rem}.progress-step.current .step-label{color:#2196f3;font-weight:700}.camera-container{aspect-ratio:4/3;background:#000;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:2rem auto;max-width:640px;overflow:hidden;position:relative;width:100%}.camera-feed{display:block;object-fit:cover}.camera-feed,.overlay-canvas{height:100%;transform:scaleX(-1);width:100%}.overlay-canvas{left:0;pointer-events:none;position:absolute;top:0}.quality-indicators{background:#000000b3;border-radius:8px;bottom:20px;color:#fff;display:flex;flex-direction:column;gap:10px;left:50%;min-width:250px;padding:15px;position:absolute;transform:translateX(-50%);z-index:10}.quality-indicator{align-items:center;display:flex;gap:10px}.quality-indicator span{font-size:.9rem;min-width:80px;text-align:left}.quality-bar{background:#fff3;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.quality-fill{height:100%;transition:width .3s ease,background-color .3s ease}.preview-container{padding-top:75%;position:relative;width:100%}.preview-image{height:100%;left:0;object-fit:cover;position:absolute;top:0;width:100%}.preview-controls{background:#000000b3;border-radius:8px;bottom:20px;display:flex;gap:15px;left:50%;padding:15px;position:absolute;transform:translateX(-50%);z-index:10}.confirm-button,.retry-button{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .3s}.retry-button{background:#ff9800;color:#fff}.retry-button:hover{background:#f57c00}.confirm-button{background:#4caf50;color:#fff}.confirm-button:hover{background:#388e3c}.confirm-button:disabled{background:#ccc;cursor:not-allowed}.instructions{background:#f8f9fa;border-radius:8px;margin:2rem 0;padding:1rem}.instructions h3{color:#2196f3;margin-bottom:.5rem}.instructions p{color:#666;margin:0}.warning-text{color:#ff9800;font-weight:500;margin-top:.5rem}.controls{margin-top:2rem}.capture-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;padding:1rem 2rem;transition:background-color .3s}.capture-button:hover{background:#1976d2}.capture-button:disabled{background:#ccc;cursor:not-allowed}.error-container{background:#ffebee;border-radius:8px;margin:2rem auto;max-width:600px;padding:2rem;text-align:center}.error-container button{background:#d32f2f;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem 1rem}.error-container button:hover{background:#b71c1c}.countdown{animation:pulse 1s infinite;color:#fff;font-size:8rem;font-weight:700;left:50%;position:absolute;text-shadow:0 0 20px #00000080;top:50%;transform:translate(-50%,-50%);z-index:10}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}to{transform:translate(-50%,-50%) scale(1)}}.help-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.help-content{background:#fff;border-radius:8px;max-width:600px;padding:2rem;text-align:center;width:90%}.guide-image{border-radius:4px;box-shadow:0 2px 4px #0000001a;height:auto;margin-bottom:1rem;max-width:400px;width:100%}.guide-text{margin-top:1rem}.guide-text h3{color:#2196f3;margin-bottom:.5rem}.guide-text p{color:#666;margin-bottom:1.5rem}.close-help{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .3s}.close-help:hover{background:#1976d2}.help-button{background:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;margin-top:1rem;padding:.5rem 1rem;transition:background-color .3s}.help-button:hover{background:#1976d2}.already-registered{align-items:center;background:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;margin:2rem 0;padding:2rem}.user-face-status{border-radius:4px;display:inline-block;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.user-face-status.registered{background-color:#d4edda;color:#155724}.user-face-status.not-registered{background-color:#f8d7da;color:#721c24}.reset-face-button{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.reset-face-button:hover{background-color:#c82333}.reset-face-button:disabled{background-color:#e9ecef;cursor:not-allowed}
/*# sourceMappingURL=main.3d408f6f.css.map*/