: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}}.login-container{min-height:100vh;max-width:1200px;margin:0 auto;padding:20px}.login-card{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:400px;margin:0 auto}.login-card h2{margin:0 0 30px;font-size:28px;color:#333;text-align:center}.login-button{width:100%;padding:14px;background:linear-gradient(135deg,#ff6b6b,#ff8e53);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #ff6b6b66}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:30px;text-align:center}.forgot-password{color:#667eea;text-decoration:none;font-size:14px;transition:color .3s}.forgot-password:hover{color:#764ba2;text-decoration:underline}.signup-prompt{margin-top:20px;color:#666;font-size:14px}.signup-prompt a{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s}.signup-prompt a:hover{color:#764ba2;text-decoration:underline}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;padding:30px;max-width:400px;width:100%;box-shadow:0 10px 40px #0003}.modal-content h3{margin:0 0 20px;color:#333;font-size:24px}.modal-content p{color:#666;margin-bottom:20px;line-height:1.5}.success-message{background:#d4edda;color:#155724;padding:15px;border-radius:6px;text-align:center;font-weight:500}.modal-actions{display:flex;gap:10px;margin-top:20px}.btn-secondary{flex:1;padding:10px;background:#fff;color:#666;border:1px solid #ddd;border-radius:6px;font-size:16px;cursor:pointer;transition:all .3s}.btn-secondary:hover:not(:disabled){background:#f5f5f5;border-color:#999}.btn-primary{flex:1;padding:10px;background:#ff1493;color:#fff;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:background .3s}.btn-primary:hover:not(:disabled){background:#e91e83}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 600px){.login-container{padding:15px}.modal-content{padding:20px}}.create-password-container{min-height:100vh;max-width:1200px;margin:0 auto;padding:20px}.create-password-box{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:400px;margin:0 auto}.create-password-box h1{margin:0 0 10px;font-size:28px;color:#333;text-align:center}.create-password-box .subtitle{color:#666;text-align:center;margin-bottom:30px;font-size:16px}.no-token-message{text-align:center;padding:20px 0}.no-token-message p{margin-bottom:20px;color:#666}.form-group small{display:block;margin-top:5px;color:#666;font-size:14px}.btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.btn-secondary{padding:10px 20px;background:#fff;color:#666;border:1px solid #ddd;border-radius:6px;font-size:16px;cursor:pointer;transition:all .3s}.btn-secondary:hover{background:#f5f5f5;border-color:#999}@media (max-width: 600px){.create-password-container{padding:15px}}body{font-family:Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333}.forgot-password-container{min-height:100vh;max-width:1200px;margin:0 auto;padding:20px}.logo-header{text-align:center;margin-bottom:30px}.logo{background:linear-gradient(45deg,#ff6b6b,#ffd93d,#6bcf7f);padding:20px 40px 45px;border-radius:25px;display:inline-block;box-shadow:0 10px 30px #0003;transform:rotate(-2deg);transition:transform .3s ease;min-width:340px;cursor:pointer}.logo h1{font-size:2.5em;font-weight:700;background:linear-gradient(45deg,#ff1744,#9c27b0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:2px 2px 4px rgba(0,0,0,.1);margin-bottom:5px;margin-top:0}.logo .subtitle{font-size:1.2em;color:#9c27b0;font-weight:700;font-style:italic;margin-top:-5px}.forgot-password-box{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;width:100%;max-width:400px;margin:0 auto}.forgot-password-box h1{margin:0 0 10px;font-size:28px;color:#333;text-align:center}.forgot-password-box .subtitle{color:#666;text-align:center;margin-bottom:30px;font-size:16px}.error-message{background:#fee;color:#c33;padding:10px;border-radius:6px;margin-bottom:20px;text-align:center;font-size:14px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:16px;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,#ff7b00,#ff9a00);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #ff7b0066}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.form-footer{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid #eee}.form-footer p{color:#666;font-size:14px}.form-footer a{color:#667eea;text-decoration:none;font-weight:600;transition:color .3s}.form-footer a:hover{color:#764ba2;text-decoration:underline}@media (max-width: 600px){.forgot-password-container{padding:15px}}@media (max-width: 768px){.logo{min-width:auto;padding:15px 25px 30px}.logo h1{font-size:2em}.logo .subtitle{font-size:1em}.logo-header{margin-bottom:18px}}*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden;width:100%}*{max-width:100%}body{font-family:Arial,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;inset:0;background:linear-gradient(135deg,#667eea,#764ba2);z-index:-1}.container{max-width:1200px;margin:0 auto;padding:20px;width:100%;overflow-x:hidden}.header{text-align:center;margin-bottom:30px;position:relative}@media (max-width: 768px){.login-toggle{top:10px!important;right:10px!important;padding:8px 16px!important;font-size:14px!important}}.logo{background:linear-gradient(45deg,#ff6b6b,#ffd93d,#6bcf7f);padding:20px 40px 45px;border-radius:25px;display:inline-block;margin-bottom:20px;box-shadow:0 10px 30px #0003;transform:rotate(-2deg);transition:transform .3s ease;min-width:340px}@media (max-width: 400px){.logo{min-width:unset;width:90%;max-width:340px;padding:15px 20px 35px}}.logo:hover{transform:rotate(0) scale(1.05)}.logo h1{font-size:2.5em;font-weight:700;background:linear-gradient(45deg,#ff1744,#9c27b0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:2px 2px 4px rgba(0,0,0,.1);margin-bottom:5px}.logo .ai-edition{font-size:1.2em;color:#666;margin:-5px 0 0;padding-bottom:10px}.hero-images{display:flex;justify-content:center;gap:20px;margin-bottom:25px;flex-wrap:wrap}.hero-image{width:80px;height:80px;border-radius:50%;background:linear-gradient(45deg,#ff9a9e,#fecfef);display:flex;align-items:center;justify-content:center;font-size:2em;box-shadow:0 8px 20px #00000026}.hero-image:nth-child(2){animation-delay:-1s;background:linear-gradient(45deg,#a8edea,#fed6e3)}.hero-image:nth-child(3){animation-delay:-2s;background:linear-gradient(45deg,#ffecd2,#fcb69f)}.hero-gradient{background:linear-gradient(45deg,#ff6b6b,#ffd93d)!important}.main-content{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;margin-bottom:30px}.steps{text-align:center;margin-bottom:25px}.steps h2{font-size:2em;margin-bottom:20px;background:linear-gradient(45deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.step-list{display:flex;flex-direction:column;align-items:center;gap:15px;margin-bottom:35px}.step{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:15px 30px;border-radius:15px;font-size:1.1em;font-weight:700;box-shadow:0 2px 6px #0000001a;transform:none;transition:none;min-width:250px;cursor:default}.step:hover{transform:none;box-shadow:0 2px 6px #0000001a}.cta-buttons{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.cta-buttons .btn{width:auto!important}.btn{padding:20px 40px;border-radius:50px;font-size:1.5em;font-weight:700;text-decoration:none;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 20px #0003;text-transform:uppercase;letter-spacing:1px;display:inline-block;width:auto}.btn-primary{background:linear-gradient(45deg,#ff6b6b,#ffd93d);color:#333;animation:pulse 2s infinite}.btn-secondary{background:linear-gradient(45deg,#6bcf7f,#4ecdc4);color:#fff}.btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px #0000004d}.btn-primary:hover{transform:translateY(-3px) scale(1.25)}@keyframes pulse{0%{box-shadow:0 8px 20px #ff6b6b4d}50%{box-shadow:0 8px 30px #ff6b6b99}to{box-shadow:0 8px 20px #ff6b6b4d}}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.hidden{display:none}#sample-report-screen,#how-it-works-screen,#fmk-login-form,#fmk-waiting,#apple-form{min-height:100vh;padding:20px}@media (max-width: 768px){#sample-report-screen,#how-it-works-screen,#fmk-login-form,#fmk-waiting,#apple-form{padding:10px}}.sample-report{background:#f8fafd;border-radius:24px;padding:48px 32px 40px;box-shadow:0 8px 32px #667eea1a,0 2px 8px #00000012;margin-bottom:30px;border:1.5px solid #e3eafc;max-width:540px;margin-left:auto;margin-right:auto;font-family:Inter,Arial,sans-serif}.participants{display:flex;justify-content:center;align-items:center;margin-bottom:36px;gap:36px;flex-wrap:wrap}.participant{text-align:center}.participant-image{width:90px;height:90px;border-radius:50%;margin:0 auto 10px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:2em;box-shadow:0 4px 16px #667eea21;border:3px solid #e3eafc;overflow:hidden}.participant-name{font-size:1.1em;font-weight:600;color:#2d3a4a;margin-top:4px}.vs-text{font-size:2em;font-weight:700;color:#667eea;text-shadow:none}.verdict{text-align:center;margin-bottom:24px}.verdict h3{font-size:1.1em;font-weight:500;color:#3a3a3a;margin-bottom:10px;letter-spacing:.5px}.result-box{background:linear-gradient(90deg,#e3eafc,#c7d2fe);border-radius:18px;padding:28px 0;margin:0 auto 18px;box-shadow:0 2px 12px #667eea1a;max-width:350px;display:flex;justify-content:center;align-items:center;border:1.5px solid #b6c6f5}.verdict-result{font-size:2.7em;font-weight:700;color:#2d3a4a;text-shadow:0 2px 8px rgba(102,126,234,.08);margin-top:10px;margin-bottom:10px;letter-spacing:1.5px}.scores{display:flex;justify-content:space-around;flex-wrap:wrap;gap:24px;margin-top:24px;margin-bottom:12px}.score{background:#fff;padding:22px 18px 18px;border-radius:15px;text-align:center;min-width:150px;box-shadow:0 2px 8px #667eea12;border:1.5px solid #e3eafc}.score h4{color:#667eea;margin-bottom:10px;font-size:1.1em;font-weight:600}.score-value{font-size:2.2em;font-weight:700;color:#3a3a3a}.report-actions{display:flex;justify-content:center;gap:18px;margin-top:32px;flex-wrap:wrap}.btn-share,.btn-detailed{font-size:1.1em;border-radius:30px;padding:12px 28px;font-weight:600;border:none;cursor:pointer;transition:background .2s,color .2s}.btn-share{background:linear-gradient(45deg,#667eea,#4ecdc4);color:#fff}.btn-share:hover{background:linear-gradient(45deg,#4ecdc4,#667eea)}.btn-detailed{background:linear-gradient(45deg,#c7d2fe,#e3eafc);color:#2d3a4a}.btn-detailed:hover{background:linear-gradient(45deg,#e3eafc,#c7d2fe);color:#667eea}.sync-options{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;margin-top:12px}.sync-option{background:#fff;padding:25px 20px;border-radius:20px;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 20px #0000001a;width:220px;height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}.sync-option:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0003}.sync-option h3{font-size:1.5em;margin:5px 0;color:#333;font-weight:600}.sync-option p{margin:0;color:#666;font-size:.9em;line-height:1.3}.sync-option .icon{font-size:3em;margin:0 0 10px}.form-container{background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:500px;margin:0 auto}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:700;color:#333}.form-group input{width:100%;padding:15px;border:2px solid #ddd;border-radius:10px;font-size:1.1em;transition:border-color .3s ease}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 10px #667eea33}.security-note{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:20px;border-radius:15px;margin-top:20px;border:1px solid rgba(102,126,234,.2);box-shadow:0 2px 10px #667eea1a}.security-note h4{background:linear-gradient(45deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px;font-weight:600}.security-note p{color:#555;font-size:.95em;line-height:1.5}.back-btn{background:#6c757d;color:#fff;padding:10px 20px;border:none;border-radius:25px;cursor:pointer;margin-right:10px;font-size:1em}.back-btn:hover{background:#5a6268}.btn-animate{transition:transform .18s cubic-bezier(.4,2,.6,1),box-shadow .18s;animation:btnPulse 2.2s infinite}.btn-animate:hover,.btn-animate:focus{transform:scale(1.07) rotate(-1deg);box-shadow:0 8px 32px #667eea2e}@keyframes btnPulse{0%{box-shadow:0 8px 20px #667eea1a}50%{box-shadow:0 12px 32px #667eea38;transform:scale(1.04)}to{box-shadow:0 8px 20px #667eea1a}}.form-group.checkbox{margin-bottom:32px}.form-group.checkbox label{display:block;font-weight:400;font-size:1em;color:#333;margin-bottom:0;line-height:1.5;padding-left:22px;position:relative;text-align:left}@media (max-width: 480px){.form-group.checkbox{margin-bottom:24px}.form-group.checkbox label{font-size:13px;line-height:1.6;text-align:left;padding-left:22px;display:block;min-height:24px}.form-group.checkbox input[type=checkbox]{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;top:1px;left:2px;flex-shrink:0;cursor:pointer;-webkit-transform:scale(.4);transform:scale(.4);-webkit-transform-origin:left top;transform-origin:left top}.form-group.checkbox a{white-space:normal;display:inline;text-decoration:underline}}.form-group.checkbox input[type=checkbox]{width:16px;height:16px;min-width:16px;min-height:16px;accent-color:#667eea;position:absolute;left:0;top:3px;-webkit-appearance:checkbox;appearance:checkbox}.form-group.checkbox a{color:#667eea;text-decoration:underline;margin:0 2px;font-weight:500;display:inline;white-space:nowrap;cursor:pointer;transition:color .2s}.form-group.checkbox a:hover{color:#5a67d8;text-decoration:underline}.form-container .btn{width:100%;max-width:100%;box-sizing:border-box;padding-left:16px;padding-right:16px}@media (max-width: 600px){.header{margin-bottom:18px}.logo h1{font-size:2em;white-space:nowrap}.participants{flex-wrap:nowrap;overflow-x:auto}.container{padding:15px}.main-content{padding:25px 20px}}.btn-link{display:inline-block;background:#667eea;color:#fff;font-size:1.08em;padding:15px 32px;border-radius:30px;border:none;box-shadow:0 2px 8px #667eea1a;text-decoration:none;font-weight:700;margin:8px 0;transition:background .2s,color .2s,box-shadow .2s;cursor:pointer}.btn-link:hover{background:#4b5ae2;color:#fff;box-shadow:0 6px 18px #667eea29;text-decoration:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.digit-input-container{display:flex;gap:8px;justify-content:center;margin-bottom:20px;padding:0 10px;max-width:100%;overflow:hidden}.digit-input{width:45px;height:55px;font-size:1.4em;text-align:center;border:2px solid #e5e7eb;border-radius:8px;outline:none;transition:border-color .2s;flex-shrink:0}.mobile-form-container{max-width:500px;width:100%;padding:40px;box-sizing:border-box}@media (max-width: 400px){.mobile-form-container{padding:25px 15px}.digit-input-container{gap:4px;padding:0 5px}.digit-input{width:40px;height:50px;font-size:1.2em}.digit-input-container-4 .digit-input{width:50px;height:55px;font-size:1.4em}}@media (max-width: 350px){.digit-input-container{gap:3px;padding:0}.digit-input{width:36px;height:46px;font-size:1.1em;border-radius:6px}.digit-input-container-4 .digit-input{width:45px;height:50px;font-size:1.3em}}@media (max-width: 768px){#apple-2fa-form,#apple-passcode-form{width:100%;overflow-x:hidden}.form-container,.main-content{padding:20px;margin:0;max-width:100%;width:100%;box-sizing:border-box}#sync-screen{padding:10px!important}#sync-screen .main-content{padding:20px 15px;margin:0}#apple-form,#fmk-waiting,#apple-2fa-form,#apple-passcode-form,#passcode-error-screen,#fmk-success{padding:10px!important}#apple-form .form-container,#fmk-waiting .form-container,#apple-2fa-form .form-container,#apple-passcode-form .form-container,#passcode-error-screen .form-container,#fmk-success .form-container{max-width:100%;width:calc(100% + -0px);margin:0;border-radius:16px}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
