:root{--bg:#0a0a0f;--bg-card:#14141f;--bg-input:#1a1a2e;--border:#2a2a3e;--text:#e4e4ef;--text-dim:#8888a0;--accent:#6c5ce7;--accent-hover:#7c6ef7;--success:#00d2a0;--error:#ff6b6b;--radius:12px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}.app{max-width:80%;margin:0 auto;padding:0 16px}.header{border-bottom:1px solid var(--border);padding:16px 0;position:-webkit-sticky;position:sticky;top:0;background:var(--bg);z-index:10}.header-inner{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.logo{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--success));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tagline{color:var(--text-dim);font-size:.8rem;flex:1 1}.btn{border:none;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-input);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent)}.btn-sm{padding:3px 8px;font-size:.75rem}.btn-action{background:none;border:none;color:var(--text-dim);font-size:.8rem;cursor:pointer;padding:4px 8px;border-radius:4px;text-decoration:none}.btn-action:hover{color:var(--accent);background:var(--bg-input)}.wallet-connected{display:flex;align-items:center;gap:8px;margin-left:auto}.wallet-info{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.wallet-username-row{display:flex;align-items:center;gap:6px}.wallet-username{font-size:.85rem;font-weight:600;color:var(--accent)}.wallet-address-row{display:flex;align-items:center;gap:4px}.wallet-address{font-family:monospace;font-size:.75rem;color:var(--text-dim)}.btn-copy{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:4px;transition:color .15s}.btn-copy:hover{color:var(--accent)}.wallet-options{display:flex;gap:8px}.hero{text-align:center;padding:48px 0}.hero h2{font-size:1.8rem;margin-bottom:12px;background:linear-gradient(135deg,var(--text),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero p{color:var(--text-dim);line-height:1.6;max-width:480px;margin:0 auto}.composer{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin:16px 0}.composer-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.95rem;padding:12px;resize:vertical;font-family:inherit}.composer-input:focus{outline:none;border-color:var(--accent)}.composer-input::placeholder{color:var(--text-dim)}.composer-footer{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.char-count{font-size:.8rem;color:var(--text-dim)}.feed{padding-bottom:40px}.feed-header{display:flex;justify-content:space-between;align-items:center;padding:16px 0}.feed-header h2{font-size:1.1rem}.empty-feed{text-align:center;color:var(--text-dim);padding:40px 0}.post-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:8px;transition:border-color .15s}.post-card:hover{border-color:#3a3a4e}.post-reply{margin-left:20px;border-left:2px solid var(--accent)}.post-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.post-author{font-family:monospace;font-size:.85rem;color:var(--accent);font-weight:600}.post-time{font-size:.75rem;color:var(--text-dim)}.post-text{line-height:1.5;margin-bottom:10px;word-break:break-word;white-space:pre-wrap}.post-actions{display:flex;align-items:center;gap:8px}.post-round{font-size:.7rem;color:var(--text-dim);margin-left:auto;font-family:monospace}.replies{margin-top:8px}.error-msg{color:var(--error)}.error-msg,.success-msg{font-size:.85rem;margin-top:8px}.success-msg{color:var(--success)}.success-msg a{color:var(--accent);text-decoration:underline}.footer{text-align:center;padding:24px 0;border-top:1px solid var(--border);margin-top:40px}.footer p{color:var(--text-dim);font-size:.8rem;line-height:1.6}.btn-donate,.donate-form{margin-top:12px}.donate-form{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.donate-input{width:80px;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.85rem;padding:6px 10px;text-align:center}.donate-input:focus{outline:none;border-color:var(--accent)}.donate-label{font-size:.85rem;color:var(--text-dim)}.donate-thanks{display:block;margin-top:12px;color:var(--success);font-size:.85rem}.tab-nav{display:flex;gap:0;margin-top:12px;border-bottom:1px solid var(--border)}.tab-btn{background:none;color:var(--text-dim);font-size:.95rem;font-weight:600;padding:10px 20px;cursor:pointer;border:none;border-bottom:2px solid transparent;transition:all .15s}.tab-btn:hover{color:var(--text)}.tab-active{color:var(--accent);border-bottom-color:var(--accent)}.inbox-empty{text-align:center;color:var(--text-dim);padding:40px 0}.inbox-header{display:flex;justify-content:space-between;align-items:center;padding:16px 0}.inbox-header h3{font-size:1.1rem}.inbox-actions{display:flex;gap:8px;align-items:center}.register-status{font-size:.8rem;color:var(--success);background:var(--bg-input);padding:4px 10px;border-radius:6px;white-space:nowrap}.register-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--bg-card);border:1px solid var(--accent);border-radius:var(--radius);padding:12px 16px;margin-top:12px;font-size:.85rem;color:var(--text-dim)}.register-banner-subtle{border-color:var(--border);padding:8px 16px}.register-status-text{font-size:.8rem;color:var(--text-dim)}.register-form{display:flex;align-items:center;gap:8px;flex:1 1}.register-name-input{background:var(--bg-input);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:.85rem;padding:8px 12px;flex:1 1;min-width:0}.register-name-input:focus{outline:none;border-color:var(--accent)}.register-name-input::placeholder{color:var(--text-dim)}.register-actions{display:flex;gap:8px}.inbox-hint{color:var(--text-dim);font-size:.85rem;font-style:italic;padding:8px 0}.message-list{display:flex;flex-direction:column;gap:6px}.message-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;cursor:pointer;transition:border-color .15s}.message-card:hover{border-color:var(--accent)}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.message-sender{font-family:monospace;font-size:.85rem;color:var(--accent);font-weight:600}.message-sender-addr{font-weight:400;margin-left:4px}.message-sender-addr,.message-time{font-size:.75rem;color:var(--text-dim)}.message-text{line-height:1.5;word-break:break-word;white-space:pre-wrap}.message-body{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.message-revealed{display:flex;flex-direction:column;gap:6px}.message-code-block{position:relative;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px 40px 12px 12px}.message-code{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.85rem;line-height:1.5;word-break:break-word;white-space:pre-wrap;color:var(--text);margin:0}.message-copy{position:absolute;top:8px;right:8px}.message-hidden{color:var(--text-dim);font-style:italic;font-size:.85rem}.last-updated{font-size:.7rem;color:var(--text-dim)}.send-message-page{padding:16px 0}.send-message-page h3{font-size:1.1rem;margin-bottom:12px}.send-form{display:flex;flex-direction:column;gap:10px}.recipient-field{position:relative}.recipient-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;max-height:200px;overflow-y:auto;z-index:20}.recipient-option{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 12px;background:none;border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:monospace;font-size:.9rem;text-align:left;cursor:pointer;transition:background .1s}.recipient-option:last-child{border-bottom:none}.recipient-option:hover{background:var(--bg-input)}.recipient-option-full{font-size:.7rem;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238888a0' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 1.5s infinite}.all-txns{padding-bottom:40px}.txn-table-wrap{overflow-x:auto}.txn-table{width:100%;border-collapse:collapse;font-size:.85rem}.txn-table th{text-align:left;color:var(--text-dim);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.txn-table td,.txn-table th{padding:10px 12px;border-bottom:1px solid var(--border)}.txn-table td{vertical-align:middle}.txn-table tbody tr:hover{background:var(--bg-card)}.txn-addr{font-family:monospace;font-size:.8rem}.txn-preview{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.txn-encrypted{font-style:italic;color:var(--text-dim)}.txn-hub{color:var(--accent);font-weight:600;font-size:.8rem}.txn-time{white-space:nowrap;color:var(--text-dim);font-size:.8rem}.txn-type-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.txn-type-dm{background:rgba(108,92,231,.15);color:var(--accent)}.txn-type-post{background:rgba(0,210,160,.15);color:var(--success)}.txn-type-reply{background:rgba(0,210,160,.1);color:var(--success)}.txn-type-register{background:hsla(0,100%,71%,.15);color:var(--error)}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 0}.pagination-info{font-size:.85rem;color:var(--text-dim)}