.persona-card{position:relative;width:100%;max-width:320px;border-radius:24px;padding:1.5rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:#141419f2;border:2px solid transparent;overflow:hidden}.persona-card:before{content:"";position:absolute;inset:0;background:var(--persona-gradient);opacity:.1;transition:opacity .3s ease}.persona-card:hover{transform:translateY(-8px) scale(1.02);border-color:var(--persona-accent);box-shadow:0 20px 60px -20px var(--persona-primary),0 0 40px -10px var(--persona-accent)}.persona-card--selected{border-color:var(--persona-primary);box-shadow:0 0 0 3px var(--persona-primary),0 20px 60px -20px var(--persona-primary)}.persona-card__bg{position:absolute;inset:0;overflow:hidden;border-radius:24px}.persona-card__blob{position:absolute;width:200px;height:200px;background:var(--persona-gradient);border-radius:50%;filter:blur(60px);opacity:.3;top:-50%;right:-30%;transition:all .5s ease}.persona-card:hover .persona-card__blob{opacity:.5;transform:scale(1.2)}.persona-card__pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 2px 2px,rgba(255,255,255,.03) 1px,transparent 0);background-size:24px 24px}.persona-card__content{position:relative;z-index:1;display:flex;flex-direction:column;gap:.75rem}.persona-card__avatar{position:relative;width:140px;height:140px;margin:0 auto}.persona-card__avatar-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:50%;border:4px solid var(--persona-primary);box-shadow:0 0 30px -5px var(--persona-primary),0 0 60px -15px var(--persona-accent);transition:all .3s ease}.persona-card:hover .persona-card__avatar-img{transform:scale(1.08);box-shadow:0 0 40px -5px var(--persona-primary),0 0 80px -20px var(--persona-accent)}.persona-card__emoji{font-size:3rem;display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border-radius:50%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.persona-card__emoji--hidden{display:none}.persona-card__emoji--visible{display:flex}.persona-card__avatar-ring{position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--persona-primary);border-top-color:transparent;animation:rotate 8s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.persona-card__header{display:flex;align-items:center;justify-content:center;gap:.5rem}.persona-card__name{font-size:1.75rem;font-weight:700;background:var(--persona-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.persona-card__age{font-size:.875rem;color:#ffffff80;padding:.25rem .5rem;background:#ffffff0d;border-radius:12px}.persona-card__tagline{font-size:.9375rem;color:#fffc;text-align:center;line-height:1.5;font-style:italic}.persona-card__traits{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.persona-card__trait{font-size:.75rem;padding:.375rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:#ffffffb3;transition:all .2s ease}.persona-card:hover .persona-card__trait{background:#ffffff1a;border-color:var(--persona-accent);color:#fff}.persona-card__preview{position:relative;background:#0006;border-radius:16px;padding:1rem;border-left:3px solid var(--persona-primary);opacity:0;transform:translateY(10px);transition:all .3s ease}.persona-card__preview--visible{opacity:1;transform:translateY(0)}.persona-card__sample{font-size:.875rem;color:#ffffffd9;line-height:1.5;margin:0;min-height:40px}.persona-card__typing{display:flex;gap:4px;margin-top:.75rem}.persona-card__typing span{width:6px;height:6px;background:var(--persona-accent);border-radius:50%;animation:bounce 1.4s ease-in-out infinite both}.persona-card__typing span:nth-child(1){animation-delay:-.32s}.persona-card__typing span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.persona-card__voice{font-size:.75rem;color:#ffffff80;text-align:center;font-style:italic}.persona-card__cta{margin-top:.5rem;padding:.875rem 1.5rem;background:var(--persona-gradient);border:none;border-radius:12px;color:#fff;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 20px -8px var(--persona-primary)}.persona-card__cta:hover{transform:scale(1.05);box-shadow:0 6px 30px -10px var(--persona-primary)}.persona-card--selected .persona-card__cta{background:linear-gradient(135deg,#10b981,#059669)}.persona-card__corner{position:absolute;width:40px;height:40px;border:2px solid transparent;transition:all .3s ease}.persona-card__corner--tl{top:12px;left:12px;border-top-color:var(--persona-accent);border-left-color:var(--persona-accent);border-radius:8px 0 0}.persona-card__corner--br{bottom:12px;right:12px;border-bottom-color:var(--persona-accent);border-right-color:var(--persona-accent);border-radius:0 0 8px}.persona-card:hover .persona-card__corner{width:60px;height:60px}.persona-card--featured{max-width:420px;padding:1.5rem 2rem 2rem}.persona-card--featured .persona-card__avatar{width:200px;height:200px;margin-bottom:.5rem}.persona-card--featured .persona-card__avatar-img{border-width:5px;box-shadow:0 0 40px -5px var(--persona-primary),0 0 80px -20px var(--persona-accent)}.persona-card--featured:hover .persona-card__avatar-img{transform:scale(1.05);box-shadow:0 0 50px -5px var(--persona-primary),0 0 100px -25px var(--persona-accent)}.persona-card--featured .persona-card__emoji{font-size:5rem}.persona-card--featured .persona-card__name{font-size:2.5rem}.persona-card--library{max-width:280px;padding:1rem}.persona-card--library .persona-card__avatar{width:100px;height:100px}.persona-card--library .persona-card__avatar-img{border-width:3px}.persona-card--library .persona-card__emoji{font-size:2.5rem}.persona-card--library .persona-card__tagline{font-size:.8125rem}.persona-card--library .persona-card__preview,.persona-card--library .persona-card__voice{display:none}@media(max-width:640px){.persona-card{max-width:100%}.persona-card__name{font-size:1.5rem}.persona-card__preview{display:none}}.persona-picker{display:flex;flex-direction:column;align-items:center;gap:2rem;padding:2rem;max-width:1200px;margin:0 auto}.persona-picker__header{text-align:center;max-width:600px}.persona-picker__title{font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.75rem}.persona-picker__subtitle{font-size:1.125rem;color:#fff9;font-style:italic}.persona-picker__featured{transition:all .3s ease}.persona-picker__featured--transitioning{opacity:.5;transform:scale(.98)}.persona-picker__carousel{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;padding:1rem}.persona-picker__option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:#ffffff0d;border:2px solid transparent;border-radius:50px;cursor:pointer;transition:all .2s ease;color:#fffc}.persona-picker__option:hover{background:#ffffff1a;transform:translateY(-2px)}.persona-picker__option--selected{background:var(--option-color);border-color:var(--option-accent);color:#fff;box-shadow:0 4px 20px -8px var(--option-color)}.persona-picker__option-avatar{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover;border:2px solid var(--option-accent)}.persona-picker__option-emoji{font-size:1.5rem}.persona-picker__option-emoji--hidden{display:none}.persona-picker__option-emoji--visible{display:block}.persona-picker__option-name{font-weight:600;font-size:.9375rem}.persona-picker__stats{display:flex;gap:3rem;padding:1.5rem 3rem;background:#ffffff08;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.persona-picker__stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.persona-picker__stat-value{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#ff6b9d,#7b68ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.persona-picker__stat-label{font-size:.75rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.1em}@media(max-width:768px){.persona-picker{padding:1.5rem}.persona-picker__title{font-size:2rem}.persona-picker__carousel{gap:.5rem}.persona-picker__option{padding:.625rem 1rem}.persona-picker__option-name{display:none}.persona-picker__option-avatar{width:28px;height:28px}.persona-picker__stats{gap:1.5rem;padding:1rem 2rem}}.signup-modal{width:100%;max-width:420px;max-height:90vh;background:linear-gradient(180deg,#1a1a1f,#141418);border-radius:24px;box-shadow:0 25px 80px -20px #0009;overflow:hidden;display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif}.signup-modal__header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.05)}.signup-modal__header h2{margin:0;font-size:1.25rem;font-weight:700;color:#fff}.signup-modal__back{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:none;border-radius:50%;color:#ffffffb3;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.signup-modal__back:hover{background:#ffffff1a;color:#fff}.signup-modal__spacer{width:40px}.signup-modal__context{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:linear-gradient(90deg,rgba(var(--persona-primary),.1),transparent);border-bottom:1px solid rgba(255,255,255,.05)}.signup-modal__avatar{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:2rem;background:linear-gradient(135deg,var(--persona-primary),var(--persona-accent));border-radius:50%;flex-shrink:0}.signup-modal__context-text{display:flex;flex-direction:column;gap:.25rem}.signup-modal__context-name{margin:0;font-weight:600;color:#fff;font-size:1rem}.signup-modal__context-memory{margin:0;font-size:.875rem;color:#fff9;font-style:italic}.signup-modal__benefits{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.05)}.signup-modal__benefit{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#fffc}.signup-modal__benefit-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:8px;font-size:.875rem}.signup-modal__form{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.signup-modal__error{padding:.875rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;font-size:.875rem}.signup-modal__field{display:flex;flex-direction:column;gap:.5rem}.signup-modal__field label{font-size:.8125rem;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.05em}.signup-modal__field input{padding:.875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.9375rem;outline:none;transition:all .2s ease}.signup-modal__field input::-moz-placeholder{color:#ffffff4d}.signup-modal__field input::placeholder{color:#ffffff4d}.signup-modal__field input:focus{border-color:var(--persona-primary);background:#ffffff14}.signup-modal__field input:disabled{opacity:.5;cursor:not-allowed}.signup-modal__submit{margin-top:.5rem;padding:1rem;background:linear-gradient(135deg,var(--persona-primary),var(--persona-accent));border:none;border-radius:12px;color:#fff;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s ease}.signup-modal__submit:hover:not(:disabled){transform:scale(1.02);box-shadow:0 8px 30px -12px var(--persona-primary)}.signup-modal__submit:disabled{opacity:.6;cursor:not-allowed}.signup-modal__footer{text-align:center;padding:1rem 1.25rem 1.5rem;margin:0;font-size:.875rem;color:#ffffff80;border-top:1px solid rgba(255,255,255,.05)}.signup-modal__link{background:none;border:none;color:var(--persona-accent);font-weight:600;cursor:pointer;padding:0}.signup-modal__link:hover{text-decoration:underline}.signup-modal__migrating{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;gap:1.5rem}.signup-modal__spinner{position:relative;width:80px;height:80px}.signup-modal__spinner-ring{position:absolute;inset:0;border:3px solid transparent;border-top-color:var(--persona-primary);border-radius:50%;animation:spin 1s linear infinite}.signup-modal__spinner-ring:nth-child(2){inset:8px;border-top-color:var(--persona-accent);animation-duration:1.5s;animation-direction:reverse}.signup-modal__spinner-ring:nth-child(3){inset:16px;border-top-color:#ffffff80;animation-duration:2s}.signup-modal__migrating h3{margin:0;font-size:1.5rem;font-weight:700;color:#fff}.signup-modal__migrating p{margin:0;font-size:1rem;color:#fff9}.signup-modal__success{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;gap:1.5rem}.signup-modal__checkmark{width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;font-size:2.5rem;color:#fff;animation:scaleIn .5s ease}@keyframes scaleIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.signup-modal__success h3{margin:0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.signup-modal__success p{margin:0;font-size:1rem;color:#fff9}@media(max-width:480px){.signup-modal{max-width:100%;max-height:100vh;border-radius:0}}.guest-demo{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#0a0a0c}.guest-demo__bg{position:absolute;inset:0;overflow:hidden}.guest-demo__gradient{position:absolute;width:800px;height:800px;background:radial-gradient(circle,rgba(255,107,157,.15) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.guest-demo__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:60px 60px;pointer-events:none}.guest-demo__content{position:relative;z-index:1;width:100%;max-width:1200px;padding:2rem;display:flex;flex-direction:column;align-items:center}.guest-demo__picker{width:100%;display:flex;flex-direction:column;align-items:center;gap:2rem}.guest-demo__logo{display:flex;align-items:center;gap:.75rem}.guest-demo__logo-icon{font-size:2.5rem}.guest-demo__logo h1{margin:0;font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#ff6b9d,#ffb8d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.guest-demo__error{padding:1rem 1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;max-width:400px;text-align:center}.guest-demo__loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.guest-demo__spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:#ff6b9d;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.guest-demo__loading p{margin:0;color:#fff9}.guest-demo__chat{animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.guest-demo__signup{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.guest-demo__success{animation:scaleIn .4s ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.guest-demo__success-card{background:linear-gradient(180deg,#ffffff0d,#ffffff05);border:1px solid rgba(255,255,255,.1);border-radius:24px;padding:3rem;text-align:center;max-width:420px}.guest-demo__success-icon{font-size:4rem;margin-bottom:1rem}.guest-demo__success-card h2{margin:0 0 1rem;font-size:1.75rem;font-weight:700;color:#fff}.guest-demo__success-card p{margin:0 0 1.5rem;color:#ffffffb3;line-height:1.6}.guest-demo__success-btn{padding:1rem 2rem;background:linear-gradient(135deg,#ff6b9d,#ffb8d0);border:none;border-radius:12px;color:#fff;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.guest-demo__success-btn:hover{transform:scale(1.02);box-shadow:0 8px 30px -12px #ff6b9d}.guest-demo__debug{position:fixed;bottom:1rem;left:1rem;padding:.75rem 1rem;background:#000c;border-radius:8px;font-size:.75rem;color:#ffffff80;font-family:monospace;z-index:100}.guest-demo__debug p{margin:.25rem 0}@media(max-width:640px){.guest-demo__content{padding:1rem}.guest-demo__logo h1{font-size:2rem}.guest-demo__success-card{padding:2rem 1.5rem}}
