:root{--bg:#fff;--sidebar:#f9f9f9;--sidebar-hover:#ececec;--border:#e5e5e5;--text:#0d0d0d;--muted:#6b6b6b;--accent:#10a37f;--accent-hover:#0e8e6d;--user-bubble:#f4f4f4;--danger:#d7263d;--radius:14px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}button{cursor:pointer;font-family:inherit}.boot{background:var(--bg);height:100%}.unauthorized{color:var(--text);padding:16px 20px;font-size:14px}.unauthorized p{margin:0}.signin-btn{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:6px;margin-top:10px;padding:6px 14px;font-size:13px}.signin-btn:hover{background:var(--sidebar-hover)}.no-access{background:var(--bg);min-height:100%;color:var(--text);justify-content:center;align-items:flex-start;padding:10vh 16px 24px;display:flex}.no-access-card{border:1px solid var(--border);border-radius:12px;width:100%;max-width:520px;padding:24px}.no-access-card h1{margin:0 0 8px;font-size:20px}.no-access-lead,.no-access-who{color:var(--muted);margin:0 0 12px;font-size:14px}.no-access-status{background:var(--sidebar-hover);border-radius:8px;margin:0 0 14px;padding:10px 12px;font-size:14px}.no-access-status.denied{color:var(--danger)}.no-access-reason{box-sizing:border-box;border:1px solid var(--border);width:100%;font:inherit;resize:vertical;border-radius:8px;padding:8px 10px;font-size:14px}.no-access-error{color:var(--danger);margin:10px 0 0;font-size:13px}.no-access-actions{align-items:center;gap:10px;margin-top:14px;display:flex}.no-access-actions .signin-btn{margin-top:0}.no-access .primary-btn,.access-panel .primary-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.no-access .primary-btn:hover:not(:disabled),.access-panel .primary-btn:hover:not(:disabled){background:var(--accent-hover)}.no-access .primary-btn:disabled,.access-panel .primary-btn:disabled{opacity:.5;cursor:default}.access-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.access-item{border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.access-who{flex-direction:column;gap:2px;min-width:0;display:flex}.access-name{font-size:14px;font-weight:600}.access-sub{color:var(--muted);font-size:12px}.access-reason{overflow-wrap:anywhere;font-size:13px}.access-actions{flex-shrink:0;gap:8px;display:flex}.access-actions .signin-btn{margin-top:0}.access-recent{margin-top:16px;font-size:13px}.access-recent ul{color:var(--muted);margin:8px 0 0;padding-left:18px}.feedback{gap:4px;margin-top:8px;display:flex}.fb-btn{cursor:pointer;opacity:.45;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:14px;line-height:1;transition:opacity .12s,background .12s}.fb-btn:hover{opacity:.85;background:var(--sidebar-hover)}.fb-btn.active{opacity:1;background:var(--sidebar-hover)}.msg-suggestions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.suggestion-pill{border:1px solid var(--border);background:var(--bg);color:var(--accent);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500;line-height:1.2;transition:background .12s,border-color .12s}.suggestion-pill:hover{background:var(--sidebar-hover);border-color:var(--accent)}.forecast{border:1px solid var(--border);background:var(--bg);border-radius:12px;margin-top:8px;padding:14px 16px}.fc-headline{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.fc-saved{color:var(--accent);font-size:26px;font-weight:700}.fc-saved-label{color:var(--muted);font-size:13px}.fc-svg{width:100%;height:auto;display:block}.fc-area{fill:#10a37f1f;stroke:none}.fc-now{stroke:#c9c9d4;stroke-width:1px;stroke-dasharray:3 3}.fc-actual{stroke:#6b6b6b;stroke-width:2px}.fc-base{stroke:#f59e0b;stroke-width:2px;stroke-dasharray:5 4}.fc-cap{stroke:var(--accent);stroke-width:2.5px}.fc-axis{fill:var(--muted);font-size:9px}.fc-legend{color:var(--muted);gap:14px;margin:4px 0 10px;font-size:12px;display:flex}.fc-legend span{align-items:center;gap:5px;display:inline-flex}.fc-sw{border-radius:2px;width:12px;height:3px;display:inline-block}.fc-sw-actual{background:#6b6b6b}.fc-sw-base{background:#f59e0b}.fc-sw-cap{background:var(--accent);height:4px}.fc-controls{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.fc-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fc-lbl{color:var(--muted);min-width:68px;font-size:13px}.fc-seg{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.fc-seg button{background:var(--bg);color:var(--text);border:none;border-right:1px solid var(--border);padding:5px 12px;font-size:13px}.fc-seg button:last-child{border-right:none}.fc-seg button.on{background:var(--accent);color:#fff}.fc-row input[type=range]{max-width:220px;accent-color:var(--accent);flex:1}.fc-num{border:1px solid var(--border);border-radius:6px;width:60px;padding:5px 8px;font-size:13px}.fc-num-wide{width:88px}.fc-suffix{color:var(--muted);font-size:13px}.fc-capnote{color:var(--muted);margin-top:2px;font-size:12px}.app{height:100%;display:flex;overflow:hidden}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);flex-direction:column;flex:0 0 260px;width:260px;transition:margin-left .2s;display:flex}.sidebar.collapsed{margin-left:-260px}.sidebar-top{padding:10px}.new-chat{border:1px solid var(--border);width:100%;color:var(--text);background:0 0;border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:500;display:flex}.new-chat:hover{background:var(--sidebar-hover)}.new-chat .plus{font-size:18px;line-height:1}.history{flex-direction:column;flex:1;gap:2px;padding:6px 8px;display:flex;overflow-y:auto}.history-item{border-radius:8px;align-items:center;display:flex}.history-item:hover,.history-item.active{background:var(--sidebar-hover)}.history-select{text-align:left;min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:8px;flex:1;padding:9px 10px;font-size:14px;overflow:hidden}.history-item.active .history-select{font-weight:500}.history-del{color:var(--text);opacity:.55;cursor:pointer;visibility:hidden;background:0 0;border:none;border-radius:6px;margin-right:4px;padding:4px 8px;font-size:16px;line-height:1}.history-item:hover .history-del{visibility:visible}.history-del:hover{opacity:1;background:var(--border)}.sidebar-bottom{border-top:1px solid var(--border);flex-direction:column;gap:4px;padding:8px;display:flex}.side-action{text-align:left;width:100%;color:var(--text);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:14px;display:flex}.side-action:hover{background:var(--sidebar-hover)}.side-action.muted{color:var(--muted)}.side-glyph{font-size:15px}.account{align-items:center;gap:10px;padding:8px 10px;display:flex}.account-avatar{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:600;display:grid;overflow:hidden}.account-photo{object-fit:cover;border-radius:50%;width:100%;height:100%}.account-name{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{border-bottom:1px solid #0000;align-items:center;gap:12px;padding:10px 16px;display:flex}.brand{font-size:15px;font-weight:600}.icon-btn{color:var(--text);background:0 0;border:none;border-radius:8px;padding:6px 8px;font-size:18px;line-height:1}.icon-btn:hover{background:var(--sidebar-hover)}.ghost-btn{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:999px;margin-left:auto;padding:7px 12px;font-size:13px;font-weight:500}.ghost-btn:hover{background:var(--sidebar-hover)}.scroll{flex:1;overflow-y:auto}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;max-width:760px;min-height:100%;margin:0 auto;padding:24px 20px 80px;display:flex}.hero h1{margin:0;font-size:28px;font-weight:600}.hero-sub{color:var(--muted);margin:0 0 12px;font-size:15px}.suggestions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:640px;display:grid}.suggestion{text-align:left;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:12px;padding:14px 16px;font-size:14px}.suggestion:hover{background:var(--sidebar-hover)}.suggestions-usage{flex-direction:column;gap:8px;width:100%;max-width:640px;margin-top:6px;display:flex}.suggestions-label{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px}.hero-connect{color:var(--accent);background:0 0;border:none;margin-top:8px;font-size:14px;font-weight:500}.hero-connect:hover{text-decoration:underline}.transcript{flex-direction:column;gap:22px;max-width:768px;margin:0 auto;padding:24px 20px 40px;display:flex}.turn{display:flex}.turn.user{justify-content:flex-end}.turn.user .bubble{background:var(--user-bubble);white-space:pre-wrap;word-wrap:break-word;border-radius:20px;max-width:78%;padding:10px 16px;font-size:15px}.turn.assistant{gap:14px}.avatar{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:11px;font-weight:700;display:grid}.assistant-body{flex:1;min-width:0;font-size:15px;line-height:1.7}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md p{margin:0 0 12px}.md h1,.md h2,.md h3,.md h4{margin:18px 0 8px;line-height:1.3}.md h1{font-size:22px}.md h2{font-size:19px}.md h3{font-size:16px}.md ul,.md ol{margin:0 0 12px;padding-left:24px}.md li{margin:4px 0}.md a{color:var(--accent)}.md code{background:#f2f2f2;border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em}.md pre{color:#f4f4f4;background:#0d0d0d;border-radius:10px;margin:0 0 12px;padding:14px 16px;overflow-x:auto}.md pre code{color:inherit;background:0 0;padding:0}.md blockquote{border-left:3px solid var(--border);color:var(--muted);margin:0 0 12px;padding:2px 0 2px 14px}.steps{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.step{color:var(--muted);background:#f0f0f0;border-radius:999px;padding:3px 10px;font-size:12px}.step-started{color:#2563eb;background:#eef6ff}.step-completed{color:var(--accent);background:#eafaf3}.step-failed{color:var(--danger);background:#fdecee}.step-retry{color:#b45309;background:#fff4e5}.thinking{gap:5px;padding:6px 0;display:inline-flex}.thinking span{background:#c4c4c4;border-radius:50%;width:7px;height:7px;animation:1.4s infinite both blink}.thinking span:nth-child(2){animation-delay:.2s}.thinking span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.2}40%{opacity:1}}.working{align-items:center;gap:10px;padding:4px 0;display:flex}.working-label{color:var(--muted);font-size:14px}.viz-loading{color:var(--muted);align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.viz-card{border:1px solid var(--border);background:var(--bg);border-radius:12px;margin:14px 0;padding:14px 16px}.viz-head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.viz-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--accent);background:#eafaf3;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600}.viz-title{font-size:14px;font-weight:600}.viz-dl{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;margin-left:auto;padding:5px 10px;font-size:12px}.viz-dl:hover{background:var(--sidebar-hover)}.viz-svg{width:100%;height:auto}.viz-axis,.viz-tick{fill:var(--muted);font-size:10px}.viz-grid{stroke:#ececf1;stroke-width:1px}.viz-axisline{stroke:#d9d9e3;stroke-width:1px}.viz-seg-label{fill:#fff;pointer-events:none;font-size:10px;font-weight:600}.viz-legend.viz-legend-inline{flex-flow:wrap;gap:6px 16px;margin-top:8px}.viz-pie-wrap{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.viz-pie-wrap .viz-svg{width:200px}.viz-legend{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.viz-legend li{align-items:center;gap:8px;display:flex}.viz-swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.viz-table-wrap{overflow-x:auto}.viz-table{border-collapse:collapse;width:100%;font-size:13px}.viz-table th,.viz-table td{border:1px solid var(--border);text-align:left;padding:7px 10px}.viz-table th{background:#f7f7f7;font-weight:600}.viz-table-wide th,.viz-table-wide td{white-space:nowrap}.viz-table-click tbody tr{cursor:pointer}.viz-table-click tbody tr:hover td{background:#f4faf8}.viz-kpi{padding:8px 0}.viz-kpi-value{font-size:40px;font-weight:700;line-height:1}.viz-kpi-label{color:var(--muted);margin-top:6px;font-size:13px}.viz-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;padding:8px 0;display:grid}.viz-kpi-tile{border:1px solid var(--border);background:#fafafa;border-radius:10px;padding:12px 14px}.viz-kpi-tile-value{font-size:26px;font-weight:700;line-height:1.1}.viz-kpi-tile-label{color:var(--muted);text-transform:capitalize;margin-top:4px;font-size:12px}.viz-bar-label{fill:var(--muted);font-size:10px;font-weight:600}.viz-empty{color:var(--muted);padding:8px 0;font-size:13px}.viz-narrative{color:var(--text);margin:10px 0 0;font-size:14px}.viz-meta{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:10px;font-size:12px;display:flex}.usage-details{border:1px solid var(--border);background:var(--sidebar-hover);border-radius:10px;margin-top:10px;font-size:12.5px}.usage-details>summary{cursor:pointer;-webkit-user-select:none;user-select:none;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;list-style:none;display:flex}.usage-details>summary::-webkit-details-marker{display:none}.usage-badge{color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1px 8px;font-size:11px;font-weight:600}.usage-period{color:var(--muted)}.usage-facts{grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;padding:2px 12px 8px;display:grid}.usage-facts dt{color:var(--muted)}.usage-facts dd{color:var(--text);margin:0}.usage-exact{color:var(--muted);font-size:11.5px;display:block}.usage-warn{color:var(--danger);margin:0 12px 8px}.usage-query{padding:0 12px 10px}.usage-query-head{color:var(--muted);justify-content:space-between;align-items:center;display:flex}.artifacts{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.artifact{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.artifact:hover{background:var(--sidebar-hover)}.artifact-icon{background:var(--accent);color:#fff;border-radius:5px;padding:3px 6px;font-size:10px;font-weight:700}.artifact-name{font-weight:500}.artifact-dl{color:var(--muted)}.provenance{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.prov-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.prov-chip{color:var(--text);text-overflow:ellipsis;white-space:nowrap;background:#f0f0f0;border-radius:999px;max-width:260px;padding:3px 10px;font-size:12px;text-decoration:none;overflow:hidden}a.prov-chip:hover{background:var(--sidebar-hover)}.data-asof{color:var(--muted);margin-top:8px;font-size:12px}.error-box{color:var(--danger);background:#fdecee;border:1px solid #f5c6cd;border-radius:10px;margin-top:10px;padding:10px 14px;font-size:14px}.composer{width:100%;max-width:768px;margin:0 auto;padding:8px 20px 16px}.composer-box{border:1px solid var(--border);background:var(--bg);border-radius:26px;align-items:flex-end;gap:8px;padding:8px 8px 8px 18px;display:flex;box-shadow:0 2px 10px #0000000d}.composer-box textarea{resize:none;max-height:200px;color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:6px 0;font-family:inherit;font-size:15px;line-height:1.5}.send{background:var(--text);color:#fff;border:none;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.send:disabled{cursor:not-allowed;background:#d9d9d9}.send:not(:disabled):hover{background:#000}.send.stop{background:var(--text)}.stop-glyph{background:#fff;border-radius:2px;width:12px;height:12px}.composer-foot{text-align:center;color:var(--muted);margin:8px 0 0;font-size:12px}.modal-backdrop{z-index:50;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--bg);border-radius:16px;width:100%;max-width:720px;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.modal-head h2{margin:0;font-size:20px}.modal-lead{color:var(--muted);margin:0 0 18px;font-size:14px}.field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:6px;font-size:12px;display:block}.endpoint-row{align-items:center;gap:8px;display:flex}.endpoint{border:1px solid var(--border);white-space:nowrap;background:#f4f4f4;border-radius:8px;flex:1;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;overflow-x:auto}.copy-btn{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;padding:9px 14px;font-size:13px;font-weight:500}.copy-btn:hover{background:var(--sidebar-hover)}.hint{color:var(--muted);margin:8px 0 20px;font-size:12px}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.tool-card{border:1px solid var(--border);border-radius:12px;padding:14px 16px}.tool-card h3{margin:0 0 10px;font-size:15px}.tool-card ol{color:var(--text);margin:0;padding-left:18px;font-size:13px;line-height:1.6}.tool-card p{color:var(--muted);margin:0 0 8px;font-size:13px}.tool-card .copy-btn+p{margin-top:10px}.snippet{color:#f4f4f4;background:#0d0d0d;border-radius:8px;margin:0 0 8px;padding:12px;font-size:12px;overflow-x:auto}.examples{margin-top:20px}.examples h3{margin:0 0 4px;font-size:15px}.examples .hint{margin:0 0 12px}.example-group h4{margin:12px 0 6px;font-size:13px;font-weight:600}.example-note{color:var(--muted);font-weight:400}.example-group ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.example-group li{border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:6px 6px 6px 12px;display:flex}.example-prompt{-webkit-user-select:all;user-select:all;flex:1;font-size:13px}.example-group .copy-btn{padding:5px 10px;font-size:12px}@media (width<=720px){.sidebar{z-index:40;height:100%;position:absolute;box-shadow:2px 0 12px #0000001f}.suggestions{grid-template-columns:1fr}}.reasoning{border:1px solid var(--border);background:var(--sidebar-hover);border-radius:10px;margin-top:10px;font-size:12.5px}.reasoning>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:8px 12px;list-style:none;display:flex}.reasoning>summary::-webkit-details-marker{display:none}.reasoning-badge{color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:1px 8px;font-size:11px;font-weight:600}.reasoning-total{color:var(--muted);font-variant-numeric:tabular-nums}.reasoning-steps{gap:8px;margin:0;padding:6px 12px 8px;list-style:none;display:grid}.reasoning-steps li{grid-template-columns:20px 1fr;align-items:start;gap:8px;display:grid}.rs-num{background:var(--bg);border:1px solid var(--border);width:18px;height:18px;color:var(--muted);border-radius:50%;place-items:center;font-size:10px;font-weight:600;display:grid}.rs-body{min-width:0}.rs-line{grid-template-columns:64px 1fr auto;align-items:baseline;gap:8px;display:grid}.rs-name{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:10px}.rs-detail{color:var(--text)}.rs-ms{color:var(--muted);font-variant-numeric:tabular-nums}.reasoning-facts{flex-wrap:wrap;gap:6px;padding:6px 12px;display:flex}.rf{border:1px solid var(--border);background:var(--bg);border-radius:6px;gap:6px;padding:2px 8px;display:inline-flex}.rf-k{color:var(--muted)}.rf-v{color:var(--text);font-weight:500}.reasoning-sql{color:#f4f4f4;white-space:pre-wrap;word-break:break-word;background:#0d0d0d;border-radius:8px;max-height:200px;margin:6px 0 0;padding:10px;font-size:11.5px;overflow-y:auto}.derivation{border:1px solid var(--border);background:var(--bg);border-radius:8px;margin:8px 12px 10px}.derivation>summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:7px 10px;list-style:none;display:flex}.derivation>summary::-webkit-details-marker{display:none}.derivation-badge{color:#0a7d3c;background:#0a7d3c1a;border:1px solid #0a7d3c4d;border-radius:6px;padding:1px 8px;font-size:11px;font-weight:600}.derivation-src{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}.derivation-block{padding:0 10px 8px}.derivation-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);justify-content:space-between;align-items:center;margin:6px 0 2px;font-size:10px;display:flex}.derivation-copy{text-transform:none;letter-spacing:0;color:var(--text);background:var(--sidebar-hover);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:1px 8px;font-size:11px}.derivation-copy:hover{background:var(--bg)}.derivation-py{max-height:340px}.recovered-top{align-items:center;gap:8px;margin-bottom:6px;display:flex}.recovered-badge{color:#0a7d3c;white-space:nowrap;background:#e7f6ec;border:1px solid #b6e2c6;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.recovered-view{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.recovered{border:1px solid var(--border);background:var(--surface,#fafafa);border-radius:10px;margin-top:8px;padding:8px 10px}.recovered>summary{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.recovered>summary::-webkit-details-marker{display:none}.recovered-debate{color:var(--text);margin:8px 0 0;font-size:12.5px;line-height:1.5}.recovered-issues{margin-top:8px}.recovered-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:3px;font-size:11px;font-weight:600}.recovered-issues ul{margin:0;padding-left:18px}.recovered-issues li{color:var(--text);font-size:12px;line-height:1.5}.recovered-rationale{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.5}.mcp-access{border:1px solid var(--border);border-radius:8px;margin:8px 0 12px;padding:8px 12px;font-size:13px}.mcp-access.ok{color:#067647;background:#ecfdf3;border-color:#abefc6}.mcp-access.some{color:#026aa2;background:#f0f9ff;border-color:#b9e6fe}.mcp-access.none{color:#b54708;background:#fffaeb;border-color:#fedf89}.roles-modal{width:min(1080px,96vw);max-width:1080px}.roles-hint{color:var(--muted);margin:2px 0 10px;font-size:13px}.roles-error{color:#b42318;background:#fdecec;border:1px solid #f3c9c6;border-radius:8px;margin-bottom:12px;padding:8px 12px;font-size:13px}.roles-body{grid-template-columns:minmax(300px,.9fr) 1.1fr;gap:18px;min-height:460px;display:grid}.roles-col-head{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px;font-size:11px}.roles-empty,.rp-muted{color:var(--muted)}.roles-modal .ghost-btn{margin-left:0}.roles-modal .ghost-btn.danger{color:var(--danger);border-color:#f3c9c6}.roles-modal .primary-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.roles-modal .primary-btn:hover:not(:disabled){background:var(--accent-hover)}.roles-modal .primary-btn:disabled,.roles-modal .ghost-btn:disabled{opacity:.5;cursor:default}.rp-tabs{border-bottom:1px solid var(--border);align-items:center;gap:4px;margin-bottom:14px;display:flex}.rp-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-size:13px}.rp-tabs button.active{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.rp-flash{color:#067647;margin-left:auto;font-size:12px}.rp-list-head{margin-top:16px}.rp-person{text-align:left;border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);cursor:pointer;font:inherit;border-radius:8px;align-items:center;gap:8px;margin-bottom:6px;padding:6px 10px;display:flex}.rp-person:hover{background:var(--sidebar)}.rp-person.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.rp-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.rp-tags{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.rp-tag{border:1px solid var(--border);white-space:nowrap;border-radius:6px;align-items:center;gap:3px;padding:1px 7px;font-size:11px;display:inline-flex}.rp-admin{color:#3538cd;background:#eef2ff;border-color:#c7d0fd}.rp-developer{color:#067647;background:#ecfdf3;border-color:#abefc6}.rp-viewer{background:var(--sidebar-hover);color:var(--muted)}.rp-notifier{color:#b54708;background:#fff7ed;border-color:#fedf89}.rp-mcp,.rp-tag[class*=rp-mcp-]{color:#026aa2;background:#f0f9ff;border-color:#b9e6fe}.rp-custom,.rp-tag:not(.rp-admin):not(.rp-developer):not(.rp-viewer):not(.rp-notifier):not(.rp-mcp):not([class*=rp-mcp-]){color:#9f1ab1;background:#fdf4ff;border-color:#f6d0fe}.rp-initials{background:var(--sidebar-hover);width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:600;display:inline-grid}.rp-initials.big{width:40px;height:40px;font-size:14px}.roles-filter{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;margin-bottom:8px;padding:7px 10px;font-size:13px}.roles-people-list{max-height:340px;overflow-y:auto}.rp-add{flex-direction:column;gap:6px;display:flex}.rp-combo{position:relative}.rp-combo input,.rp-field input,.rp-field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:8px;padding:7px 10px;font-size:13px}.rp-combo input:focus{border-color:var(--accent);outline:none}.rp-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite rp-spin;position:absolute;top:9px;right:10px}@keyframes rp-spin{to{transform:rotate(360deg)}}.rp-results{z-index:5;background:var(--bg);border:1px solid var(--border);border-radius:10px;max-height:320px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0000001f}.rp-result{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:6px 8px;display:flex}.rp-result.active{background:var(--sidebar-hover)}.rp-result-text{flex-direction:column;flex:auto;min-width:0;display:flex}.rp-result-name{font-size:13px;font-weight:500}.rp-result-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rp-already{color:var(--muted);margin-left:6px;font-size:11px;font-weight:400}.rp-picked{border:1px solid var(--accent);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.rp-picked-head{align-items:center;gap:10px;display:flex}.rp-picked-label,.rp-summary-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px}.rp-picked-roles{flex-wrap:wrap;gap:8px 12px;display:flex}.rp-check{cursor:pointer;align-items:center;gap:5px;display:inline-flex}.rp-picked-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.rp-hint-small{color:var(--muted);font-size:11px}.rp-resolve{color:var(--muted);font-size:12px}.roles-detail{border-left:1px solid var(--border);max-height:62vh;padding-left:18px;overflow-y:auto}.rp-empty-detail{color:var(--text);padding-top:30px;font-size:13px;line-height:1.5}.rp-detail{flex-direction:column;gap:12px;display:flex}.rp-detail-head{align-items:center;gap:12px;display:flex}.rp-detail-name{font-size:16px;font-weight:600}.rp-field{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.rp-field-error{color:var(--danger);font-size:12px}.rp-summary ul{margin:4px 0 0;padding-left:18px;font-size:13px}.rp-notice{background:#fffaeb;border:1px solid #fedf89;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;font-size:12px;display:flex}.rp-group{border:1px solid var(--border);border-radius:10px;margin:0;padding:6px 10px 8px}.rp-group legend{padding:0 4px;font-size:12px;font-weight:600}.rp-group-hint{color:var(--muted);font-size:11px;font-weight:400;display:block}.rp-role-row{cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 2px;font-size:13px;display:flex}.rp-role-row.child{width:33%;min-width:140px;padding-left:24px;display:inline-flex}.rp-role-row.inherited{opacity:.75}.rp-role-desc{color:var(--muted);flex-basis:100%;padding-left:22px;font-size:11px}.rp-role-includes{color:var(--muted);font-size:11px}.rc-through{padding:4px 2px 0 24px}.rp-via{color:var(--muted);font-size:11px;font-style:italic}.role-lvl{color:var(--muted);font-size:11px}.role-locked{font-size:11px}.rc-head{justify-content:space-between;align-items:center;display:flex}.rc-tree,.rc-tree ul{margin:0;padding:0;list-style:none}.rc-node{border-radius:8px;align-items:center;gap:2px;display:flex}.rc-node.selected{background:var(--sidebar-hover)}.rc-twisty{width:18px;color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.rc-node-main{cursor:pointer;color:var(--text);font:inherit;text-align:left;background:0 0;border:none;flex:auto;align-items:center;gap:6px;padding:5px 4px;display:flex}.rc-badge{color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:0 6px;font-size:10px}.rc-count{color:var(--muted);margin-left:auto;font-size:11px}.rc-editor{border-left:1px solid var(--border);flex-direction:column;gap:12px;max-height:62vh;padding-left:18px;display:flex;overflow-y:auto}.rc-title{align-items:center;gap:8px;display:flex}.rc-title .rp-tag{padding:2px 10px;font-size:14px}.rc-desc{color:var(--muted);margin:0;font-size:13px}.rc-includes{flex-direction:column;display:flex}.rc-actions{justify-content:flex-end;gap:8px;display:flex}.role-holders{flex-wrap:wrap;gap:5px;margin-top:4px;display:flex}.role-holder{border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:6px;padding:1px 8px;font-size:12px}.role-holder.indirect{color:var(--muted);border-style:dashed}@media (width<=760px){.roles-body{grid-template-columns:1fr}.roles-detail,.rc-editor{border-left:none;padding-left:0}}.catalog-modal{max-width:980px}.catalog-body{grid-template-columns:1fr 1fr;gap:18px;display:grid}.cat-item{border:1px solid var(--border);background:var(--bg);border-radius:8px;flex-direction:column;margin-bottom:6px;padding:7px 10px;display:flex}.cat-name{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:600}.cat-desc{color:var(--muted);margin-top:2px;font-size:12px}.cat-subhead{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:12px 0 6px;font-size:11px}.cat-meta{color:var(--muted);gap:3px;margin-top:8px;font-size:12px;display:grid}.cat-meta b{color:var(--text)}.cat-err{color:#b42318;margin-top:6px;font-size:12px}@media (width<=720px){.catalog-body{grid-template-columns:1fr}}.topbar-actions{margin-left:auto;position:relative}.menu-trigger{font-size:20px;line-height:1}.menu{background:var(--bg);border:1px solid var(--border);z-index:60;border-radius:12px;flex-direction:column;gap:2px;min-width:208px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #00000029}.menu-item{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;display:flex}.menu-item:hover{background:var(--sidebar-hover)}.menu-ic{text-align:center;width:18px;color:var(--muted);font-size:14px}.menu-sep{background:var(--border);height:1px;margin:4px 2px}.menu-wide{width:340px;max-width:calc(100vw - 24px)}.menu-notice{border-top:1px solid var(--border);margin-top:4px;padding:8px 10px 6px}.privacy-notice p{color:var(--text);margin:0 0 8px;font-size:12.5px;line-height:1.5}.privacy-notice .privacy-off{color:var(--muted)}.modal-note{color:var(--muted);margin:16px 0 10px;font-size:13px}.privacy{border:1px solid var(--border);border-radius:10px;padding:8px 12px}.privacy>summary{cursor:pointer;font-size:13px;font-weight:500}.privacy .privacy-notice{margin-top:8px}.flow-modal{max-width:1040px}.flow-turnsel{color:var(--muted);align-items:center;gap:8px;margin:4px 0 14px;font-size:13px;display:flex}.flow-turnsel select{border:1px solid var(--border);background:var(--bg);max-width:460px;color:var(--text);border-radius:8px;flex:1;padding:6px 8px;font-size:13px}.flow{flex-wrap:wrap;align-items:stretch;gap:6px;display:flex}.flow-node{border:1px solid var(--border);border-top:3px solid var(--muted);background:var(--bg);border-radius:10px;flex:170px;min-width:160px;padding:10px 12px}.fn-user{border-top-color:#6b6b6b}.fn-wm{border-top-color:#2563eb}.fn-agent{border-top-color:#7c3aed}.fn-skills{border-top-color:var(--accent)}.fn-response{border-top-color:#0a7d3c}.fn-title{font-size:13px;font-weight:600}.fn-sub{color:var(--muted);word-break:break-word;margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.fn-facts{gap:4px;margin-top:8px;display:grid}.fn-fact{grid-template-columns:72px 1fr;align-items:baseline;gap:6px;font-size:11.5px;display:grid}.fn-k{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.fn-v{color:var(--text);word-break:break-word}.fn-sql{margin-top:8px;font-size:11px}.fn-sql summary{cursor:pointer;color:var(--muted)}.fn-sql pre{color:#f4f4f4;white-space:pre-wrap;word-break:break-word;background:#0d0d0d;border-radius:8px;max-height:180px;margin:6px 0 0;padding:8px;font-size:11px;overflow-y:auto}.flow-arrow{color:var(--muted);align-self:center;padding:0 2px;font-size:18px}.flow-timeline{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.ft-seg{border:1px solid var(--border);color:var(--text);font-variant-numeric:tabular-nums;background:var(--sidebar-hover);border-radius:6px;padding:3px 8px;font-size:11px}.ft-total{font-weight:600}.flow-steps{flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;display:flex}.flow-step{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:2px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.fs-completed{color:#0a7d3c;border-color:#b6e2c6}.fs-failed{color:#b42318;border-color:#f3c0ba}@media (width<=720px){.flow{flex-direction:column}.flow-arrow{transform:rotate(90deg)}}.debug-modal{max-width:1040px}.dbg-bar{flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 12px;display:flex}.dbg-tabs{flex-wrap:wrap;gap:4px;display:flex}.dbg-tab{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:999px;padding:6px 11px;font-size:12.5px}.dbg-tab.active{background:var(--text);color:var(--bg);border-color:var(--text)}.dbg-turnsel{border:1px solid var(--border);background:var(--bg);max-width:260px;color:var(--text);border-radius:8px;margin-left:auto;padding:6px 8px;font-size:12.5px}.dbg-body{max-height:62vh;overflow-y:auto}.dbg-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.dbg-card{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:12px}.dbg-kv{grid-template-columns:92px 1fr;align-items:baseline;gap:8px;padding:3px 0;font-size:12px;display:grid}.dbg-k{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.dbg-v{color:var(--text);word-break:break-word;font-variant-numeric:tabular-nums}.dbg-timings{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.dbg-chip{border:1px solid var(--border);color:var(--text);background:var(--sidebar-hover);font-variant-numeric:tabular-nums;border-radius:6px;padding:2px 7px;font-size:11px}.dbg-events{gap:6px;display:grid}.dbg-ev{border:1px solid var(--border);background:var(--bg);border-radius:8px;font-size:12px}.dbg-ev>summary{cursor:pointer;align-items:center;gap:8px;padding:7px 10px;list-style:none;display:flex}.dbg-ev>summary::-webkit-details-marker{display:none}.dbg-ev-seq{color:var(--muted);font-variant-numeric:tabular-nums;min-width:34px}.dbg-ev-type{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.dbg-ev-preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.dbg-ev pre{border-top:1px solid var(--border);white-space:pre-wrap;word-break:break-word;max-height:240px;margin:0;padding:8px 10px;font-size:11px;overflow-y:auto}.dbg-net{gap:8px;display:grid}.dbg-net-row{border:1px solid var(--border);background:var(--bg);border-radius:8px;padding:8px 10px}.dbg-net-head{justify-content:space-between;gap:8px;font-size:12px;display:flex}.dbg-net-path{text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.dbg-net-ms{color:var(--text);font-variant-numeric:tabular-nums}.dbg-net-track{background:var(--sidebar-hover);border-radius:3px;height:6px;margin:6px 0 4px;position:relative}.dbg-net-bar{background:var(--accent);border-radius:3px;min-width:2px;height:6px;position:absolute;top:0}.dbg-net-meta{color:var(--muted);font-variant-numeric:tabular-nums;gap:12px;font-size:11px;display:flex}.dbg-sql,.dbg-json{color:#f4f4f4;white-space:pre-wrap;word-break:break-word;background:#0d0d0d;border-radius:8px;max-height:260px;margin:6px 0 12px;padding:10px;font-size:11.5px;overflow-y:auto}.dbg-tools{flex-wrap:wrap;gap:5px;margin:6px 0;display:flex}.dbg-tool{border:1px solid var(--border);color:var(--text);border-radius:6px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.dbg-sub{color:var(--muted);margin-top:6px;font-size:11px}.dbg-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:4px;display:inline-block}.dbg-dot.ok{background:#0a7d3c}.dbg-dot.bad{background:#b42318}.dbg-dot.off{background:var(--muted)}.dash-toggle{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:8px;align-items:center;gap:6px;margin-right:6px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.dash-toggle:hover{background:var(--sidebar-hover)}.cache-chip{border:1px solid var(--border);max-width:260px;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;border-radius:999px;align-items:center;gap:6px;margin-right:8px;padding:3px 10px;font-size:12px;line-height:1.4;display:inline-flex;overflow:hidden}.cache-chip:before{content:"";background:var(--muted);border-radius:50%;flex-shrink:0;width:6px;height:6px}.cache-chip.cached{color:var(--text)}.cache-chip.cached:before{background:var(--accent)}@media (width<=720px){.cache-chip{max-width:120px}}.fabtok-status{color:var(--muted);align-items:center;gap:8px;margin:12px 0;font-size:13px;display:flex}.fabtok-status.active{color:var(--text)}.fabtok-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:8px;height:8px}.fabtok-status.active .fabtok-dot{background:var(--accent)}.fabtok-input{box-sizing:border-box;width:100%;font-family:var(--mono,monospace);border:1px solid var(--border);background:var(--sidebar-hover);color:var(--text);resize:vertical;border-radius:8px;padding:10px;font-size:12px;line-height:1.4}.fabtok-actions{gap:8px;margin-top:12px;display:flex}.fabtok-save{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600}.fabtok-save:disabled{opacity:.5;cursor:default}.fabtok-clear{color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:13px}.fabtok-clear:disabled{opacity:.5;cursor:default}.notify-card{border:1px solid var(--border);background:var(--bg);border-radius:12px;max-width:560px;margin:14px 0;padding:14px 16px}.notify-head{align-items:center;gap:10px;margin-bottom:8px;display:flex}.notify-badge{text-transform:uppercase;letter-spacing:.04em;color:#3538cd;background:#eef2ff;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:600}.notify-title{margin:0;font-size:14px;font-weight:600}.notify-lead{margin:0 0 8px;font-size:14px;font-weight:600}.notify-label{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:10px 0 4px;font-size:11px;font-weight:700}.notify-muted{color:var(--muted);margin:6px 0 0;font-size:12px}.notify-notice{color:#026aa2;background:#f0f9ff;border:1px solid #b9e6fe;border-radius:8px;padding:8px 12px;font-size:13px}.notify-notice.warning{color:#93370d;background:#fffaeb;border-color:#fedf89}.notify-list{border:1px solid var(--border);border-radius:8px;max-height:160px;margin:0;padding:6px 10px 6px 28px;font-size:13px;line-height:1.6;overflow-y:auto}.notify-list.notify-pick{padding-left:10px;list-style:none}.notify-pickrow{cursor:pointer;align-items:baseline;gap:8px;display:flex}.notify-pickrow.off .notify-who{color:var(--muted);text-decoration:line-through}.notify-who{word-break:break-all}.notify-meta{color:var(--muted);font-size:12px}.remind-hint{color:#4b3a8f;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px;max-width:560px;margin:10px 0 0;padding:8px 12px;font-size:13px}.notify-msg{border-left:3px solid #ddd6fe;margin:0;padding:4px 10px;font-size:13px}.notify-check{align-items:center;gap:8px;margin-top:12px;font-size:13px;display:flex}.notify-error{color:var(--danger);background:#fdecee;border:1px solid #f5c6cd;border-radius:8px;margin-top:10px;padding:8px 12px;font-size:13px}.notify-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.notify-btn{border:1px solid var(--border);color:var(--text);background:0 0;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:500}.notify-btn:hover:not(:disabled){background:var(--sidebar-hover)}.notify-btn.primary{background:var(--text);border-color:var(--text);color:#fff}.notify-btn.primary:hover:not(:disabled){background:#000}.notify-btn:disabled{opacity:.5;cursor:not-allowed}.notify-result{border:1px solid var(--border);border-radius:8px;padding:10px 12px}.notify-result.success{background:#f0fdf4;border-color:#abefc6}.notify-result.warning{background:#fffaeb;border-color:#fedf89}.notify-result.error{background:#fdecee;border-color:#f5c6cd}.notify-result-title{font-size:14px;font-weight:700}.notify-result-summary{margin:4px 0 0;font-size:13px}.notify-caution{color:#93370d;margin:6px 0 0;font-size:12px;font-weight:600}.notify-result .notify-list{background:var(--bg);margin-top:8px}.notify-pill{border-radius:999px;padding:0 7px;font-size:11px;font-weight:600;display:inline-block}.notify-pill.sent{color:#067647;background:#dcfae6}.notify-pill.failed{color:#b42318;background:#fee4e2}.notify-reason{color:var(--muted)}.notify-ref{word-break:break-all}.om-modal{width:96vw;max-width:min(1400px,96vw)}.om-how{margin:0 0 8px;font-size:13px}.om-counts,.om-bar{flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0;display:flex}.om-spacer{flex:1}.om-bar .btn.active{font-weight:600;text-decoration:underline}.om-scroll{max-height:60vh;overflow:auto}.om-table{border-collapse:collapse;width:100%;font-size:13px}.om-table th,.om-table td{text-align:left;vertical-align:top;border-bottom:1px solid #80808040;padding:4px 6px}.om-table input,.om-table select{width:100%;min-width:110px}.om-id{font-family:monospace;font-size:11px}.om-inherited{opacity:.65;font-style:italic}.om-err{background:#c8282814}.om-warn{background:#dca00014}.om-inactive>td:not(:nth-child(6)){opacity:.55}.om-f-error{color:#b42318}.om-f-warning{color:#8a5a00}.om-f-info{opacity:.75}.om-row-between{justify-content:space-between;align-items:center;display:flex}.om-actions{white-space:nowrap}.om-owners-col{min-width:240px}.om-owners{flex-direction:column;gap:4px;margin:0 0 4px;padding:0;list-style:none;display:flex}.om-owner{align-items:center;gap:6px;min-width:0;display:flex}.om-owner .icon-btn{flex:none;padding:2px 6px}.om-owners-cell .rp-combo input{padding:5px 8px}.om-owners-cell .rp-results{min-width:320px}.om-owners-cell .rp-resolve{margin-top:2px}.ent-card{border:1px solid var(--border);background:var(--bg);border-radius:12px;max-width:100%;margin:14px 0;padding:14px 16px}.main{container-type:inline-size}.transcript .ent-card:not(.embedded){--ent-wide:max(100%, min(1280px, calc(100cqw - 112px)));width:var(--ent-wide);max-width:none;margin-left:calc((100% - var(--ent-wide)) / 2)}.ent-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex}.ent-head .notify-title{flex:auto}.ent-submitted{color:#3538cd;background:#eef2ff}.ent-ready{color:#93370d;background:#fffaeb}.ent-confirmed{color:#067647;background:#dcfae6}.ent-failed{color:#b42318;background:#fee4e2}.ent-cancelled{background:var(--user-bubble);color:var(--muted)}.ent-working{color:var(--muted);align-items:center;gap:10px;margin:8px 0;font-size:13px;display:flex}.ent-scroll{border:1px solid var(--border);border-radius:8px;margin-top:10px;position:relative;overflow-x:auto}.ent-table{border-collapse:collapse;width:100%;font-size:13px}.ent-table th,.ent-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere;padding:6px 8px}.ent-table thead th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap;background:var(--sidebar);font-size:11px}.ent-table tbody tr:last-child th,.ent-table tbody tr:last-child td{border-bottom:0}.ent-table tbody th{color:var(--muted);font-weight:500}.ent-table .num{text-align:right;white-space:nowrap}.ent-table tr.editing{background:#f0f9ff}.ent-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ent-edit{margin-top:12px}.ent-edit fieldset{border:1px solid var(--border);border-radius:8px;min-width:0;margin:0;padding:10px 12px}.ent-edit legend{padding:0 6px;font-size:13px;font-weight:600}.ent-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 14px;display:grid}.ent-field{flex-direction:column;gap:3px;min-width:0;display:flex}.ent-field.wide{grid-column:1/-1}.ent-field label{color:var(--muted);font-size:12px;font-weight:600}.ent-field input,.ent-field textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.ent-field input[aria-invalid=true],.ent-field textarea[aria-invalid=true]{border-color:var(--danger)}.ent-field-error{color:var(--danger);font-size:12px}.ent-card.embedded{border:0;border-top:1px solid var(--border);border-radius:0;margin:10px 0 0;padding:12px 0 0}.ent-steps{margin:0 0 12px}.ent-steps ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.ent-step{display:flex}.ent-step-btn{border:1px solid var(--border);background:var(--sidebar);width:100%;height:100%;color:var(--text);font:inherit;text-align:left;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}button.ent-step-btn{cursor:pointer}button.ent-step-btn:hover{border-color:var(--accent)}.ent-step.current .ent-step-btn{background:#eff8ff;border-color:#2e90fa}.ent-step.done .ent-step-btn{background:#ecfdf3;border-color:#75e0a7}.ent-step-icon{background:var(--bg);border:1px solid var(--border);border-radius:7px;flex:none;place-items:center;width:26px;height:26px;font-size:13px;display:inline-grid}.ent-step.current .ent-step-icon{color:#fff;background:#2e90fa;border-color:#2e90fa}.ent-step.done .ent-step-icon{background:var(--accent);border-color:var(--accent);color:#fff}.ent-step-text{flex-direction:column;min-width:0;display:flex}.ent-step-n{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:10px}.ent-step-label{font-size:13px;font-weight:600;line-height:1.25}.ent-steps-bar{background:var(--border);border-radius:3px;height:3px;margin-top:8px;overflow:hidden}.ent-steps-bar span{background:linear-gradient(90deg,#2e90fa,#7a5af8);height:100%;transition:width .3s;display:block}.ent-flow-body{flex-direction:column;gap:8px;display:flex}.ent-flow-title{margin:0;font-size:14px;font-weight:600}.ent-flow-body>.notify-muted{margin:0}.ent-search{border:1px solid var(--border);background:var(--bg);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;display:flex}.ent-search:focus-within{border-color:#2e90fa;box-shadow:0 0 0 2px #d1e9ff}.ent-search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;outline:0;flex:auto;font-size:13px}.ent-options{flex-direction:column;gap:6px;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ent-option{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;padding:9px 12px;font-size:13px;display:flex}.ent-option:hover{border-color:#2e90fa}.ent-option.selected{background:#f5faff;border-color:#2e90fa}.ent-option.full{opacity:.55;cursor:not-allowed}.ent-option input[type=checkbox]{margin-top:3px}.ent-option-main{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.ent-option-title{flex-wrap:wrap;align-items:center;gap:6px;font-weight:600;display:flex}.ent-option-side{color:var(--muted);white-space:nowrap;flex:none;font-size:12px}.ent-contract-title{overflow-wrap:anywhere}.ent-option .notify-muted{margin:0;font-size:12px}.ent-tag{color:#93370d;background:#fef0c7;border-radius:999px;padding:0 7px;font-size:11px;font-weight:600}.ent-table td:nth-child(2){overflow-wrap:break-word;min-width:180px}.ent-table td:nth-child(3){overflow-wrap:break-word;min-width:90px}.ent-table td:nth-child(7),.ent-table td:nth-child(8){white-space:nowrap}.ent-flow-foot{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding-top:8px;display:flex}.ent-flow-foot .notify-muted{margin-left:auto;font-size:12px}@media (width<=720px){.ent-steps ol{grid-template-columns:repeat(2,minmax(0,1fr))}}.om-period{flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 8px;font-size:13px;display:flex}.om-period select,.om-period input[type=date]{font:inherit}.om-period-shown{opacity:.7}.om-po-col{min-width:250px}.om-po-chosen{align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.om-po-chosen .icon-btn{padding:2px 6px}.om-po-picker .rp-combo input{padding:5px 8px}.om-po-results{min-width:420px}.om-po-details{margin-top:4px;font-size:12px}.om-po-details dl{grid-template-columns:auto 1fr;gap:1px 8px;margin:0;display:grid}.om-po-details dt{opacity:.7}.om-po-details dd{overflow-wrap:anywhere;margin:0}.om-po-pair{display:contents}.om-po-more summary{cursor:pointer;opacity:.8}.om-po-line,.om-po-details-missing{font-size:12px}
