*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0f;--surface:#14141f;--border:#23233a;--text:#e4e4ed;--text-muted:#9292a8;--accent:#1d9bf0;--accent-hover:#1a8cd8;--green:#2ecc71;--radius:12px}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.app{max-width:960px;margin:0 auto;padding:0 24px}.header{justify-content:space-between;align-items:center;padding:24px 0;display:flex}.header-right{align-items:center;gap:12px;display:flex}.user-badge{color:var(--accent);font-size:.95rem;font-weight:600}.logout-btn{color:var(--text-muted);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:6px 14px;font-size:.85rem;transition:all .15s}.logout-btn:hover{color:var(--text);border-color:var(--text-muted)}.logo{letter-spacing:-.02em;color:var(--text);font-size:1.5rem;font-weight:700}.nav-cta{background:var(--accent);color:#fff;border-radius:8px;padding:8px 20px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s}.nav-cta:hover{background:var(--accent-hover)}.hero{text-align:center;padding:100px 0 80px}.hero-badge{letter-spacing:.12em;color:var(--accent);border:1px solid var(--border);border-radius:20px;margin-bottom:32px;padding:6px 18px;font-size:.75rem;font-weight:700;display:inline-block}.hero-flip{color:var(--text-muted);min-height:2em;margin-bottom:16px;font-size:clamp(1.2rem,3vw,1.6rem);font-weight:500}.flip-word{color:var(--accent);font-weight:700;transition:opacity .3s,transform .3s;display:inline-block}.flip-word.flip-out{opacity:0;transform:translateY(12px)}.hero h1{letter-spacing:-.03em;max-width:760px;margin:0 auto 28px;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1.12}.hero h1 em{color:var(--accent);font-style:italic}.subtitle{color:var(--text-muted);max-width:580px;margin:0 auto 40px;font-size:1.15rem;line-height:1.7}.subtitle strong{color:var(--accent)}.hero-example{color:var(--text-muted);background:var(--card);border:1px solid var(--border);border-radius:var(--radius);letter-spacing:.02em;text-align:left;width:fit-content;min-width:420px;min-height:1.6em;margin:0 auto 32px;padding:12px 24px;font-family:monospace;font-size:1.1rem;display:block}.cta-button{background:var(--accent);color:#fff;border-radius:var(--radius);padding:16px 40px;font-size:1.05rem;font-weight:600;text-decoration:none;transition:background .15s,transform .15s;display:inline-block}.cta-button:hover{background:var(--accent-hover);transform:translateY(-1px)}.cta-hint{color:var(--text-muted);margin-top:16px;font-size:.85rem}.section-label{text-align:center;letter-spacing:.14em;color:var(--text-muted);margin-bottom:40px;font-size:.75rem;font-weight:700}.how-it-works{border-top:1px solid var(--border);padding:64px 0 80px}.steps{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;display:grid}.step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:32px 28px}.step-number{color:var(--text);letter-spacing:-.02em;margin-bottom:16px;font-size:2rem;font-weight:800}.step h3{margin-bottom:8px;font-size:1.05rem;font-weight:700}.step p{color:var(--text-muted);font-size:.92rem;line-height:1.6}.step-tag{color:var(--accent);background:#1d9bf01a;border-radius:6px;margin-top:16px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block}.vision-section{border-top:1px solid var(--border);padding:80px 0}.vision-content{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.vision-text h2{letter-spacing:-.02em;margin-bottom:20px;font-size:1.8rem;font-weight:800;line-height:1.2}.vision-text p{color:var(--text-muted);margin-bottom:16px;font-size:.95rem;line-height:1.7}.vision-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.card-header{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:24px;padding-bottom:20px;display:flex}.card-avatar{background:var(--accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;font-size:.95rem;font-weight:700;display:flex}.card-name{font-size:1rem;font-weight:700}.card-meta{color:var(--text-muted);margin-top:2px;font-size:.8rem}.card-row{justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.card-row+.card-row{border-top:1px solid var(--border)}.card-label{color:var(--text-muted);min-width:80px;font-size:.82rem}.card-value{text-align:right;color:var(--text);font-size:.9rem}.card-value.highlight{color:var(--green);font-weight:600}.use-cases{border-top:1px solid var(--border);padding:80px 0}.use-cases-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.use-case-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px 24px}.use-case-card h3{margin-bottom:8px;font-size:1.05rem;font-weight:700}.use-case-card p{color:var(--text-muted);font-size:.9rem;line-height:1.6}.matching-section{border-top:1px solid var(--border);padding:80px 0}.matching-content{max-width:680px;margin:0 auto}.matching-content h2{letter-spacing:-.02em;text-align:center;margin-bottom:16px;font-size:1.8rem;font-weight:800}.matching-desc{text-align:center;color:var(--text-muted);margin-bottom:40px;font-size:.95rem;line-height:1.7}.conversation{flex-direction:column;gap:16px;display:flex}.conv-msg{border-radius:var(--radius);max-width:85%;padding:20px 24px}.conv-user{background:var(--surface);border:1px solid var(--border);align-self:flex-start}.conv-bot{background:#1d9bf014;border:1px solid #1d9bf033;align-self:flex-end}.conv-author{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.78rem;font-weight:700;display:block}.conv-msg p{color:var(--text);font-size:.92rem;line-height:1.6}.conv-human-left{border:1px dashed var(--border);background:#ffffff0a;align-self:flex-start}.conv-human-right{border:1px dashed var(--border);background:#ffffff0a;align-self:flex-end}.conv-persona-card{background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-top:14px;padding:14px 18px}.conv-pc-header{margin-bottom:8px}.conv-pc-handle{color:var(--accent);font-size:.9rem;font-weight:700}.conv-pc-summary{color:var(--text-muted);margin-bottom:10px;font-size:.82rem;line-height:1.5}.conv-pc-tags{flex-wrap:wrap;gap:6px;display:flex}.conv-pc-tag{border-radius:4px;padding:3px 10px;font-size:.7rem;font-weight:600}.conv-pc-tag.skill{color:var(--accent);background:#1d9bf01f}.conv-pc-tag.interest{color:var(--green);background:#2ecc711f}.conv-pc-tag.loc{color:var(--text-muted);background:#ffffff0f}.conv-status{text-align:center;color:var(--green);background:#2ecc7114;border-radius:8px;padding:12px;font-size:.85rem;font-weight:600}.final-cta{text-align:center;border-top:1px solid var(--border);padding:100px 0 80px}.final-cta h2{letter-spacing:-.03em;margin-bottom:20px;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.15}.final-cta .subtitle{margin-bottom:32px}.dashboard{padding:32px 0 64px}.welcome-banner{margin-bottom:32px}.welcome-banner h1{letter-spacing:-.02em;margin-bottom:8px;font-size:1.8rem;font-weight:800}.welcome-banner .subtitle{margin:0;font-size:1rem}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:24px}.stat-value{color:var(--accent);margin-bottom:4px;font-size:1.8rem;font-weight:800}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:24px;display:flex}.tab{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 20px;font-size:.95rem;font-weight:600;transition:all .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.request-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:24px}.request-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.request-text{color:var(--text);flex:1;font-size:1.05rem;font-style:italic;font-weight:600}.request-date{color:var(--text-muted);white-space:nowrap;font-size:.8rem}.matches-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:12px;font-size:.8rem}.match-item{border-top:1px solid var(--border);gap:14px;padding:12px 0;display:flex}.match-rank{color:var(--accent);min-width:28px;padding-top:2px;font-size:.85rem;font-weight:700}.match-info{flex:1}.match-handle{margin-bottom:2px;font-size:.95rem;font-weight:700}.match-reason{color:var(--text-muted);margin-bottom:6px;font-size:.9rem}.match-score{align-items:center;gap:8px;display:flex}.score-bar{background:var(--border);border-radius:3px;flex:1;max-width:120px;height:6px;overflow:hidden}.score-fill{background:var(--green);border-radius:3px;height:100%;transition:width .3s}.score-text{color:var(--text-muted);font-size:.8rem;font-weight:600}.no-matches{color:var(--text-muted);font-size:.9rem;font-style:italic}.empty-state{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:48px 24px}.empty-state h3{margin-bottom:8px;font-size:1.2rem}.empty-state p{color:var(--text-muted);margin-bottom:16px}.example-tweet{background:var(--bg);border:1px solid var(--border);color:var(--accent);border-radius:8px;padding:12px 20px;font-size:.95rem;font-weight:500;display:inline-block}.network-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.connection-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 20px}.connection-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.connection-handle{font-size:.95rem;font-weight:700}.connection-type{text-transform:uppercase;letter-spacing:.04em;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:600}.connection-type.follower{color:var(--accent);background:#1d9bf026}.connection-type.following{color:var(--green);background:#2ecc7126}.connection-bio{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.4;display:-webkit-box;overflow:hidden}.connection-card.clickable{cursor:pointer;transition:border-color .15s,box-shadow .15s}.connection-card.clickable:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.card-hint{color:var(--accent);opacity:.7;margin-top:8px;font-size:.75rem}.connection-card.clickable:hover .card-hint{opacity:1}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;max-width:520px;max-height:80vh;padding:28px 32px;position:relative;overflow-y:auto}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1;position:absolute;top:12px;right:16px}.modal-close:hover{color:var(--text)}.persona-card-detail h3{margin-bottom:4px;font-size:1.2rem}.persona-bio{color:var(--text-muted);margin-bottom:12px;font-size:.9rem;line-height:1.5}.persona-section{margin-top:16px}.persona-section h4{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px;font-size:.8rem}.persona-section p{font-size:.9rem;line-height:1.5}.persona-tags{flex-wrap:wrap;gap:6px;display:flex}.persona-tag{color:var(--accent);background:#1d9bf01f;border-radius:4px;padding:3px 10px;font-size:.8rem;font-weight:500}.persona-tag.interest{color:var(--green);background:#2ecc711f}.persona-tag.trait{color:#b57edc;background:#9b59b61f}.persona-tweets{flex-direction:column;gap:10px;display:flex}.persona-tweet{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px 14px}.persona-tweet p{white-space:pre-wrap;word-break:break-word;font-size:.85rem;line-height:1.5}.tweet-time{color:var(--text-muted);margin-top:4px;font-size:.75rem;display:block}.footer{border-top:1px solid var(--border);text-align:center;color:var(--text-muted);padding:32px 0;font-size:.875rem}.playground-link{color:var(--accent);margin-bottom:12px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.playground-link:hover{text-decoration:underline}.onboarding-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:60vh;display:flex}.onboarding-screen h2{font-size:1.5rem}.onboarding-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:60vh;display:flex}.persona-card-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);text-align:left;width:100%;max-width:480px;padding:24px 32px}.persona-identity{color:var(--accent);margin-bottom:8px;font-size:1.05rem;font-weight:700}.persona-summary-text{color:var(--text-muted);margin-bottom:14px;font-size:.9rem;line-height:1.6}.network-tab-header{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.refresh-btn{color:var(--accent);border:1px solid var(--accent);cursor:pointer;background:0 0;border-radius:8px;padding:7px 18px;font-size:.85rem;font-weight:600;transition:background .15s}.refresh-btn:hover:not(:disabled){background:#1d9bf01a}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-result{color:var(--green);font-size:.875rem}.refresh-result.error{color:#e05252}.connection-headline{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:8px;font-size:.82rem;line-height:1.4;display:-webkit-box;overflow:hidden}.connection-tags{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.persona-tag.project{color:#e6a817;background:#f39c121f}.persona-tag.values-group{color:#a78bfa;background:#8b5cf61f}.persona-tag.dislike{color:#e05252;background:#e052521a}.persona-tag.mini{padding:2px 7px;font-size:.72rem}.card-detail-headline{margin-bottom:6px;font-size:1.15rem;font-weight:700;line-height:1.3}.card-detail-sub{align-items:center;gap:10px;margin-bottom:12px;display:flex}.card-detail-handle{color:var(--text-muted);font-size:.9rem}.card-detail-summary{color:var(--text-muted);margin-bottom:4px;font-size:.9rem;line-height:1.6}.section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px;font-size:.75rem;font-weight:600}.persona-meta-line{color:var(--text);font-size:.9rem;line-height:1.5}@media (width<=768px){.vision-content,.use-cases-grid{grid-template-columns:1fr}.conv-msg{max-width:100%}}@media (width<=640px){.stats-grid{grid-template-columns:1fr}.request-header{flex-direction:column}.hero{padding:60px 0 48px}.card-row{flex-direction:column;gap:4px}.card-value{text-align:left}}.spinner{border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;width:32px;height:32px;margin:0 auto;animation:.6s linear infinite spin}
