:root{--bg: #0f1317;--panel: #161b21;--panel-2: #1c232b;--line: #27303a;--text: #dfe5eb;--muted: #8a96a3;--faint: #5d6874;--accent: #5aa9e6;--accent-ink: #0b1a26;--ok: #4cb782;--warn: #d9a441;--bad: #e06c6c;--research: #7fb3e0;--information: #b4a1e0;--data: #79c7a8;--radius: 6px;--mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, "Helvetica Neue", Arial, sans-serif;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);color-scheme:dark}@media (prefers-color-scheme: light){:root{--bg: #f6f7f9;--panel: #ffffff;--panel-2: #f0f2f5;--line: #dde2e8;--text: #1b2128;--muted: #5b6672;--faint: #8b95a0;--accent: #1f6fb2;--accent-ink: #ffffff;--research: #2f6fa8;--information: #6b55b0;--data: #2a8a64;color-scheme:light}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 8px;font-weight:600;letter-spacing:-.01em}h1{font-size:20px}h2{font-size:16px}h3{font-size:14px}p{margin:0 0 8px}.mono,.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:12px}.tiny{font-size:11px}.ok{color:var(--ok)}.warn{color:var(--warn)}.bad{color:var(--bad)}.shell{display:grid;grid-template-columns:216px 1fr;height:100%}.side{border-right:1px solid var(--line);background:var(--panel);padding:14px 10px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.brand{font-weight:700;font-size:14px;padding:4px 10px 14px;display:flex;align-items:center;gap:8px}.brand img{width:22px;height:22px;border-radius:5px}.side a{color:var(--muted);padding:7px 10px;border-radius:var(--radius);display:flex;justify-content:space-between;align-items:center}.side a:hover{background:var(--panel-2);color:var(--text);text-decoration:none}.side a.active{background:var(--panel-2);color:var(--text)}.side .sep{height:1px;background:var(--line);margin:8px 6px}.main{overflow-y:auto;height:100%}.page{max-width:1180px;margin:0 auto;padding:18px 22px 40px}.page.narrow{max-width:860px}.topbar{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap}.tabbar{display:none}.offline-banner{background:var(--warn);color:#1b1300;padding:4px 12px;font-size:12px;text-align:center}@media (max-width: 820px){.shell{grid-template-columns:1fr}.side{display:none}.main{padding-bottom:calc(58px + var(--safe-b));padding-top:var(--safe-t)}.page{padding:12px 12px 30px}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;background:var(--panel);border-top:1px solid var(--line);padding-bottom:var(--safe-b);z-index:20}.tabbar a{color:var(--muted);text-align:center;font-size:11px;padding:8px 0 6px;display:flex;flex-direction:column;align-items:center;gap:2px}.tabbar a.active{color:var(--accent)}.tabbar svg{width:20px;height:20px}.hide-mobile{display:none!important}}@media (min-width: 821px){.only-mobile{display:none!important}}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.card+.card{margin-top:12px}.grid{display:grid;gap:12px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 820px){.g2,.g3{grid-template-columns:1fr}.g4{grid-template-columns:repeat(2,1fr)}}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.stack>*+*{margin-top:10px}.section-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 0 8px;font-weight:600}button,.btn{font:inherit;font-size:13px;background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);padding:6px 11px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;white-space:nowrap}button:hover,.btn:hover{border-color:var(--faint);text-decoration:none}button.primary,.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:600}button.ghost{background:transparent;border-color:transparent;color:var(--muted)}button.ghost:hover{color:var(--text)}button.danger{color:var(--bad)}button:disabled{opacity:.5;cursor:default}input,select,textarea{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:var(--radius);padding:7px 10px;min-width:0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}textarea{width:100%;resize:vertical}input[type=checkbox]{width:auto}label.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.search-box{display:flex;gap:8px}.search-box input{flex:1;font-size:15px;padding:9px 12px}.badge{display:inline-block;font-size:11px;padding:1px 7px;border-radius:10px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.badge.research{color:var(--research);border-color:color-mix(in srgb,var(--research) 40%,transparent)}.badge.information{color:var(--information);border-color:color-mix(in srgb,var(--information) 40%,transparent)}.badge.data{color:var(--data);border-color:color-mix(in srgb,var(--data) 40%,transparent)}.badge.ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.badge.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.badge.bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.badge.accent{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.chip{display:inline-flex;gap:4px;align-items:center;font-size:12px;padding:2px 8px;border-radius:4px;background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}a.chip:hover{color:var(--text);text-decoration:none}.chip.on{color:var(--text);border-color:var(--accent)}.doc{padding:12px 0;border-bottom:1px solid var(--line)}.doc:last-child{border-bottom:none}.doc .title{font-size:15px;font-weight:600;color:var(--text);line-height:1.35}.doc .title:hover{color:var(--accent)}.doc .meta{font-size:12px;color:var(--muted);margin:3px 0 5px;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}.doc .snip{font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.doc .snip mark,.hl{background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--text);border-radius:2px;padding:0 1px}.doc .why{font-size:11px;color:var(--faint);margin-top:4px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-weight:600;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:6px 8px;border-bottom:1px solid var(--line)}td{padding:7px 8px;border-bottom:1px solid var(--line);vertical-align:top}tr:hover td{background:color-mix(in srgb,var(--panel-2) 60%,transparent)}.table-wrap{overflow-x:auto}.stat{display:flex;flex-direction:column}.stat .v{font-family:var(--mono);font-size:20px;font-weight:600}.stat .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:12px;overflow-x:auto}.tabs button{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;color:var(--muted);padding:8px 12px}.tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.dropzone{border:1.5px dashed var(--line);border-radius:10px;padding:34px 16px;text-align:center;color:var(--muted);transition:all .15s;background:var(--panel)}.dropzone.over{border-color:var(--accent);color:var(--text);background:var(--panel-2)}.progress{height:4px;background:var(--panel-2);border-radius:2px;overflow:hidden}.progress>div{height:100%;background:var(--accent);transition:width .2s}.reader{font-size:16px;line-height:1.65;max-width:760px;white-space:pre-wrap;word-wrap:break-word}.reader .pagebreak{display:block;font-family:var(--mono);font-size:11px;color:var(--faint);border-top:1px dashed var(--line);margin:18px 0 10px;padding-top:4px}.pdfpages{display:flex;flex-direction:column;align-items:center;gap:10px;background:var(--panel-2);padding:10px;border-radius:var(--radius)}.pdfpages canvas{max-width:100%;height:auto!important;box-shadow:0 1px 4px #00000059;background:#fff}.answer{font-size:15px;line-height:1.6;white-space:pre-wrap}.cite{font-family:var(--mono);font-size:11px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);padding:0 4px;border-radius:3px;cursor:pointer}.evidence{border-left:2px solid var(--line);padding-left:10px;font-size:13px;color:var(--muted)}.level-primary{color:var(--ok)}.level-high{color:var(--accent)}.level-moderate{color:var(--text)}.level-indirect{color:var(--muted)}.level-speculative{color:var(--faint)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:50;display:flex;align-items:flex-end;justify-content:center}@media (min-width: 821px){.modal-bg{align-items:center}}.modal{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px;width:min(560px,100%);max-height:88vh;overflow-y:auto}.empty{text-align:center;padding:30px 10px;color:var(--muted)}.err{color:var(--bad);font-size:13px}.spinner{width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}details>summary{cursor:pointer;color:var(--muted);font-size:12px}.tree ul{list-style:none;padding-left:16px;margin:0}.tree>ul{padding-left:0}.tree li{padding:2px 0}.login{max-width:340px;margin:14vh auto 0;padding:20px}.spark{display:block}pre.log{font-family:var(--mono);font-size:11px;white-space:pre-wrap;background:var(--bg);padding:8px;border-radius:var(--radius);max-height:260px;overflow:auto;border:1px solid var(--line)}.split{display:grid;gap:12px;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}@media (max-width: 820px){.split{grid-template-columns:1fr}}.tile{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;min-width:0}.tile .l{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile .v{font-family:var(--mono);font-size:22px;font-weight:600;margin-top:2px}.rangebar{position:relative;height:46px;margin:6px 6px 0}.rangebar .track{position:absolute;top:20px;left:0;right:0;height:6px;background:var(--panel-2);border-radius:3px}.rangebar .fill{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,var(--bad),var(--faint) 50%,var(--ok));opacity:.55;border-radius:3px}.rangebar .mark{position:absolute;top:14px;width:2px;height:18px;margin-left:-1px;background:var(--text)}.rangebar .mark span{position:absolute;top:20px;left:50%;transform:translate(-50%);font-size:10px;white-space:nowrap;color:var(--muted)}.rangebar .mark.live{background:var(--accent);width:3px;height:22px;top:12px}.rangebar .mark.live span{top:-14px;color:var(--accent);font-weight:600}.rangebar .mark.wa{background:var(--warn)}.rangebar .mark.wa span{top:-14px;color:var(--warn)}.bars{display:flex;align-items:flex-end}.bar-col{display:flex;flex-direction:column;align-items:center;min-width:0}.bar-v{height:16px;white-space:nowrap;color:var(--muted);font-size:10px}.bar{width:62%;max-width:36px;background:var(--accent);border-radius:3px 3px 0 0}.bar.est{background:color-mix(in srgb,var(--accent) 45%,transparent);border:1px dashed var(--accent)}.bar.neg{background:var(--bad);border-radius:0 0 3px 3px}.bar-l{margin-top:4px;white-space:nowrap}.case{border:1px solid var(--line);border-radius:var(--radius);padding:10px}.case.bear{border-top:3px solid var(--bad)}.case.base{border-top:3px solid var(--faint)}.case.bull{border-top:3px solid var(--ok)}.case .pt{font-family:var(--mono);font-size:20px;font-weight:600}.kv{display:grid;grid-template-columns:1fr auto;gap:4px 12px;font-size:13px}.kv>:nth-child(odd){color:var(--muted)}.kv>:nth-child(2n){font-family:var(--mono);text-align:right}table.assume td.est,table.assume th.est{background:color-mix(in srgb,var(--accent) 7%,transparent)}.tabs-inline{display:flex;gap:4px;border-bottom:1px solid var(--line);margin:6px 0 14px}.tabs-inline a{padding:8px 12px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs-inline a.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.grid>.card+.card{margin-top:0}@media (max-width: 820px){.grid.cases{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.grid.cases .case{padding:7px}.grid.cases .case .pt{font-size:15px}.grid.cases .kv{grid-template-columns:1fr;gap:0;font-size:12px}.grid.cases .kv>:nth-child(2n){text-align:left}}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}th.sortable:hover{color:var(--text)}th.sortable .sort-ind{opacity:.35;font-size:10px}th.sortable.sorted{color:var(--text)}th.sortable.sorted .sort-ind{opacity:1;color:var(--accent)}.running-on{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;padding:5px 10px;margin:0 4px 10px;border-radius:6px;border:1px solid var(--line);background:var(--bg)}.running-on.cloud{border-color:#3b82f6}.running-on.pc,.running-on.mac,.running-on.local{border-color:#a3a3a3}.running-on.fallback{border-color:#f59e0b;background:#f59e0b14}.show-mobile{display:none}@media (max-width: 820px){.show-mobile{display:block}.running-mobile .running-on{margin:8px 12px 0}}
