body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}#root,body,html{height:100%}.password-reset-container{align-items:center;display:flex;justify-content:center;width:100%}.password-reset-form{width:100%}.password-reset-form__title{color:#2d3748;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem;text-align:center}.password-reset-form__description{color:#4a5568;font-size:.875rem;line-height:1.5;margin-bottom:2rem;text-align:center}.password-reset-form__error{background:linear-gradient(135deg,#fee,#fef2f2);border:1px solid #fcc;border-radius:12px;box-shadow:0 2px 8px #fcc3;color:#c33;font-size:.875rem;margin-bottom:1rem;padding:1rem}.password-reset-form__field{margin-bottom:1.5rem}.password-reset-form__label{color:#2d3748;display:block;font-size:.875rem;font-weight:600;letter-spacing:.025em;margin-bottom:.75rem}.password-reset-form__input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:1rem;padding:1rem;transition:all .2s ease;width:100%}.password-reset-form__input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.password-reset-form__input--error{background:#fed7d74d;border-color:#e53e3e}.password-reset-form__input--error:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.password-reset-form__input:disabled{background:#f8f9facc;cursor:not-allowed;opacity:.6;transform:none}.password-reset-form__field-error{align-items:center;color:#e53e3e;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;margin-top:.5rem}.password-reset-form__submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.025em;margin-bottom:1rem;padding:1rem;transition:all .2s ease;width:100%}.password-reset-form__submit:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.password-reset-form__submit:active:not(:disabled){box-shadow:0 2px 8px #667eea4d;transform:translateY(0)}.password-reset-form__submit:disabled{background:linear-gradient(135deg,#a0aec0,#718096);box-shadow:none;cursor:not-allowed;transform:none}.password-reset-form__links{margin-bottom:1rem;text-align:center}.password-reset-form__link{border-radius:8px;color:#667eea;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem;text-decoration:none;transition:all .2s ease}.password-reset-form__link:hover{background:#667eea1a;color:#764ba2;transform:translateY(-1px)}.password-reset-form__return-info{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#4a5568;font-size:.75rem;padding:.75rem;text-align:center}.password-reset-success{text-align:center;width:100%}.password-reset-success__icon{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border-radius:50%;box-shadow:0 8px 24px #28a7454d;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.password-reset-success__title{color:#2d3748;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:1rem}.password-reset-success__message{color:#4a5568;font-size:.875rem;line-height:1.5;margin-bottom:2rem}.password-reset-success__actions{display:flex;flex-direction:column;gap:1rem}.password-reset-success__button{border:none;border-radius:12px;cursor:pointer;font-size:.875rem;font-weight:600;letter-spacing:.025em;padding:1rem;text-align:center;text-decoration:none;transition:all .2s ease}.password-reset-success__button--primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d;color:#fff}.password-reset-success__button--primary:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 6px 20px #667eea66;text-decoration:none;transform:translateY(-2px)}.password-reset-success__button--secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8f9facc;border:2px solid #e2e8f0;color:#4a5568}.password-reset-success__button--secondary:hover{background:#edf2f7e6;border-color:#cbd5e0;transform:translateY(-1px)}@media (max-width:768px){.password-reset-form__title,.password-reset-success__title{font-size:1.5rem}.password-reset-form__input,.password-reset-form__submit,.password-reset-success__button{padding:.875rem}}@media (max-width:480px){.password-reset-form__title,.password-reset-success__title{font-size:1.25rem}.password-reset-form__input,.password-reset-form__submit,.password-reset-success__button{border-radius:10px;padding:.75rem}.password-reset-success__icon{font-size:1.5rem;height:60px;width:60px}}.password-reset-form__link:focus,.password-reset-form__submit:focus,.password-reset-success__button:focus{outline:2px solid #667eea;outline-offset:2px}.password-reset-form__input:focus{outline:none}@media (prefers-contrast:high){.password-reset-form__input{background:#fff;border:2px solid #000}.password-reset-form__submit,.password-reset-success__button{border:2px solid #000}.password-reset-success__button--primary{background:#000;color:#fff}}@media (prefers-reduced-motion:reduce){.password-reset-form__input,.password-reset-form__link,.password-reset-form__submit,.password-reset-success__button{transform:none;transition:none}.password-reset-form__input:focus,.password-reset-form__submit:hover:not(:disabled),.password-reset-success__button:hover{transform:none}}.error-boundary{align-items:center;background-color:#f8f9fa;display:flex;justify-content:center;min-height:100vh;padding:1rem}.error-boundary__content{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:500px;padding:2rem;text-align:center;width:100%}.error-boundary__icon{font-size:3rem;margin-bottom:1rem}.error-boundary__title{color:#dc3545;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.error-boundary__message{color:#666;font-size:1rem;line-height:1.5;margin-bottom:2rem}.error-boundary__actions{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.error-boundary__button{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.error-boundary__button--primary{background-color:#007bff;color:#fff}.error-boundary__button--primary:hover{background-color:#0056b3}.error-boundary__button--secondary{background-color:#6c757d;color:#fff}.error-boundary__button--secondary:hover{background-color:#545b62}.error-boundary__details{border:1px solid #dee2e6;border-radius:4px;margin-top:1rem;text-align:left}.error-boundary__details-summary{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;cursor:pointer;font-weight:500;padding:.75rem}.error-boundary__details-summary:hover{background-color:#e9ecef}.error-boundary__error-info{padding:1rem}.error-boundary__error-info h4{color:#495057;font-size:.875rem;margin:0 0 .5rem}.error-boundary__error-text{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;font-family:Courier New,monospace;font-size:.75rem;margin-bottom:1rem;overflow-x:auto;padding:.75rem;white-space:pre-wrap}@media (max-width:480px){.error-boundary{padding:.5rem}.error-boundary__content{padding:1.5rem}.error-boundary__actions{flex-direction:column}.error-boundary__button{width:100%}}.error-boundary__button:focus,.error-boundary__details-summary:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast:high){.error-boundary__button,.error-boundary__content{border:2px solid #000}}.authentication-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem;position:relative}.authentication-page:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 40% 40%,#7877c633 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.authentication-page__container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:24px;box-shadow:0 32px 64px #00000026,0 0 0 1px #fff3;display:flex;flex-direction:column;max-width:520px;min-height:600px;padding:3rem;position:relative;width:100%;z-index:1}.authentication-page__header{margin-bottom:2.5rem;text-align:center}.authentication-page__title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 1.5rem}.authentication-page__return-info{margin-top:1rem}.authentication-page__return-message{background:linear-gradient(135deg,#e6fffa,#f0fff4);border:1px solid #81e6d9;border-radius:12px;box-shadow:0 2px 8px #81e6d91a;color:#4a5568;font-size:.875rem;margin:0;padding:1rem}.authentication-page__return-error{background:linear-gradient(135deg,#fed7d7,#fef2f2);border:1px solid #feb2b2;border-radius:12px;box-shadow:0 2px 8px #feb2b21a;color:#e53e3e;font-size:.875rem;padding:1rem}.authentication-page__return-error p{margin:0 0 .5rem}.authentication-page__clear-return-url{background:linear-gradient(135deg,#e53e3e,#c53030);border:none;border-radius:8px;box-shadow:0 2px 4px #e53e3e33;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.authentication-page__clear-return-url:hover{background:linear-gradient(135deg,#c53030,#9c2626);box-shadow:0 4px 8px #e53e3e4d;transform:translateY(-1px)}.authentication-page__content{display:flex;flex:1 1;flex-direction:column;justify-content:center}.authentication-page__footer{border-top:1px solid #e2e8f099;margin-top:2.5rem;padding-top:1.5rem;text-align:center}.authentication-page__footer p{color:#4a5568;font-size:.875rem;margin:0}.authentication-page__link-button{background:none;border:none;border-radius:6px;color:#667eea;cursor:pointer;font-size:inherit;font-weight:500;padding:.25rem .5rem;position:relative;text-decoration:none;transition:all .2s ease}.authentication-page__link-button:hover{background:#667eea1a;color:#764ba2;transform:translateY(-1px)}.authentication-page__link-button:focus{outline:2px solid #667eea;outline-offset:2px}.authentication-page__loading{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:200px}.authentication-page__spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.authentication-page{padding:1rem}.authentication-page__container{max-width:90vw;min-height:auto;padding:2rem}.authentication-page__title{font-size:1.75rem}}@media (max-width:480px){.authentication-page{padding:.5rem}.authentication-page__container{border-radius:16px;max-width:95vw;padding:1.5rem}.authentication-page__title{font-size:1.5rem}.authentication-page__header{margin-bottom:2rem}}.google-signin-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #dadce0;border-radius:12px;box-shadow:0 4px 12px #3c404326;color:#3c4043;cursor:pointer;display:flex;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:600;justify-content:center;letter-spacing:.025em;min-height:48px;padding:1rem;position:relative;transition:all .2s ease;width:100%}.google-signin-button:hover:not(:disabled){background:#f8f9fafa;border-color:#4285f4;box-shadow:0 6px 20px #4285f433;transform:translateY(-2px)}.google-signin-button:focus{border-color:#4285f4;box-shadow:0 0 0 3px #4285f433;outline:none}.google-signin-button:active:not(:disabled){background:#f1f3f4fa;box-shadow:0 2px 8px #3c404333;transform:translateY(0)}.google-signin-button--disabled{background:#f8f9facc;border-color:#e8eaed;box-shadow:none;color:#9aa0a6;cursor:not-allowed;transform:none}.google-signin-button--loading{cursor:wait}.google-signin-button__content{align-items:center;display:flex;gap:14px;justify-content:center}.google-signin-button__icon,.google-signin-button__spinner{flex-shrink:0;height:20px;width:20px}.google-signin-button__spinner{animation:google-signin-spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#4285f4}.google-signin-button__text{font-size:15px;font-weight:600;letter-spacing:.025em;line-height:1;white-space:nowrap}@keyframes google-signin-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-contrast:high){.google-signin-button{border:2px solid #000}.google-signin-button:focus{border:2px solid #4285f4;outline:2px solid #4285f4;outline-offset:2px}}@media (prefers-reduced-motion:reduce){.google-signin-button{transition:none}.google-signin-button__spinner{animation:none;border:2px solid #4285f4;border-top-color:#0000}}@media (max-width:480px){.google-signin-button{min-height:48px;padding:.875rem 1rem}.google-signin-button__text{font-size:16px}}@media (prefers-color-scheme:dark){.google-signin-button{background-color:#2d2e30;border-color:#5f6368;color:#e8eaed}.google-signin-button:hover:not(:disabled){background-color:#35363a;border-color:#5f6368}.google-signin-button:active:not(:disabled){background-color:#3c4043}.google-signin-button--disabled{background-color:#3c4043;color:#9aa0a6}}.apple-signin-button{align-items:center;background:linear-gradient(135deg,#000,#1a1a1a);border:none;border-radius:12px;box-shadow:0 4px 12px #0000004d;color:#fff;cursor:pointer;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;font-weight:600;justify-content:center;letter-spacing:.025em;line-height:1.2;min-height:48px;outline:none;overflow:hidden;padding:1rem;position:relative;text-decoration:none;transition:all .2s ease;width:100%}.apple-signin-button:hover:not(.apple-signin-button--disabled):not(.apple-signin-button--loading){background:linear-gradient(135deg,#1a1a1a,#2d2d2d);box-shadow:0 6px 20px #0006;transform:translateY(-2px)}.apple-signin-button:active:not(.apple-signin-button--disabled):not(.apple-signin-button--loading){background:linear-gradient(135deg,#333,#404040);box-shadow:0 2px 8px #0000004d;transform:translateY(0)}.apple-signin-button:focus-visible{box-shadow:0 4px 12px #0000004d,0 0 0 3px #007aff33;outline:2px solid #007aff;outline-offset:2px}.apple-signin-button--disabled{background:linear-gradient(135deg,#666,#777);box-shadow:none;color:#999;cursor:not-allowed;transform:none}.apple-signin-button--loading{background:linear-gradient(135deg,#333,#404040);cursor:wait}.apple-signin-button__content{align-items:center;display:flex;gap:14px;justify-content:center;width:100%}.apple-signin-button__icon{color:#fff;flex-shrink:0;height:20px;width:20px}.apple-signin-button--disabled .apple-signin-button__icon{color:#999}.apple-signin-button__text{font-size:15px;font-weight:600;letter-spacing:.025em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.apple-signin-button__spinner{animation:apple-signin-spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;flex-shrink:0;height:20px;width:20px}@keyframes apple-signin-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:480px){.apple-signin-button{font-size:14px;min-height:40px;padding:10px 14px}.apple-signin-button__icon,.apple-signin-button__spinner{height:16px;width:16px}.apple-signin-button__content{gap:10px}}@media (prefers-contrast:high){.apple-signin-button{border:2px solid #fff}.apple-signin-button:focus-visible{outline:3px solid #007aff;outline-offset:3px}}@media (prefers-reduced-motion:reduce){.apple-signin-button{transition:none}.apple-signin-button:hover:not(.apple-signin-button--disabled):not(.apple-signin-button--loading){transform:none}.apple-signin-button__spinner{animation:none;border:2px solid #fff;border-radius:50%}}@media (prefers-color-scheme:light){.apple-signin-button--light{background-color:#fff;border:1px solid #d1d1d6;color:#000}.apple-signin-button--light:hover:not(.apple-signin-button--disabled):not(.apple-signin-button--loading){background-color:#f2f2f7}.apple-signin-button--light .apple-signin-button__icon{color:#000}.apple-signin-button--light .apple-signin-button__spinner{border-top-color:#000}}.google-auth-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;box-shadow:0 1px 3px 0 #0000001a;margin:1rem 0;padding:1rem}.google-auth-error__content{display:flex;flex-direction:column;gap:.75rem}.google-auth-error__header{align-items:center;display:flex;gap:.5rem}.google-auth-error__icon{flex-shrink:0;font-size:1.25rem}.google-auth-error__title{color:#dc2626;font-size:1rem;font-weight:600;margin:0}.google-auth-error__description{color:#7f1d1d;font-size:.875rem;line-height:1.5;margin:0}.google-auth-error__actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.google-auth-error__action{border:1px solid #0000;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.google-auth-error__action--primary{background-color:#dc2626;border-color:#dc2626;color:#fff}.google-auth-error__action--primary:hover{background-color:#b91c1c;border-color:#b91c1c}.google-auth-error__action--secondary{background-color:#f3f4f6;border-color:#d1d5db;color:#374151}.google-auth-error__action--secondary:hover{background-color:#e5e7eb;border-color:#9ca3af}.google-auth-error__action--tertiary{background-color:initial;border-color:#0000;color:#6b7280}.google-auth-error__action--tertiary:hover{background-color:#f9fafb;color:#374151}.google-auth-error__help{border-top:1px solid #fecaca;margin-top:.75rem;padding-top:.75rem}.google-auth-error__details{font-size:.875rem}.google-auth-error__details-summary{align-items:center;color:#7f1d1d;cursor:pointer;display:flex;font-weight:500;gap:.5rem;list-style:none;padding:.25rem 0}.google-auth-error__details-summary::-webkit-details-marker{display:none}.google-auth-error__details-summary:before{content:"▶";font-size:.75rem;transition:transform .2s ease}.google-auth-error__details[open] .google-auth-error__details-summary:before{transform:rotate(90deg)}.google-auth-error__details-summary:hover{color:#991b1b}.google-auth-error__details-content{color:#7f1d1d;padding:.5rem 0}.google-auth-error__help-list{list-style-type:decimal;margin:0;padding-left:1.25rem}.google-auth-error__help-list li{line-height:1.4;margin-bottom:.25rem}.google-auth-error__action:focus,.google-auth-error__details-summary:focus{outline:2px solid #3b82f6;outline-offset:2px}.google-auth-error__details-summary:focus{border-radius:2px}@media (max-width:480px){.google-auth-error{padding:.75rem}.google-auth-error__actions{flex-direction:column}.google-auth-error__action{text-align:center;width:100%}}@media (prefers-contrast:high){.google-auth-error{border:2px solid #dc2626}.google-auth-error__action{border-width:2px}}.google-auth-error--info{background-color:#eff6ff;border-color:#bfdbfe}.google-auth-error--info .google-auth-error__title{color:#1d4ed8}.google-auth-error--info .google-auth-error__description{color:#1e3a8a}.google-auth-error--warning{background-color:#fffbeb;border-color:#fed7aa}.google-auth-error--warning .google-auth-error__title{color:#d97706}.google-auth-error--warning .google-auth-error__description{color:#92400e}.login-form-container{align-items:center;display:flex;justify-content:center;width:100%}.login-form{display:flex;flex-direction:column;gap:1.5rem;width:100%}.login-form__title{color:#2d3748;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;margin-bottom:2rem;text-align:center}.login-form__error{background:linear-gradient(135deg,#fee,#fef2f2);border:1px solid #fcc;border-radius:12px;box-shadow:0 2px 8px #fcc3;color:#c33;font-size:.875rem;margin-bottom:1rem;padding:1rem}.login-form__error--apple{background:linear-gradient(135deg,#fef7f0,#fefcfb);border:1px solid #f4a261;box-shadow:0 2px 8px #f4a26133;color:#d63384}.login-form__error-actions{display:flex;gap:.5rem;margin-top:.5rem}.login-form__error-button{border:none;border-radius:8px;cursor:pointer;font-size:.75rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.login-form__error-button--retry{background:linear-gradient(135deg,#007aff,#0056b3);box-shadow:0 2px 4px #007aff33;color:#fff}.login-form__error-button--retry:hover{background:linear-gradient(135deg,#0056b3,#003d82);box-shadow:0 4px 8px #007aff4d;transform:translateY(-1px)}.login-form__error-button--dismiss{background:linear-gradient(135deg,#6c757d,#545b62);box-shadow:0 2px 4px #6c757d33;color:#fff}.login-form__error-button--dismiss:hover{background:linear-gradient(135deg,#545b62,#3d4449);box-shadow:0 4px 8px #6c757d4d;transform:translateY(-1px)}.login-form__field{margin-bottom:1.5rem}.login-form__label{color:#2d3748;display:block;font-size:.875rem;font-weight:600;letter-spacing:.025em;margin-bottom:.75rem}.login-form__input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:1rem;padding:1rem;transition:all .2s ease;width:100%}.login-form__input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.login-form__input--error{background:#fed7d74d;border-color:#e53e3e}.login-form__input--error:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.login-form__input:disabled{background:#f8f9facc;cursor:not-allowed;opacity:.6;transform:none}.login-form__field-error{align-items:center;color:#e53e3e;display:flex;font-size:.75rem;font-weight:500;gap:.25rem;margin-top:.5rem}.login-form__submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.025em;margin-bottom:1rem;padding:1rem;transition:all .2s ease;width:100%}.login-form__submit:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.login-form__submit:active:not(:disabled){box-shadow:0 2px 8px #667eea4d;transform:translateY(0)}.login-form__submit:disabled{background:linear-gradient(135deg,#a0aec0,#718096);box-shadow:none;cursor:not-allowed;transform:none}.login-form__links{margin-bottom:1rem;text-align:center}.login-form__link{border-radius:8px;color:#667eea;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem;text-decoration:none;transition:all .2s ease}.login-form__link:hover{background:#667eea1a;color:#764ba2;transform:translateY(-1px)}.login-form__return-info{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#4a5568;font-size:.75rem;padding:.75rem;text-align:center}.login-form__social-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.5rem;transition:opacity .3s ease,transform .3s ease}.login-form__social-section--hidden{opacity:.5;pointer-events:none}.login-form__apple-button,.login-form__apple-section,.login-form__google-button,.login-form__google-section{width:100%}.login-form__divider{margin:2rem 0;position:relative;text-align:center}.login-form__divider:before{background:linear-gradient(90deg,#0000,#e2e8f0cc 20%,#e2e8f0cc 80%,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.login-form__divider-text{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;color:#718096;font-size:.875rem;font-weight:600;letter-spacing:.1em;padding:0 2rem;position:relative;text-transform:uppercase;z-index:1}.login-form__email-form{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:relative;transition:opacity .3s ease,transform .3s ease}.login-form__email-close-button{align-items:center;background:none;border:none;border-radius:4px;color:#718096;cursor:pointer;display:flex;font-size:1.5rem;height:2rem;justify-content:center;line-height:1;padding:.25rem .5rem;position:absolute;right:.75rem;top:.75rem;transition:all .2s ease;width:2rem}.login-form__email-close-button:hover{background:#0000000d;color:#2d3748}.login-form__email-close-button:focus-visible{outline:2px solid #667eea;outline-offset:2px}.login-form__email-toggle-button{align-items:center;background:linear-gradient(135deg,#fff,#f7fafc);border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 4px #0000000d;color:#4a5568;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;padding:.875rem 1.5rem;transition:all .2s ease;width:100%}.login-form__email-toggle-button:hover:not(:disabled){background:linear-gradient(135deg,#f7fafc,#edf2f7);border-color:#cbd5e0;box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.login-form__email-toggle-button:active:not(:disabled){box-shadow:0 2px 4px #0000000d;transform:translateY(0)}.login-form__email-toggle-button:disabled{cursor:not-allowed;opacity:.6}.login-form__email-toggle-button:focus-visible{outline:2px solid #667eea;outline-offset:2px}.login-form__email-form--hidden{opacity:.5;pointer-events:none}.login-form__progress-indicator{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7fafccc;border:1px solid #e2e8f099;border-radius:12px;box-shadow:0 2px 8px #0000000d;color:#4a5568;display:flex;font-size:.875rem;font-weight:500;justify-content:center;margin:1rem 0;padding:1.25rem}.login-form__progress-indicator--google{background:linear-gradient(135deg,#ebf8ff,#f0f9ff);border-color:#4285f44d;color:#2b6cb0}.login-form__progress-indicator--apple{background:linear-gradient(135deg,#f8f9fa,#fff);border-color:#0000001a;color:#212529}.login-form__progress-indicator--email{background:linear-gradient(135deg,#e6f3ff,#f0f9ff);border-color:#667eea4d;color:#1a365d}@media (max-width:768px){.login-form__title{font-size:1.5rem}.login-form__input,.login-form__submit{padding:.875rem}}@media (max-width:480px){.login-form__title{font-size:1.25rem}.login-form__input,.login-form__submit{border-radius:10px;padding:.75rem}.login-form__divider{margin:1.5rem 0}.login-form__divider-text{padding:0 1.5rem}}.login-form__link:focus,.login-form__submit:focus{outline:2px solid #667eea;outline-offset:2px}.login-form__input:focus{outline:none}@media (prefers-contrast:high){.login-form__input{background:#fff;border:2px solid #000}.login-form__submit{background:#000;border:2px solid #000;color:#fff}.login-form__divider:before{background:#000}}@media (prefers-reduced-motion:reduce){.login-form__error-button,.login-form__input,.login-form__link,.login-form__submit{transform:none;transition:none}.login-form__input:focus,.login-form__submit:hover:not(:disabled){transform:none}}.unsupported-client{align-items:center;background-color:#f8f9fa;display:flex;justify-content:center;min-height:100vh;padding:1rem}.unsupported-client__container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;max-width:500px;padding:2rem;text-align:center;width:100%}.unsupported-client__icon{font-size:3rem;margin-bottom:1rem}.unsupported-client__title{color:#dc3545;font-size:1.5rem;font-weight:600;line-height:1.3;margin-bottom:1.5rem}.unsupported-client__message{margin-bottom:1.5rem}.unsupported-client__error{color:#dc3545;font-size:1rem;font-weight:500;margin-bottom:1rem}.unsupported-client__help{color:#6c757d;font-size:.9rem;line-height:1.5;margin:0}.unsupported-client__details{background-color:#f8f9fa;border-radius:4px;margin-bottom:1.5rem;padding:1rem;text-align:left}.unsupported-client__client-info{color:#495057;font-size:.9rem;margin:0}.unsupported-client__client-info code{background-color:#e9ecef;border-radius:3px;color:#495057;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;padding:.2rem .4rem}.unsupported-client__actions{display:flex;gap:1rem;justify-content:center}.unsupported-client__retry-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;transition:background-color .2s ease}.unsupported-client__retry-button:hover{background-color:#0056b3}.unsupported-client__retry-button:focus{outline:2px solid #007bff;outline-offset:2px}.unsupported-client__retry-button:active{background-color:#004085}@media (max-width:576px){.unsupported-client{padding:.5rem}.unsupported-client__container{padding:1.5rem}.unsupported-client__title{font-size:1.25rem}.unsupported-client__icon{font-size:2.5rem}}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center}.loading-spinner--overlay{background-color:#fffc;bottom:0;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-spinner__spinner{animation:loading-spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#007bff}.loading-spinner__spinner--small{border-width:2px;height:20px;width:20px}.loading-spinner__spinner--medium{border-width:3px;height:40px;width:40px}.loading-spinner__spinner--large{border-width:4px;height:60px;width:60px}.loading-spinner__message{color:#666;font-size:.875rem;max-width:200px;text-align:center}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@keyframes loading-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-contrast:high){.loading-spinner__spinner{border-color:#007bff #000 #000}}@media (prefers-reduced-motion:reduce){.loading-spinner__spinner{animation:none;border-top-color:#007bff}}.client-aware-login{width:100%}.client-aware-login__header{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;border-radius:8px 8px 0 0;margin-bottom:1.5rem;padding:1rem;text-align:center}.client-aware-login__client-info{color:#495057;font-size:.9rem;line-height:1.4;margin:0}.client-aware-login__client-info strong{color:#212529;font-weight:600}@media (max-width:576px){.client-aware-login__header{margin-bottom:1rem;padding:.75rem}.client-aware-login__client-info{font-size:.85rem}}.dashboard{background-color:#f7fafc;min-height:100vh}.dashboard__container{margin:0 auto;max-width:1200px;padding:0}.dashboard__header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.dashboard__title{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0}.dashboard__user,.dashboard__user-info{align-items:center;display:flex;gap:1rem}.dashboard__user-email{color:#4a5568;font-size:.875rem;font-weight:500}.dashboard__sign-out{background:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.dashboard__sign-out:hover:not(:disabled){background:#c53030}.dashboard__sign-out:disabled{cursor:not-allowed;opacity:.6}.dashboard__content{padding:2rem}.dashboard__welcome{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.dashboard__welcome h2{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.dashboard__welcome>p{color:#4a5568;margin:0 0 2rem}.dashboard__platform-info,.dashboard__user-details{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.dashboard__platform-info h3,.dashboard__user-details h3{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 1rem}.dashboard__platform-list,.dashboard__user-list{grid-gap:.5rem 1rem;display:grid;gap:.5rem 1rem;grid-template-columns:auto 1fr;margin:0}.dashboard__platform-list dt,.dashboard__user-list dt{color:#4a5568;font-size:.875rem;font-weight:500}.dashboard__platform-list dd,.dashboard__user-list dd{color:#2d3748;font-size:.875rem;margin:0;word-break:break-all}.dashboard__error{background:#fed7d7;border:1px solid #feb2b2;border-radius:8px;color:#c53030;padding:1rem}.dashboard__error h3{font-size:1rem;font-weight:600;margin:0 0 .5rem}.dashboard__error p{font-size:.875rem;margin:0}@media (max-width:768px){.dashboard__header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.dashboard__user-info{justify-content:space-between;width:100%}.dashboard__content{padding:1rem}.dashboard__welcome{padding:1.5rem}.dashboard__platform-list,.dashboard__user-list{gap:.25rem;grid-template-columns:1fr}.dashboard__platform-list dt,.dashboard__user-list dt{font-weight:600}}.App{text-align:center}.App-header{background-color:#282c34;color:#fff;padding:20px}.App-main{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 140px);padding:20px}
/*# sourceMappingURL=main.b52bb2d0.css.map*/