@import"https://fonts.googleapis.com/css2?family=Amatic+SC:wght@400;700&display=swap";: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;background-image:url(/half-jack.jpg)}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{width:100%;max-width:1280px;margin:0 auto;text-align:center}body,h1,h2,h3,h4,h5,h6{font-family:Amatic SC,cursive}.bad-date-picker{min-height:100vh;padding:2rem;display:flex;align-items:center;justify-content:center}.bad-date-picker .container{width:100%;background:#fff;border-radius:24px;padding:3rem;box-shadow:0 20px 60px #0000004d}.bad-date-picker .title{font-size:3.5rem;font-weight:800;text-align:center;margin-bottom:.5rem;background:linear-gradient(135deg,#ff7a18,#ff4e00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bad-date-picker .subtitle{text-align:center;color:#6b7280;font-size:2rem;margin-bottom:2rem}.bad-date-picker .stage-buttons{display:flex;flex-direction:column;align-items:center;margin:0 auto 2rem}.bad-date-picker .camera-help-text{background-color:linen;color:#22c55e;font-size:1.15rem;font-weight:600;margin-bottom:1rem;text-align:center;max-width:400px;padding:.5rem;line-height:2.1rem;border-radius:8px;-webkit-border-radius:8px;-moz-border-radius:8px;-ms-border-radius:8px;-o-border-radius:8px}.bad-date-picker .stage-indicator{display:flex;align-items:center;justify-content:center;margin-bottom:2rem;gap:1rem}.bad-date-picker .stage-indicator .stage-step{width:48px;height:48px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.125rem;transition:all .3s ease}.bad-date-picker .stage-indicator .stage-step.active{background:linear-gradient(135deg,#ff7a18,#ff4e00);color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #ff7a1866}.bad-date-picker .stage-indicator .stage-step.completed{background:#10b981;color:#fff}.bad-date-picker .stage-indicator .stage-line{width:80px;height:3px;background:#e5e7eb}.bad-date-picker .stage-info{text-align:center;margin-bottom:.5rem}.bad-date-picker .stage-info .stage-title{font-size:3.1rem;font-weight:700;color:#1f2937;margin-block:0}.bad-date-picker .stage-info .stage-description{font-size:2rem;color:#6b7280;font-weight:500}.bad-date-picker .start-button{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#ff7a18,#ff4e00);color:#fff;border:none;padding:1rem 2rem;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #ff7a1866}.bad-date-picker .start-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #ff7a1880}.bad-date-picker .start-button:disabled{opacity:.5;cursor:not-allowed}.bad-date-picker .video-container{position:relative;width:100%;max-width:640px;margin:0 auto 2rem;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px #0003}.bad-date-picker .video-container .video-feed{display:block;width:100%;height:auto;object-fit:cover;background:#000}.bad-date-picker .video-container .video-canvas{width:100%;height:auto;display:block}.bad-date-picker .year-error{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;color:#ef4444;font-size:1.5rem;font-weight:600;margin-bottom:1rem;padding:.75rem;background:#fee2e2;border-radius:8px;animation:pulse 2s ease infinite;text-align:center}.bad-date-picker .year-error a{color:#b91c1c;text-decoration:underline;font-size:1rem;white-space:nowrap}.bad-date-picker .year-error a:hover{color:#7f1d1d}.bad-date-picker .detection-section{border:5px dotted red;border-radius:1rem;padding:0 1rem}.bad-date-picker .detection-section .next-button{display:none;background:#10b981;color:#fff;border:none;padding:.875rem 2.5rem;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #10b98166}.bad-date-picker .detection-section .next-button:hover:not(:disabled){background:#059669;transform:translateY(-2px);box-shadow:0 8px 20px #10b98180}.bad-date-picker .detection-section .next-button:disabled{background:#d1d5db;cursor:not-allowed;box-shadow:none}.bad-date-picker .counter-section{text-align:center}.bad-date-picker .counter-section .counter{font-size:4rem;font-weight:800;color:#1f2937;transition:all .3s ease}.bad-date-picker .counter-section .counter.error{color:#ef4444;animation:shake .5s ease}.bad-date-picker .counter-section .counter .counter-current{color:#ff7a18}.bad-date-picker .counter-section .counter .counter-separator{color:#d1d5db;margin:0 .5rem}.bad-date-picker .counter-section .counter .counter-target{color:#6b7280}.bad-date-picker .counter-section .year-error{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;color:#ef4444;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding:.75rem;background:#fee2e2;border-radius:8px;animation:pulse 2s ease infinite;text-align:center}.bad-date-picker .counter-section .year-error a{color:#b91c1c;text-decoration:underline;font-size:.9rem;white-space:nowrap}.bad-date-picker .counter-section .year-error a:hover{color:#7f1d1d}.bad-date-picker .error-message{display:flex;align-items:center;justify-content:center;gap:.5rem;color:#ef4444;font-weight:600;padding:1rem;background:#fee2e2;border-radius:12px;margin-top:1rem;font-size:1.5rem}.bad-date-picker .complete-section{text-align:center;padding:2rem 0}.bad-date-picker .complete-section .success-icon{width:120px;height:120px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 2rem;color:#fff;animation:scaleIn .5s ease}.bad-date-picker .complete-section .complete-title{font-size:2.5rem;font-weight:800;color:#1f2937;margin-bottom:.5rem}.bad-date-picker .complete-section .complete-subtitle{font-size:1.6rem;margin-bottom:2rem}.bad-date-picker .complete-section .date-display{font-size:3rem;font-weight:800;color:#ff7a18;margin-bottom:2rem;font-family:Amatic SC,cursive}.bad-date-picker .complete-section .date-display .date-separator{color:#d1d5db;margin:0 .25rem}.bad-date-picker .complete-section .age-message{font-size:2.25rem;color:#374151;line-height:1.6;margin:1.5rem auto;padding:1rem 2rem;background:#f9fafb;border-left:4px solid #ff7a18;border-radius:8px;max-width:600px;font-style:italic;font-weight:600}.bad-date-picker .complete-section .submit-button{background:linear-gradient(135deg,#ff7a18,#ff4e00);color:#fff;border:none;padding:1rem 3rem;border-radius:12px;font-size:1.25rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #ff7a1866}.bad-date-picker .complete-section .submit-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ff7a1880}.bad-date-picker .debug-info{font-size:1rem;color:#666;margin-top:16rem}.bad-date-picker .birthday-display{font-size:1.25rem;color:#374151;display:flex;justify-content:center;gap:1.5rem}.bad-date-picker .birthday-display div{font-weight:600;font-size:2rem}.bad-date-picker .birthday-display div strong{color:#ff7a18}.bad-date-picker .force-enable-camera,.bad-date-picker .open-camera{font-size:1rem;padding:2px 6px;margin:.5rem 1rem 0 0;background-color:red;color:#fff;font-weight:700}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bad-date-picker .spinner{animation:spin 1s linear infinite}@media (max-width: 768px){.bad-date-picker{padding:1rem}.bad-date-picker .container{padding:1.5rem}.bad-date-picker .title{font-size:1.75rem}.bad-date-picker .stage-indicator .stage-step{width:40px;height:40px;font-size:1rem}.bad-date-picker .stage-indicator .stage-line{width:50px}.bad-date-picker .counter{font-size:3rem!important}.bad-date-picker .complete-section .date-display{font-size:2rem}}.footer{padding:.5rem;background-color:#fff;text-align:center;margin-top:5rem}.footer .footer__copyright,.footer .footer__support{margin-block:0}.footer .footer__copyright{font-size:1.2rem;font-weight:600}.footer .footer__copyright a{font-weight:600}.footer .footer__support{font-size:1.2rem;font-weight:600}.footer .footer__coffee{height:60px;width:217px}.force-camera{color:red;border:1px solid red;border-radius:6px;padding:2px}.connecting-camera{color:#ff7a18;border:1px solid #ff7a18;border-radius:6px;padding:2px}
