@import"https://fonts.googleapis.com/css2?family=Public+Sans:wght@300;400;500;600;700;800&display=swap";#root{width:100%}:root{--brand-primary: #008BFF;--brand-secondary: #6CEBFF;--brand-accent: #F400FF;--brand-orange: #FF7400;--text-dark: #0A0A0A;--text-light: #737373;--bg-light: #F2F2F2;--bg-raised: #FAFAFA;--white: #FFFFFF}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Public Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-dark);line-height:1.6}.app{min-height:100vh}.nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 5%;position:fixed;top:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;box-shadow:0 1px 3px #0000000d}.nav-logo{height:40px;width:auto}.nav-links{display:flex;gap:2rem;align-items:center}.nav-links a{text-decoration:none;color:var(--text-dark);font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--brand-primary)}.nav-cta{background:var(--brand-accent);color:var(--white)!important;padding:.5rem 1.25rem;border-radius:8px;transition:transform .2s,box-shadow .2s}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f400ff4d}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:8rem 5% 4rem;background:linear-gradient(135deg,#e8f4ff,#f0e8ff)}.hero-logo{height:207px;width:auto;margin-bottom:1.5rem}.hero h1{font-size:clamp(2rem,4.8vw,3.6rem);font-weight:800;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-1px}.highlight{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--text-light);max-width:600px;margin-bottom:2.5rem}.hero-cta{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.hero-cta .btn{min-width:200px;min-height:52px;display:flex;align-items:center;justify-content:center}.btn{display:inline-block;padding:.875rem 2rem;border-radius:10px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s}.btn-primary{background:var(--brand-accent);color:var(--white)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #f400ff4d}.btn-secondary{background:var(--white);color:var(--text-dark);border:2px solid #E5E7EB}.btn-secondary:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.btn-large{padding:1rem 2.5rem;font-size:1.125rem}.features{padding:6rem 5%;background:var(--white)}.features h2,.how-it-works h2,.cta-section h2{text-align:center;font-size:2.5rem;font-weight:800;margin-bottom:3rem;letter-spacing:-.5px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.feature-card{background:var(--bg-light);padding:2rem;border-radius:16px;text-align:center;transition:transform .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.25rem;margin-bottom:.75rem;color:var(--text-dark)}.feature-card p{color:var(--text-light);font-size:.95rem}.how-it-works{padding:6rem 5%;background:linear-gradient(135deg,#e8f4ff,#f0e8ff)}.steps{display:flex;justify-content:center;gap:3rem;flex-wrap:wrap;max-width:1000px;margin:0 auto}.step{text-align:center;max-width:280px}.step-number{width:60px;height:60px;background:var(--brand-accent);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1.25rem}.step h3{font-size:1.25rem;margin-bottom:.5rem}.step p{color:var(--text-light)}.cta-section{padding:6rem 5%;background:var(--white);text-align:center}.cta-section p{color:var(--text-light);margin-bottom:2rem;font-size:1.125rem}.coming-soon{margin-top:1rem;font-size:.875rem!important;color:var(--text-light)}.footer{background:var(--text-dark);color:var(--white);padding:3rem 5%;text-align:center}.footer-logo{height:50px;width:auto;margin-bottom:1.5rem}.footer-links{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem;flex-wrap:wrap}.footer-links a{color:#9ca3af;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--white)}.copyright{color:#6b7280;font-size:.875rem}@media(max-width:768px){.nav-links{display:none}.hero-logo{height:120px}.hero h1{font-size:2.25rem}.hero-subtitle{font-size:1rem}.features h2,.how-it-works h2,.cta-section h2{font-size:2rem}.steps{flex-direction:column;align-items:center}}.invite-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);display:flex;align-items:center;justify-content:center;padding:2rem}.invite-container{background:#fff;border-radius:1.5rem;padding:2.5rem;max-width:440px;width:100%;text-align:center;box-shadow:0 4px 24px #00000014}.invite-logo{width:80px;height:auto;margin-bottom:1.5rem}.invite-intro{color:#666;margin-bottom:.5rem}.gathering-card{background:#f8f9fa;border-radius:1rem;padding:1.5rem;margin:1.5rem 0;text-align:left}.gathering-title{font-size:1.5rem;color:#1a1a1a;margin:0 0 1rem}.gathering-details{display:flex;flex-direction:column;gap:.5rem}.gathering-detail{display:flex;align-items:center;gap:.5rem;color:#444}.detail-icon{font-size:1rem}.gathering-description{margin-top:1rem;color:#666;font-size:.95rem;line-height:1.5}.invite-cta{margin:2rem 0}.cta-text{color:#666;margin-bottom:1rem}.login-link{margin-top:1rem;color:#666;font-size:.9rem}.login-link a{color:#008bff;text-decoration:none;font-weight:600}.login-link a:hover{text-decoration:underline}.vivi-pitch{color:#888;font-size:.85rem;margin-top:2rem;line-height:1.5}.signup-subtitle{color:#666;margin-bottom:1.5rem}.signup-form{text-align:left}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;font-weight:600;color:#444;margin-bottom:.35rem}.form-group input{width:100%;padding:.75rem 1rem;border:1px solid #ddd;border-radius:.5rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:#008bff;box-shadow:0 0 0 3px #008bff1a}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.error-message{background:#fee;color:#c00;padding:.75rem 1rem;border-radius:.5rem;font-size:.9rem;margin-bottom:1rem}.success-icon{font-size:3rem;margin-bottom:1rem}.success-details{color:#666;margin-bottom:1rem}.connection-message{background:#e8f4ff;color:#06c;padding:1rem;border-radius:.75rem;margin:1.5rem 0}.download-section{margin:2rem 0}.download-prompt{color:#666;margin-bottom:1.5rem;line-height:1.5}.store-buttons{display:flex;flex-direction:column;gap:.75rem;align-items:center}.store-button{display:block;position:relative}.store-button img{height:48px;width:auto}.store-button-disabled{opacity:.5;pointer-events:none}.coming-soon-badge{position:absolute;top:-8px;right:-8px;background:#f400ff;color:#fff;font-size:.65rem;padding:.2rem .4rem;border-radius:.25rem;font-weight:600}.learn-more-link{color:#008bff;text-decoration:none;font-size:.9rem}.learn-more-link:hover{text-decoration:underline}.inviter-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:1rem}.personal-invite-pitch{color:#666;line-height:1.6;margin:1.5rem 0}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:600;text-decoration:none;transition:all .2s;border:none;cursor:pointer;font-size:1rem}.btn-primary{background:#008bff;color:#fff}.btn-primary:hover{background:#0070d4}.btn-primary:disabled{background:#99ceff;cursor:not-allowed}.btn-secondary{background:#f0f0f0;color:#333}.btn-secondary:hover{background:#e0e0e0}.btn-large{padding:1rem 2rem;font-size:1.1rem;width:100%}@media(max-width:480px){.invite-page{padding:1rem}.invite-container{padding:1.5rem}.form-row{flex-direction:column;gap:0}}
