.app{min-height:100vh;display:flex;flex-direction:column}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;background-color:#f9f9f9}.container{max-width:1200px;margin:0 auto;padding:0 20px;text-align:center;place-content:center;display:flex;flex-direction:column}.landing-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 0}.landing-page h1{margin-bottom:20px;font-size:2.5rem;color:#2c3e50}.landing-page p{margin-bottom:10px;font-size:1.2rem;color:#555;max-width:600px}.login-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 0}.login-page h2{margin-bottom:20px;font-size:2rem;color:#2c3e50}.login-page p{margin-bottom:30px;font-size:1.1rem;color:#555}.info-text{margin-top:30px;margin-bottom:30px;font-size:1.1rem;color:#555}.logo-container{width:150px;margin:0 auto}img{width:100%}.callback-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 0}.callback-page h2{margin-bottom:30px;font-size:2rem;color:#2c3e50}.callback-page .loading p,.callback-page .success p,.callback-page .error p{margin-bottom:10px;font-size:1.1rem}.callback-page .success p{color:#27ae60}.callback-page .error p{color:#e74c3c}.login-button,.retry-button{padding:12px 24px;font-size:1rem;font-weight:600;color:#fff;background-color:#3498db;border:none;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.login-button:hover,.retry-button:hover{background-color:#2980b9}.retry-button{background-color:#e74c3c}.retry-button:hover{background-color:#c0392b}.spinner{display:inline-block;width:50px;height:50px;border:5px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:#3498db;animation:spin 1s ease-in-out infinite;margin:20px 0}@keyframes spin{to{transform:rotate(360deg)}}
