*{box-sizing:border-box;margin:0;padding:0}body{color:#ededed;background:#0a0a0a;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.landing{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.landing-title{background:linear-gradient(135deg,#ff6b6b,#4ecdc4);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem}.landing-subtitle{color:#999;max-width:400px;margin-bottom:2rem;font-size:1.1rem}.npub-input-form{width:100%;max-width:500px}.input-row{gap:.5rem;display:flex}.npub-input{color:#ededed;background:#1a1a1a;border:1px solid #333;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:.95rem}.npub-input:focus{border-color:#4ecdc4;outline:none}.npub-button{color:#0a0a0a;cursor:pointer;white-space:nowrap;background:#4ecdc4;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600}.npub-button:hover{background:#3dbdb5}.npub-error{color:#ff6b6b;margin-top:.5rem;font-size:.85rem}.dashboard{flex-direction:column;gap:1.5rem;max-width:600px;margin:0 auto;padding:2rem 1rem;display:flex}.profile-card{background:#1a1a1a;border:1px solid #222;border-radius:12px;align-items:flex-start;gap:1rem;padding:1.5rem;display:flex}.profile-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:80px;height:80px}.profile-info{min-width:0}.profile-name{margin-bottom:.25rem;font-size:1.3rem}.profile-about{color:#aaa;overflow-wrap:break-word;margin-bottom:.5rem;font-size:.9rem}.profile-nip05{color:#4ecdc4;margin-bottom:.25rem;font-size:.85rem}.profile-npub{color:#666;font-family:monospace;font-size:.8rem}.chart-container{background:#1a1a1a;border:1px solid #222;border-radius:12px;padding:1.5rem}.chart-title{color:#ccc;text-align:center;margin-bottom:1rem;font-size:1rem}.no-data{text-align:center;color:#666;padding:2rem}.error-card{text-align:center;background:#1a1a1a;border:1px solid #222;border-radius:12px;padding:3rem 1.5rem}.error-card h2{color:#ff6b6b;margin-bottom:.5rem}.error-card p{color:#999;margin-bottom:1rem}.error-card a{color:#4ecdc4;text-decoration:underline}@media (max-width:480px){.landing-title{font-size:2rem}.input-row{flex-direction:column}.profile-card{text-align:center;flex-direction:column;align-items:center}.profile-avatar{width:64px;height:64px}}
