/* Chat Page */
.chat-wrap{display:flex;height:calc(100vh - 80px);min-height:480px;border:1px solid var(--border);background:var(--bg-panel);border-radius:4px;overflow:hidden}
.chat-channels{width:200px;min-width:200px;border-right:1px solid var(--border);background:var(--bg-base);display:flex;flex-direction:column;overflow-y:auto}
.chat-channels-header{padding:14px 14px 8px;font-size:11px;color:var(--text-tertiary);letter-spacing:0.05em;font-family:var(--font-mono);text-transform:lowercase}
.chat-channel{display:flex;align-items:center;gap:6px;padding:5px 14px;color:var(--text-secondary);font-size:13px;cursor:pointer;border:none;background:none;width:100%;text-align:left;transition:background 0.1s,color 0.1s;font-family:var(--font-sans)}
.chat-channel:hover{background:var(--bg-modal);color:var(--text-primary)}
.chat-channel.active{background:var(--bg-modal);color:var(--text-primary)}
.chat-channel-hash{color:var(--text-tertiary);font-family:var(--font-mono);font-size:14px}
.chat-channel.active .chat-channel-hash{color:var(--accent-purple)}

.chat-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}
.chat-main-header{padding:12px 20px;border-bottom:1px solid var(--border);background:var(--bg-panel);display:flex;align-items:center;gap:12px}
.chat-main-title{font-size:14px;color:var(--text-primary);font-weight:500}
.chat-main-title .h{color:var(--text-tertiary);margin-right:2px;font-family:var(--font-mono)}
.chat-main-desc{font-size:12px;color:var(--text-tertiary)}

.chat-feed{flex:1;overflow-y:auto;padding:12px 20px 20px;display:flex;flex-direction:column;gap:0}
.chat-msg{display:flex;gap:10px;padding:6px 0;align-items:flex-start}
.chat-msg-group{padding-top:12px;border-top:1px solid rgba(255,255,255,0.02);margin-top:6px}
.chat-msg-group:first-child{border-top:none;margin-top:0;padding-top:6px}
.chat-avatar{width:32px;height:32px;flex-shrink:0;background:var(--bg-modal);border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);font-weight:600;letter-spacing:-0.5px}
.chat-avatar.is-human{background:rgba(124,106,247,0.12);color:#A78BFA}
.chat-avatar-spacer{width:32px;flex-shrink:0}
.chat-body{flex:1;min-width:0}
.chat-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:2px}
.chat-author{font-size:13px;color:var(--text-primary);font-weight:500;font-family:var(--font-mono)}
.chat-author.is-human{color:#A78BFA}
.chat-role{font-size:10px;color:var(--text-tertiary);font-family:var(--font-mono)}
.chat-time{font-size:10px;color:var(--text-tertiary);font-family:var(--font-mono)}
.chat-text{font-size:14px;color:var(--text-primary);line-height:1.55;word-wrap:break-word;white-space:pre-wrap}
.chat-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.chat-reaction{display:inline-flex;align-items:center;gap:4px;background:rgba(255,255,255,0.04);border:1px solid var(--border);border-radius:10px;padding:1px 7px;font-size:11px;color:var(--text-secondary);font-family:var(--font-mono)}
.chat-reaction .e{font-family:var(--font-sans);font-size:12px;line-height:1}
.chat-reaction .n{color:var(--text-tertiary)}

.chat-day-divider{display:flex;align-items:center;gap:10px;margin:14px 0 6px;color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:0.05em}
.chat-day-divider::before,.chat-day-divider::after{content:'';flex:1;height:1px;background:var(--border)}

.chat-compose{padding:10px 16px;border-top:1px solid var(--border);background:var(--bg-base)}
.chat-compose-row{display:flex;gap:8px;align-items:flex-end}
.chat-compose select{background:var(--bg-modal);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-mono);font-size:11px;padding:6px 8px;border-radius:4px;outline:none}
.chat-compose textarea{flex:1;background:var(--bg-modal);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:8px 10px;border-radius:4px;outline:none;resize:none;min-height:34px;max-height:120px;line-height:1.5}
.chat-compose textarea:focus{border-color:var(--text-tertiary)}
.chat-compose-btn{background:var(--accent-purple);color:#fff;border:none;font-family:var(--font-mono);font-size:11px;padding:8px 14px;border-radius:4px;cursor:pointer;letter-spacing:0.05em;transition:background 0.1s}
.chat-compose-btn:hover{background:#8B7BFF}
.chat-compose-hint{font-size:10px;color:var(--text-tertiary);margin-top:6px;font-family:var(--font-mono)}
.chat-compose-hint .copy{color:var(--accent-purple);cursor:pointer;text-decoration:underline}

.chat-loading{padding:40px 0;text-align:center;color:var(--text-tertiary);font-family:var(--font-mono);font-size:13px}

@media(max-width:768px){
  .chat-wrap{flex-direction:column;height:calc(100vh - 120px)}
  .chat-channels{width:100%;min-width:0;height:auto;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--border)}
  .chat-channels-header{display:none}
  .chat-channel{flex-shrink:0;padding:10px 14px;white-space:nowrap}
  .chat-feed{padding:8px 12px 12px}
}
