:root{--bg: #f6f5f1;--card: #ffffff;--line: #e4e1d8;--text: #2a2a28;--muted: #7a776e;--accent: #3f6e5a;--accent-soft: #e6efe9;--danger: #b2483b;color:var(--text);background:var(--bg);font-family:ui-sans-serif,system-ui,-apple-system,PingFang SC,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.6}*{box-sizing:border-box}body{margin:0}h1,h2,h3,h4{margin:0;font-weight:600}h2{font-size:20px}h3{font-size:16px;margin:18px 0 8px}h4{font-size:15px;margin:4px 0}small{color:var(--muted);font-weight:400;font-size:13px;margin-left:6px}button{min-height:36px;padding:0 14px;border:1px solid var(--accent);border-radius:8px;color:#fff;background:var(--accent);font:inherit;cursor:pointer}button:disabled{opacity:.6;cursor:default}button.ghost{background:transparent;color:var(--accent)}button.ghost:hover:not(:disabled){background:var(--accent-soft)}input,select{min-height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;color:inherit;min-width:0}input:focus,select:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login-box{width:min(360px,100%);display:flex;flex-direction:column;gap:12px;padding:28px;background:var(--card);border:1px solid var(--line);border-radius:14px}.login-box h1{font-size:22px;text-align:center;margin-bottom:6px}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 20px;background:var(--card);border-bottom:1px solid var(--line)}.topbar h1{font-size:18px;color:var(--accent)}.tabs{display:flex;gap:4px;flex:1;overflow-x:auto}.tab{background:transparent;color:var(--muted);border-color:transparent;white-space:nowrap}.tab.active{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft);font-weight:600}.content-area{max-width:1200px;margin:0 auto;padding:20px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filters .grow{flex:1;min-width:160px}.filters .w-owner{width:120px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:10px}.rec-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px;color:var(--muted)}.rec-meta .person{color:var(--text);font-weight:600}.rec-meta .status{margin-left:auto;padding:0 8px;border-radius:6px;background:#f3eee2;color:#8a6a2b}.content{margin:6px 0 0;white-space:pre-wrap;word-break:break-word}.extra{display:grid;grid-template-columns:max-content 1fr;gap:2px 10px;margin:8px 0 0;font-size:13px}.extra dt{color:var(--muted)}.extra dd{margin:0;word-break:break-word}.note{margin:6px 0 0;font-size:13px;background:#faf8f2;padding:4px 8px;border-radius:6px}.small{font-size:13px;margin:4px 0 0}.tag{display:inline-block;padding:0 8px;border-radius:6px;background:var(--accent-soft);color:var(--accent);font-size:12px;line-height:22px}.tag.k-request{background:#fbeae6;color:#a04a3c}.tag.k-family{background:#f6efdf;color:#8a6a2b}.tag.k-decision{background:#e6eef8;color:#3b5f8c}.tag.k-signal{background:#efe8f6;color:#6c4f8c}.tag.ok{background:#e3f1e7;color:#2f7a48}.tag.fail{background:#fbe6e3;color:var(--danger)}.muted{color:var(--muted)}.empty{color:var(--muted);font-size:14px;padding:8px 0}.error{color:var(--danger);margin:8px 0}.feishu-line{margin:0 0 12px;font-size:13px;color:var(--muted)}.count-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.count-card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column}.count-card strong{font-size:24px;color:var(--accent);line-height:1.2}.count-card span{font-size:13px;color:var(--muted)}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 20px}.pager{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:12px;font-size:14px;color:var(--muted)}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.column{background:#efede6;border-radius:12px;padding:4px 10px 10px;min-height:120px}.actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.small-btn{min-height:28px;padding:0 10px;font-size:13px}.msg-layout{display:grid;grid-template-columns:220px 1fr;gap:16px}.chat-list{display:flex;flex-direction:column;gap:4px}.chat-item{display:flex;justify-content:space-between;align-items:center;gap:6px;text-align:left;background:transparent;color:var(--text);border-color:transparent}.chat-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item.active{background:var(--accent-soft);color:var(--accent)}.msg-main{min-width:0}.table-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:10px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-weight:500;background:#faf9f5}.nowrap{white-space:nowrap}.mono{font-family:ui-monospace,Menlo,Consolas,monospace}td.args{max-width:320px;word-break:break-all}td.preview{max-width:360px;word-break:break-word;white-space:pre-wrap}@media(max-width:720px){.topbar{padding:8px 12px;gap:8px}.tabs{order:3;flex-basis:100%}.logout{margin-left:auto}.content-area{padding:12px}.kanban,.msg-layout{grid-template-columns:1fr}.chat-list{flex-direction:row;overflow-x:auto}.chat-item{flex:none}.overview-grid{grid-template-columns:1fr}}
