/* ==============================================
   copywriting.html — copywriting Chat Styles
   Extracted from template <style> block (Phase 3)
   ============================================== */

/* Session dropdown (right side) */
.cw-session-drop{position:absolute;bottom:100%;right:0;margin-bottom:4px;width:320px;max-height:400px;background:#fff;border-radius:10px;box-shadow:0 -4px 16px rgba(0,0,0,.12);border:1px solid var(--border,rgba(0,0,0,.06));z-index:999;display:flex;flex-direction:column}
.cw-session-drop-hd{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border,rgba(0,0,0,.06));flex-shrink:0}
.cw-session-drop-list{flex:1;overflow-y:auto;padding:4px}
.cw-session-drop-item{display:flex;align-items:center;gap:4px;padding:8px 10px;border-radius:6px;cursor:pointer;transition:.1s}
.cw-session-drop-item:hover{background:var(--primary-bg)}
.cw-session-drop-item.active{background:var(--primary-bg);color:var(--primary)}
.cw-session-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.8125rem}
.cw-session-meta{font-size:0.6875rem;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}

/* Sidebar */
.sidebar-list{overflow-x:hidden}
.cw-sb-row{display:flex;align-items:center;gap:.5rem;min-width:0}
.cw-sb-more{flex-shrink:0;width:1.5rem;height:1.5rem;border:none;border-radius:50%;background:transparent;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;font-size:.75rem}
.cw-sb-more:hover{background:rgba(0,0,0,.06);color:var(--primary)}
.cw-sb-load-more{display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem;font-size:.8125rem;color:var(--primary);cursor:pointer;transition:.15s;border-top:1px solid rgba(0,0,0,.04)}
.cw-sb-load-more:hover{background:rgba(0,0,0,.03)}
.cw-sb-menu{position:fixed;background:#fff;border-radius:.5rem;box-shadow:0 4px 16px rgba(0,0,0,.12);border:1px solid rgba(0,0,0,.06);padding:.375rem;min-width:8rem;z-index:9999}
.cw-sb-menu-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;border-radius:.375rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:.15s}
.cw-sb-menu-item:hover{background:var(--primary-bg);color:var(--primary)}
.cw-sb-menu-del:hover{color:var(--danger);background:rgba(255,77,79,.06)}

/* Main */
/* Toolbar: uses .page-toolbar* / .page-select / .bk-btn-ghost from app.css */

/* Chat */
.cw-chat{flex:1;overflow-y:auto;padding:20px 20px 10px;display:flex;flex-direction:column;gap:20px}
.cw-chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center;padding:40px}
.cw-empty-icon{font-size:4rem;opacity:.6}
.cw-empty-title{font-size:1.25rem;font-weight:700;color:var(--text-deep)}
.cw-empty-hint{font-size:0.875rem;color:var(--text-tertiary);line-height:1.7}
.cw-empty-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}
.cw-empty-tags button{padding:8px 16px;border:1px solid var(--border);border-radius:20px;background:#fff;font-size:0.875rem;font-family:var(--font-family-base);cursor:pointer;color:var(--text-secondary);transition:.2s}
.cw-empty-tags button:hover{border-color:var(--primary);color:var(--primary);background:rgba(22,101,52,0.04)}
.cw-empty-tags button.active{border-color:var(--primary);color:#fff;background:var(--primary)}
.cw-textarea-wrap{flex:1;display:flex;flex-direction:column}

/* Messages */
.cw-msg{display:flex;gap:12px;max-width:900px;width:100%;margin:0 auto;animation:cw-fade-in .3s ease}
@keyframes cw-fade-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.cw-msg-user{flex-direction:row-reverse}
.cw-msg-user .cw-msg-body{align-items:flex-end}
.cw-msg-user .cw-msg-content{background:var(--primary);color:#fff;border-radius:16px 16px 4px 16px}
.cw-msg-assistant .cw-msg-content{background:#fff;border:1px solid rgba(0,0,0,0.06);border-radius:16px 16px 16px 4px}
.cw-msg-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;background:rgba(255,255,255,0.8)}
.cw-msg-body{display:flex;flex-direction:column;gap:6px;max-width:calc(100% - 60px)}
.cw-msg-content{padding:12px 16px;font-size:0.9375rem;line-height:1.7;word-break:break-all}
.cw-msg-content h1{font-size:1.125rem;font-weight:700;margin:12px 0 6px}
.cw-msg-content h2{font-size:1rem;font-weight:700;margin:10px 0 4px;border-bottom:1px solid var(--border);padding-bottom:3px}
.cw-msg-content h3{font-size:0.9375rem;font-weight:600;margin:8px 0 3px}
.cw-msg-content ul{margin:6px 0;padding-left:20px}
.cw-msg-content li{margin:3px 0}
.cw-msg-content blockquote{border-left:3px solid var(--primary);padding-left:10px;margin:8px 0;color:var(--text-mid);background:rgba(22,101,52,0.03);padding:6px 10px;border-radius:0 8px 8px 0}
.cw-msg-content strong{font-weight:600}
.cw-msg-actions{display:flex;gap:8px;opacity:1;transition:.2s}
.cw-msg-actions button{padding:5px 12px;border:1px solid var(--border);border-radius:6px;background:#fff;font-size:0.75rem;cursor:pointer;color:var(--text-mid);transition:.2s}
.cw-msg-actions button:hover{border-color:var(--primary);color:var(--primary)}
.cw-msg-actions button.on{border-color:var(--primary);color:var(--primary);background:rgba(22,101,52,0.08)}
.cw-think{background:rgba(22,101,52,0.04);border:1px solid rgba(22,101,52,0.1);border-radius:12px;padding:10px 14px;font-size:0.875rem;line-height:1.6;color:var(--text-secondary)}
.cw-think-hd{display:flex;align-items:center;justify-content:space-between;cursor:pointer;font-weight:500;color:var(--primary);user-select:none}
.cw-think-bd{margin-top:6px;padding-top:6px;border-top:1px solid rgba(22,101,52,0.08)}
.cw-divider{height:1px;background:rgba(0,0,0,0.06);margin:8px 0}
.cw-msg-typing{display:flex;gap:4px;padding:4px 0}
.cw-msg-typing span{width:6px;height:6px;border-radius:50%;background:var(--primary);animation:cw-typing 1.4s infinite ease-in-out both}
.cw-msg-typing span:nth-child(1){animation-delay:-0.32s}
.cw-msg-typing span:nth-child(2){animation-delay:-0.16s}
@keyframes cw-typing{0%,80%,100%{transform:scale(0.6);opacity:.3}40%{transform:scale(1);opacity:1}}

/* Input Area */
.cw-input-area{padding:12px 20px 16px;background:rgba(255,255,255,0.8);backdrop-filter:blur(8px);border-top:1px solid rgba(0,0,0,0.06);flex-shrink:0}
.cw-input-box{display:flex;gap:10px;align-items:flex-end;background:#fff;border:1px solid var(--border);border-radius:16px;padding:10px 14px;box-shadow:0 1px 4px rgba(0,0,0,0.04)}
.cw-input-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(22,101,52,0.08)}
.cw-textarea{flex:1;border:none;outline:none;font-size:0.9375rem;line-height:1.6;resize:none;min-height:90px;max-height:300px;font-family:inherit;background:transparent}
.cw-textarea::placeholder{color:#bbb}
.cw-input-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
.cw-action-btn{width:36px;height:36px;border-radius:50%;border:none;background:rgba(0,0,0,0.05);color:var(--text-mid);font-size:1rem;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center}
.cw-action-btn:hover{background:rgba(22,101,52,0.12);color:var(--primary)}
.cw-action-btn.on{background:var(--danger);color:#fff;animation:cw-pulse 1s infinite}
@keyframes cw-pulse{0%,100%{opacity:1}50%{opacity:.6}}
.cw-send-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--primary);color:#fff;font-size:1rem;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cw-send-btn:hover{background:#1a7a40}
.cw-send-btn:disabled{background:#ccc;cursor:not-allowed}
.cw-input-hint{text-align:center;font-size:0.75rem;color:#bbb;margin-top:8px}
.cw-uploaded-file{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;margin-bottom:8px;background:rgba(22,101,52,0.06);border:1px solid rgba(22,101,52,0.15);border-radius:8px;font-size:0.8125rem;color:var(--primary)}
.cw-uploaded-file button{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:0.75rem;padding:2px 4px}
.cw-uploaded-file button:hover{color:var(--danger)}
.cw-msg-file{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(22,101,52,0.06);border-radius:6px;font-size:0.75rem;color:var(--primary);margin-top:2px}
.cw-msg-user .cw-msg-file{background:rgba(255,255,255,0.2);color:#fff}

/* Modal textarea */
.cw-modal-textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;font-size:var(--fs-sm,0.875rem);outline:none;resize:vertical;min-height:120px;font-family:inherit}
.cw-modal-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(22,101,52,0.08)}

/* Fullscreen */
.page-wrap.fullscreen{position:fixed;inset:0;z-index:99999;background:var(--bg-hover)}
.page-wrap.fullscreen .sidebar{display:none}
.page-wrap.fullscreen .page-main{border-radius:0}
.page-wrap.fullscreen .cw-chat{padding:24px 40px}
.page-wrap.fullscreen .cw-msg{max-width:1100px}
.page-wrap.fullscreen .cw-input-area{padding:16px 40px 20px}
