.landing-page{width:100%;padding:2rem}.container{max-width:1200px;margin:0 auto}.hero{text-align:center;color:#fff}.hero h1{font-size:4rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#fff,#f0f0f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{font-size:1.5rem;margin-bottom:1rem;opacity:.95}.description{font-size:1.1rem;max-width:700px;margin:0 auto 3rem;line-height:1.6;opacity:.9}.cta-buttons{margin-bottom:4rem}.btn{padding:1rem 2.5rem;font-size:1.1rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-primary{background:#fff;color:#667eea;box-shadow:0 4px 15px #0003}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:4rem;padding:2rem}.feature{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature h3{font-size:1.3rem;margin-bottom:.5rem}.feature p{opacity:.9;line-height:1.5}.auth-status{margin-top:3rem}.status-badge{display:inline-block;padding:.75rem 1.5rem;background:#fff3;border-radius:25px;font-size:.9rem;border:1px solid rgba(255,255,255,.3)}.status-badge.authenticated{background:#4caf504d;border-color:#4caf5080}.auth-callback{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem}.callback-card{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 10px 40px #0003;text-align:center;max-width:500px;width:100%}.callback-card h2{color:#333;margin-bottom:1rem;font-size:1.8rem}.callback-card p{color:#666;margin-bottom:.5rem}.spinner{border:4px solid rgba(102,126,234,.2);border-top:4px solid #667eea;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite;margin:0 auto 2rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-icon{font-size:4rem;color:#4caf50;margin-bottom:1rem;animation:scaleIn .5s ease}.error-icon{font-size:4rem;color:#f44336;margin-bottom:1rem;animation:scaleIn .5s ease}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.redirect-message{font-size:.9rem;font-style:italic;margin-top:1rem;opacity:.7}.dashboard{min-height:100vh;padding:2rem}.dashboard-container{max-width:1000px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;color:#fff}.dashboard-header h1{font-size:2.5rem;font-weight:700}.btn-logout{padding:.75rem 1.5rem;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease}.btn-logout:hover{background:#ffffff4d;transform:translateY(-1px)}.welcome-card,.info-card,.next-steps{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 15px #0000001a;margin-bottom:2rem}.welcome-card h2{color:#333;margin-bottom:.5rem;font-size:1.8rem}.user-email{color:#667eea;font-size:1.1rem;margin-bottom:.5rem}.user-org{color:#666;font-size:.95rem;margin-bottom:1.5rem}.auth-success{margin-top:2rem;padding:1.5rem;background:#4caf501a;border-radius:8px;border:1px solid rgba(76,175,80,.3)}.success-badge{display:inline-flex;align-items:center;gap:.5rem;background:#4caf50;color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:600;margin-bottom:1rem}.badge-icon{font-size:1.2rem}.success-message{color:#2e7d32;margin:0}.info-card h3{color:#333;margin-bottom:1rem;font-size:1.4rem}.info-card p{color:#666;line-height:1.6;margin-bottom:1rem}.info-card code{background:#667eea1a;padding:.2rem .5rem;border-radius:4px;color:#667eea;font-family:Courier New,monospace}.info-details{display:grid;gap:.75rem;margin-top:1.5rem}.info-item{padding:.75rem;background:#00000005;border-radius:6px;color:#333}.info-item strong{color:#667eea;margin-right:.5rem}.next-steps h3{color:#333;margin-bottom:1rem;font-size:1.4rem}.next-steps ul{list-style:none;padding:0}.next-steps li{padding:.75rem 0;color:#666;font-size:1.05rem;border-bottom:1px solid #eee}.next-steps li:last-child{border-bottom:none}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333}#root{min-height:100vh;display:flex;align-items:center;justify-content:center}
