:root{--bg: #0f1620;--panel: #182230;--panel-2: #1f2c3c;--border: #2a3a4e;--text: #e6edf3;--muted: #8fa2b7;--accent: #4da3ff;--green: #3ddc84;--yellow: #f5c542;--red: #ff5c5c}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);line-height:1.6}.app{max-width:1080px;margin:0 auto;padding:24px 20px 80px}h1{font-size:1.6rem;margin:0 0 4px}.subtitle{color:var(--muted);margin:0 0 24px}.form{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:20px;display:grid;gap:12px;margin-bottom:28px}.form-row{display:flex;gap:12px;flex-wrap:wrap}.form-field{display:flex;flex-direction:column;gap:4px;flex:1;min-width:140px}.form-field label{font-size:.82rem;color:var(--muted)}.form-field input,.form-field textarea{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:9px 12px;font-size:.95rem;resize:vertical}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--accent)}button.primary{background:var(--accent);color:#08111b;border:none;border-radius:8px;padding:10px 22px;font-size:.95rem;font-weight:600;cursor:pointer}button.primary:disabled{opacity:.5;cursor:not-allowed}.loading{color:var(--muted);margin:24px 0}.error{background:#ff5c5c1f;border:1px solid var(--red);color:#ffb3b3;border-radius:8px;padding:12px 16px;margin:16px 0}.warnings{background:#f5c54214;border:1px solid var(--yellow);border-radius:8px;padding:10px 14px;margin:16px 0;font-size:.85rem;color:#e8d49a}.warnings li{margin:2px 0}.llm-badge{display:inline-block;font-size:.75rem;padding:2px 10px;border-radius:20px;margin-left:8px;vertical-align:middle}.llm-on{background:var(--green);color:#08111b}.llm-off{background:var(--yellow);color:#08111b}.section{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:18px 20px;margin-bottom:18px}.section h2{margin:0 0 12px;font-size:1.12rem;display:flex;align-items:center;gap:8px}.kind-tag{font-size:.72rem;padding:1px 8px;border-radius:4px;border:1px solid var(--border);color:var(--muted);font-weight:400}.kind-tag.fact{color:var(--green);border-color:var(--green)}.kind-tag.inference{color:var(--accent);border-color:var(--accent)}.kind-tag.assumption{color:var(--yellow);border-color:var(--yellow)}.kind-tag.qualitative{color:#c39bff;border-color:#c39bff}.kind-tag.summary{color:var(--text);border-color:var(--text)}pre.content{white-space:pre-wrap;word-break:break-word;font-family:inherit;margin:0;font-size:.92rem}.light-badge{display:inline-flex;align-items:center;gap:6px;font-weight:700}.dot{width:14px;height:14px;border-radius:50%;display:inline-block}.dot.green{background:var(--green)}.dot.yellow{background:var(--yellow)}.dot.red{background:var(--red)}.dot.unknown{background:var(--muted)}.signals{display:grid;gap:6px;margin-top:10px}.signal{display:flex;gap:8px;font-size:.86rem;align-items:baseline}.signal .dir{font-weight:600;min-width:70px}.dir.pos{color:var(--green)}.dir.neg{color:var(--red)}.dir.neutral{color:var(--muted)}.scenario-bars{display:grid;gap:10px;margin-top:10px}.scenario-row{display:grid;grid-template-columns:90px 1fr 180px;gap:10px;align-items:center;font-size:.86rem}.bar-track{background:var(--panel-2);height:18px;border-radius:6px;position:relative;overflow:hidden}.bar-fill{position:absolute;top:0;bottom:0;border-radius:6px}.bar-fill.bear{background:var(--red)}.bar-fill.base{background:var(--accent)}.bar-fill.bull{background:var(--green)}.dd-map{display:grid;gap:6px;margin-top:10px}.dd-row{display:grid;grid-template-columns:70px 1fr 90px;gap:10px;align-items:center;font-size:.84rem}.dd-bar{background:#ff5c5cbf;height:12px;border-radius:4px}table.data{width:100%;border-collapse:collapse;font-size:.86rem}table.data th,table.data td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border)}table.data th{color:var(--muted);font-weight:600}.kv{display:grid;grid-template-columns:180px 1fr;gap:4px 12px;font-size:.9rem}.kv .k,.muted{color:var(--muted)}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace}
