.chat-page[data-v-4525e8cd]{display:flex;flex-direction:column;height:100vh;padding-bottom:58px}.chat-header[data-v-4525e8cd]{display:flex;gap:8px;align-items:center;padding:10px 12px;background:var(--card);border-bottom:1px solid var(--border)}.ch-select[data-v-4525e8cd]{flex:1;min-width:0;padding:7px 8px;font-size:14px}.ch-btn[data-v-4525e8cd]{flex-shrink:0}.chat-input[data-v-4525e8cd]{padding:8px 12px 10px;background:var(--card);border-top:1px solid var(--border)}.ci-row[data-v-4525e8cd]{display:flex;gap:8px;align-items:flex-end}.ci-input[data-v-4525e8cd]{flex:1;max-height:120px}.ci-send[data-v-4525e8cd]{flex-shrink:0}.object-card[data-v-30bbff26]{cursor:pointer}.object-card[data-v-30bbff26]:active{border-color:var(--primary)}.oc-row[data-v-30bbff26]{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.oc-label[data-v-30bbff26]{font-size:17px;font-weight:600;color:var(--primary-dark)}.progress-track[data-v-43902bab]{height:6px;background:var(--primary-weak);border-radius:3px;margin-top:10px;overflow:hidden}.progress-bar[data-v-43902bab]{height:100%;background:var(--primary);transition:width .2s}.history-item[data-v-43902bab]{cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-size:14px}.history-item[data-v-43902bab]:active{border-color:var(--primary)}:root{--bg: #faf5ef;--card: #ffffff;--primary: #c96f4a;--primary-dark: #b05a37;--primary-weak: #f7e8df;--text: #3d3229;--muted: #9b8b7d;--border: #eee1d4;--danger: #d64545;--danger-weak: #fdeaea;--warn: #e08c2e;--warn-weak: #fdf3e3;--ok: #7fa87f;--radius: 14px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.5}.app-shell{max-width:640px;margin:0 auto;min-height:100vh}.page{padding:16px 16px 80px}h1,h2,h3{margin:0 0 8px;font-weight:600}.muted{color:var(--muted);font-size:13px}.error-text{color:var(--danger);font-size:13px;margin:8px 0 0}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;margin-bottom:12px}.section-title{font-size:13px;color:var(--muted);margin:20px 0 8px;letter-spacing:1px}.input,.select,.textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-size:15px;font-family:inherit;outline:none}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary)}.textarea{resize:none}.field-label{display:block;font-size:13px;color:var(--muted);margin:10px 0 4px}.btn{display:inline-block;padding:9px 16px;border:1px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-size:14px;cursor:pointer;font-family:inherit}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:disabled{background:var(--primary);opacity:.5}.btn-ghost{background:transparent;border-color:var(--primary);color:var(--primary)}.btn-mini{padding:4px 10px;font-size:12px;border-radius:8px}.btn-block{display:block;width:100%}.btn-danger-ghost{background:transparent;border-color:var(--danger);color:var(--danger)}.tag{display:inline-block;padding:1px 8px;border-radius:8px;font-size:12px;background:var(--primary-weak);color:var(--primary-dark);margin-right:6px}.tag-ok{background:#e9f2e9;color:var(--ok)}.tag-warn{background:var(--warn-weak);color:var(--warn)}.tabbar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:640px;display:flex;background:var(--card);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);z-index:10}.tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;text-decoration:none;color:var(--muted);font-size:12px}.tab-icon{font-size:20px;line-height:1}.tab.active{color:var(--primary);font-weight:600}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:340px;background:var(--card);border:1px solid var(--border);border-radius:20px;padding:32px 28px;text-align:center}.login-logo{font-size:52px}.login-card h1{font-size:22px;margin:8px 0 2px}.login-card form{margin-top:20px;text-align:left}.login-card .btn{margin-top:14px}.msg-list{flex:1;overflow-y:auto;padding:14px 4px}.msg-row{display:flex;margin-bottom:12px}.msg-row.user{justify-content:flex-end}.bubble{max-width:78%;padding:10px 14px;border-radius:16px;font-size:15px;white-space:pre-wrap;word-break:break-word}.msg-row.user .bubble{background:var(--primary);color:#fff;border-bottom-right-radius:4px}.msg-row.assistant .bubble{background:var(--card);border:1px solid var(--border);border-bottom-left-radius:4px}.tool-status{font-size:13px;color:var(--muted);margin:0 0 12px 6px}.stream-cursor{display:inline-block;animation:blink 1s step-start infinite}@keyframes blink{50%{opacity:0}}.memory-card{background:var(--warn-weak);border:1px solid #f0d9b5;border-radius:var(--radius);padding:12px 14px;margin-bottom:12px}.memory-card .mc-row{margin:2px 0;font-size:14px;word-break:break-all}.memory-card .mc-label{color:var(--muted);font-size:12px;margin-right:4px}.action-card{display:block;background:#eef5ee;border:1px solid #cfe0cf;border-radius:12px;padding:10px 14px;margin:0 0 12px 6px;max-width:85%;color:var(--text);text-decoration:none;font-size:14px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--border);word-break:break-all}.table th{color:var(--muted);font-weight:400}.action-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px}.action-item.overdue{background:var(--danger-weak);border-color:#f3c8c8}.action-item.soon{background:var(--warn-weak);border-color:#f0d9b5}.action-item .ai-body{flex:1;min-width:0}.action-item.done .ai-title{text-decoration:line-through;color:var(--muted)}.ai-title{font-size:15px;word-break:break-all}.ai-actions{display:flex;gap:8px;margin-top:6px}.empty-hint{text-align:center;color:var(--muted);padding:40px 20px;font-size:14px}.mem-item{display:flex;align-items:flex-start;gap:8px;padding:9px 0;border-bottom:1px dashed var(--border);font-size:14px}.mem-item:last-child{border-bottom:none}.mem-body{flex:1;min-width:0;word-break:break-all}.mem-field{color:var(--primary-dark);margin-right:6px}
