:root{color-scheme:dark;--bg: #14161a;--panel: #1d2026;--border: #2c313a;--text: #d7dbe2;--muted: #8b93a1;--accent: #4f8cff;--green: #3fb969;--yellow: #d8b23c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}button,input,select{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:6px 10px}button{cursor:pointer}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.5;cursor:default}button.active{border-color:var(--accent);color:var(--accent)}h1{font-size:1.4rem;margin:0 0 8px}h2{font-size:1.15rem;margin:0 0 12px}h3,h4{margin:12px 0 6px}.muted{color:var(--muted)}.small{font-size:.85em}.error{color:#e06c75}.app{max-width:1000px;margin:0 auto;padding:0 16px 40px}.topbar{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.brand{font-weight:700;margin-right:8px}.spacer{flex:1}.tabs{display:flex;gap:8px;margin:16px 0}.tabs button{border-radius:6px 6px 0 0}main section{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px}.login{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:28px;width:320px;display:flex;flex-direction:column;gap:10px}.upload{display:flex;gap:10px;margin-bottom:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:600}.badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:.8em;border:1px solid var(--border)}.badge.ok{color:var(--green);border-color:var(--green)}.badge.warn{color:var(--yellow);border-color:var(--yellow)}.badge.muted-badge{color:var(--muted)}.badge.doc-ready{color:var(--green);border-color:var(--green)}.badge.doc-processing,.badge.doc-uploaded{color:var(--yellow);border-color:var(--yellow)}.badge.doc-failed{color:#e06c75;border-color:#e06c75}.chip{display:inline-block;padding:1px 8px;margin-left:6px;border-radius:999px;font-size:.8em;background:var(--bg);border:1px solid var(--border);color:var(--accent)}.messages{display:flex;flex-direction:column;gap:12px;margin:12px 0;max-height:55vh;overflow-y:auto}.msg{max-width:80%}.msg.user{align-self:flex-end}.msg.assistant{align-self:flex-start}.bubble{padding:10px 12px;border-radius:10px;background:var(--bg);border:1px solid var(--border);white-space:pre-wrap}.msg.user .bubble{background:#24304a;border-color:#33415e}.meta{margin-top:6px}.sources{margin-top:6px;font-size:.9em}.sources summary{cursor:pointer;color:var(--muted)}.sources blockquote{margin:6px 0 0;padding:6px 10px;border-left:3px solid var(--border);color:var(--muted)}.composer{display:flex;gap:10px}.composer input{flex:1}.chat-layout{display:flex;gap:16px;align-items:stretch}.chat-list{width:220px;flex-shrink:0;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:10px}.chat-list .new-chat{width:100%}.chat-list ul{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:60vh}.chat-list li{display:flex;gap:4px;margin-bottom:4px}.chat-list li.active .chat-item{border-color:var(--accent)}.chat-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left}.chat-title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-date{font-size:.8em;color:var(--muted)}.chat-delete{padding:6px 9px;color:var(--muted)}.chat-delete:hover:not(:disabled){color:#e06c75;border-color:#e06c75}.chat-layout .chat{flex:1;min-width:0}.thought{margin-top:6px;font-size:.9em}.thought summary{cursor:pointer;color:var(--muted)}.thought ol{margin:6px 0 0;padding-left:20px}.thought li{margin-bottom:8px}.thought p{margin:2px 0}.search{width:100%;margin-bottom:12px}.entities{display:flex;gap:16px;align-items:flex-start}.entity-list{list-style:none;margin:0;padding:0;flex:1;min-width:0}.entity-list li{margin-bottom:6px}.entity-list button{width:100%;text-align:left}.entity-detail{flex:1;min-width:0;border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--bg)}.claim{margin-bottom:10px}.wiki-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.wiki-head h2{margin:0}.wiki-nav{display:flex;gap:8px}.wiki-page h3{margin-top:0}.wiki-desc{font-size:1.02em}.wiki-section{margin-top:16px;border-top:1px solid var(--border);padding-top:8px}.wiki-section h4{margin:0 0 8px;color:var(--accent)}.wiki-section ul{margin:0;padding-left:18px}.wiki-link{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:3px}.wiki-link:hover:not(:disabled){color:#7aa8ff}.backlinks h4{color:var(--muted)}.graph-canvas{width:100%;height:620px;background:var(--bg);border:1px solid var(--border);border-radius:8px;display:block}.graph-layout{display:flex;gap:16px;align-items:flex-start}.graph-list{width:240px;flex-shrink:0;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.graph-list ul{list-style:none;margin:0;padding:0;overflow-y:auto;max-height:560px}.graph-list li{margin-bottom:3px}.graph-item{width:100%;display:flex;align-items:center;gap:8px;text-align:left;padding:5px 8px}.graph-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.graph-main{flex:1;min-width:0}.graph-main .muted{margin:6px 2px 0}
