.modal-overlay[data-v-3dfc0ff6]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center}.modal[data-v-3dfc0ff6]{background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;width:560px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;animation:fadeIn-3dfc0ff6 .25s ease}@keyframes fadeIn-3dfc0ff6{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.modal-header[data-v-3dfc0ff6]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:linear-gradient(135deg,var(--accent),#ff6b7a);border-radius:16px 16px 0 0}.modal-header h3[data-v-3dfc0ff6]{font-size:16px;font-weight:700;margin:0;color:#fff}.modal-close[data-v-3dfc0ff6]{background:#fff3;border:none;font-size:22px;cursor:pointer;color:#fff;padding:4px 8px;border-radius:6px;transition:background .15s}.modal-close[data-v-3dfc0ff6]:hover{background:#ffffff59}.modal-body[data-v-3dfc0ff6]{padding:20px 24px}.schedule-list[data-v-3dfc0ff6]{margin-bottom:16px}.schedule-item[data-v-3dfc0ff6]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--border);border-radius:10px;margin-bottom:8px;transition:all .15s;background:var(--bg-tertiary)}.schedule-item[data-v-3dfc0ff6]:hover{border-color:var(--accent);box-shadow:0 2px 12px #ff47571a}.schedule-info[data-v-3dfc0ff6]{flex:1;min-width:0}.schedule-info .email[data-v-3dfc0ff6]{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.schedule-detail[data-v-3dfc0ff6]{font-size:12px;color:var(--text-secondary);margin-top:4px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.schedule-actions[data-v-3dfc0ff6]{display:flex;gap:6px;flex-shrink:0;margin-left:12px}.btn-sm[data-v-3dfc0ff6]{background:none;border:1px solid var(--border);padding:4px 10px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .15s}.btn-test[data-v-3dfc0ff6]{color:var(--accent);border-color:var(--accent)}.btn-test[data-v-3dfc0ff6]:hover{background:#ff47571a}.btn-edit[data-v-3dfc0ff6]{color:var(--text-secondary);border-color:var(--border)}.btn-edit[data-v-3dfc0ff6]:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-toggle-off[data-v-3dfc0ff6]{color:#e17055;border-color:#e17055}.btn-toggle-off[data-v-3dfc0ff6]:hover{background:#e170551a}.btn-toggle-on[data-v-3dfc0ff6]{color:#00b894;border-color:#00b894}.btn-toggle-on[data-v-3dfc0ff6]:hover{background:#00b8941a}.btn-del[data-v-3dfc0ff6]{color:var(--text-secondary);border-color:var(--border)}.btn-del[data-v-3dfc0ff6]:hover{color:var(--accent);border-color:var(--accent);background:#ff47571a}.status-badge[data-v-3dfc0ff6]{display:inline-block;padding:1px 8px;border-radius:10px;font-size:11px;font-weight:500}.status-badge.success[data-v-3dfc0ff6]{background:#00b89426;color:#00b894}.status-badge.failed[data-v-3dfc0ff6]{background:#ff475726;color:var(--accent)}.status-badge.empty[data-v-3dfc0ff6]{background:#e1705526;color:#e17055}.empty-hint[data-v-3dfc0ff6]{text-align:center;color:var(--text-secondary);font-size:13px;padding:20px 0}.form-title[data-v-3dfc0ff6]{font-size:14px;font-weight:600;margin:20px 0 12px;padding-top:16px;border-top:1px solid var(--border);color:var(--accent)}.form-group[data-v-3dfc0ff6]{margin-bottom:14px}.form-group label[data-v-3dfc0ff6]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--text-primary)}.form-group input[data-v-3dfc0ff6],.form-group textarea[data-v-3dfc0ff6]{width:100%;border:2px solid var(--border);border-radius:8px;padding:10px 12px;font-size:14px;font-family:inherit;outline:none;transition:border-color .2s;background:var(--bg-tertiary);color:var(--text-primary)}.form-group input[data-v-3dfc0ff6]::placeholder,.form-group textarea[data-v-3dfc0ff6]::placeholder{color:var(--text-secondary)}.form-group input[data-v-3dfc0ff6]:focus,.form-group textarea[data-v-3dfc0ff6]:focus{border-color:var(--accent)}.time-inputs[data-v-3dfc0ff6]{display:flex;gap:8px;align-items:center}.time-inputs input[data-v-3dfc0ff6]{width:80px;text-align:center}.time-inputs span[data-v-3dfc0ff6]{font-size:14px;color:var(--text-secondary)}.day-picker[data-v-3dfc0ff6]{display:flex;gap:6px;flex-wrap:wrap}.day-picker label[data-v-3dfc0ff6]{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border:2px solid var(--border);border-radius:8px;cursor:pointer;font-size:13px;transition:all .15s;-webkit-user-select:none;user-select:none;color:var(--text-secondary)}.day-picker label[data-v-3dfc0ff6]:hover{border-color:var(--text-secondary);color:var(--text-primary)}.day-picker label.checked[data-v-3dfc0ff6]{border-color:var(--accent);background:#ff47571a;color:var(--accent);font-weight:500}.day-picker input[data-v-3dfc0ff6]{display:none}.form-actions[data-v-3dfc0ff6]{display:flex;gap:8px;margin-top:4px}.btn-primary[data-v-3dfc0ff6]{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background .2s}.btn-primary[data-v-3dfc0ff6]:hover{background:var(--accent-hover)}.btn-secondary[data-v-3dfc0ff6]{background:none;border:1px solid var(--border);padding:8px 14px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .15s}.btn-secondary[data-v-3dfc0ff6]:hover{background:var(--bg-hover);color:var(--text-primary)}:root{--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-tertiary: #252525;--bg-hover: #2d2d2d;--text-primary: #e8e8e8;--text-secondary: #a0a0a0;--accent: #ff4757;--accent-hover: #ff6b7a;--user-bubble: #2a2a3e;--assistant-bubble: #1e1e1e;--border: #333;--radius: 12px;--sidebar-width: 280px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans SC,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);height:100vh;overflow:hidden}#app{height:100vh}.app{display:flex;height:100vh}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:margin-left .3s ease;flex-shrink:0}.sidebar.closed{margin-left:calc(var(--sidebar-width) * -1)}.sidebar-header{padding:20px 16px 12px;border-bottom:1px solid var(--border)}.sidebar-header h2{font-size:16px;font-weight:500;margin-bottom:12px;color:var(--text-primary)}.new-chat-btn{width:100%;padding:10px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;font-family:inherit;transition:background .2s}.new-chat-btn:hover{background:var(--accent-hover)}.conv-list{flex:1;overflow-y:auto;padding:8px}.conv-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;cursor:pointer;margin-bottom:2px;transition:background .15s}.conv-item:hover{background:var(--bg-hover)}.conv-item.active{background:var(--bg-tertiary)}.conv-title{flex:1;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary)}.conv-item.active .conv-title{color:var(--text-primary)}.delete-btn{background:none;border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;opacity:0;transition:opacity .15s;padding:0 4px}.conv-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:var(--accent)}.empty-hint{text-align:center;color:var(--text-secondary);font-size:13px;padding:40px 0}.sidebar-footer{border-top:1px solid var(--border);padding:12px}.email-settings-btn{width:100%;background:none;border:1px solid var(--border);padding:10px 14px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-secondary);text-align:left;font-family:inherit;transition:all .15s}.email-settings-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent)}.chat-main{flex:1;display:flex;flex-direction:column;min-width:0}.chat-header{display:flex;align-items:center;gap:12px;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.toggle-sidebar{background:none;border:1px solid var(--border);color:var(--text-primary);font-size:18px;cursor:pointer;padding:6px 10px;border-radius:6px;transition:background .15s}.toggle-sidebar:hover{background:var(--bg-hover)}.chat-header h1{font-size:18px;font-weight:500;flex:1}.powered-by{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:4px 10px;border-radius:20px}.messages-container{flex:1;overflow-y:auto;padding:24px}.welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;gap:12px}.welcome-icon{font-size:48px;margin-bottom:8px}.welcome h2{font-size:22px;font-weight:500}.welcome p{color:var(--text-secondary);font-size:14px}.suggestions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}.suggestion-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:10px 16px;border-radius:20px;font-size:13px;cursor:pointer;font-family:inherit;transition:all .2s}.suggestion-btn:hover{background:var(--bg-hover);border-color:var(--accent);color:var(--accent)}.message{display:flex;gap:12px;margin-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:row-reverse}.avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;background:var(--bg-tertiary)}.bubble{padding:12px 16px;border-radius:var(--radius);line-height:1.7;font-size:14px;max-width:75%}.message.user .bubble{background:var(--user-bubble);border-top-right-radius:4px}.message.assistant .bubble{background:var(--assistant-bubble);border:1px solid var(--border);border-top-left-radius:4px}.bubble h1,.bubble h2,.bubble h3{margin:12px 0 6px;font-size:15px;font-weight:600}.bubble p{margin:4px 0}.bubble ul,.bubble ol{padding-left:20px;margin:4px 0}.bubble li{margin:2px 0}.bubble strong{color:var(--accent)}.bubble code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-size:13px}.bubble pre{background:var(--bg-tertiary);padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0}.bubble pre code{background:none;padding:0}.bubble table{width:100%;border-collapse:collapse;margin:8px 0;font-size:13px}.bubble th,.bubble td{border:1px solid var(--border);padding:6px 10px;text-align:left}.bubble th{background:var(--bg-tertiary);font-weight:600}.loading-bubble{display:flex;align-items:center;padding:16px 20px}.dot-pulse{display:flex;gap:6px}.dot-pulse span{width:8px;height:8px;background:var(--text-secondary);border-radius:50%;animation:pulse 1.4s infinite ease-in-out}.dot-pulse span:nth-child(2){animation-delay:.2s}.dot-pulse span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.cursor-blink{display:inline;font-weight:700;color:var(--accent);animation:blink .8s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.input-area{padding:16px 24px 24px;background:var(--bg-secondary);border-top:1px solid var(--border)}.input-wrapper{max-width:800px;margin:0 auto;display:flex;gap:10px;align-items:flex-end;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius);padding:8px 8px 8px 16px;transition:border-color .2s}.input-wrapper:focus-within{border-color:var(--accent)}.input-wrapper textarea{flex:1;border:none;background:none;color:var(--text-primary);font-size:14px;font-family:inherit;resize:none;outline:none;min-height:24px;max-height:120px;line-height:1.5;padding:4px 0}.input-wrapper textarea::placeholder{color:var(--text-secondary)}.send-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 20px;font-size:14px;cursor:pointer;font-family:inherit;font-weight:500;transition:all .2s;white-space:nowrap}.send-btn:hover:not(:disabled){background:var(--accent-hover)}.send-btn:disabled{opacity:.4;cursor:not-allowed}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media(max-width:768px){.sidebar{position:fixed;z-index:100;height:100%}.sidebar.closed{margin-left:calc(var(--sidebar-width) * -1)}.bubble{max-width:88%}}
