:root{--navy: #142a4d;--navy-dark: #0c1d39;--navy-light: #1f3a66;--coral: #ff6a3d;--teal: #15b7a6;--teal-dk: #0a8a7d;--ink: #1a2230;--ink-muted: #5a657a;--rule: #e6e8ee;--rule-strong: #ced3df;--cream: #f6f7fb;--paper: #ffffff;--code-bg: #0e1830;--code-text: #d7defc;--code-key: #8fb8ff;--code-str: #f9a78f;--code-num: #ffd17a;--code-muted: #687899;--good: #1e8a5b;--warn: #c75b1c;--shadow: 0 1px 2px rgba(20, 42, 77, .04), 0 12px 32px rgba(20, 42, 77, .08);--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;line-height:1.55}button{font-family:inherit;cursor:pointer}.shell{display:grid;grid-template-rows:auto 1fr;height:100vh;max-width:1440px;margin:0 auto;background:var(--paper);box-shadow:var(--shadow)}.topbar{background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:14px 28px;border-bottom:3px solid var(--coral)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;border-radius:9px;background:#fff;color:var(--navy);display:grid;place-items:center;font-family:var(--font-display);font-weight:700;font-size:17px}.brand-name{font-family:var(--font-display);font-weight:600;font-size:19px;letter-spacing:-.005em}.brand-sub{font-size:12px;color:#ffffffa6;margin-left:2px}.demo-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#ffffff14;border:1px solid rgba(255,255,255,.15);padding:5px 10px;border-radius:999px;color:#ffffffd9}.demo-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--teal);box-shadow:0 0 8px var(--teal)}.main{display:grid;grid-template-columns:1fr 360px;min-height:0;background:var(--cream)}@media (max-width: 900px){.main{grid-template-columns:1fr}.sidebar{display:none}}.chat-pane{display:grid;grid-template-rows:1fr auto;min-height:0}.messages{overflow-y:auto;padding:28px 32px 12px;scroll-behavior:smooth}.messages-inner{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:22px;padding-bottom:14px}.msg{display:flex;gap:12px;align-items:flex-start}.msg-avatar{width:32px;height:32px;border-radius:9px;flex-shrink:0;display:grid;place-items:center;font-size:12px;font-weight:700}.msg-avatar-user{background:var(--cream);color:var(--navy);border:1px solid var(--rule-strong)}.msg-avatar-bot{background:var(--navy);color:#fff}.msg-avatar-bot:before{content:"AI"}.msg-avatar-user:before{content:"You";font-size:10px}.msg-body{flex:1;min-width:0}.msg-name{font-size:12px;font-weight:700;color:var(--ink-muted);letter-spacing:.02em;margin-bottom:4px}.msg-text{font-size:15px;line-height:1.6;white-space:pre-wrap;color:var(--ink)}.msg-text strong{color:var(--ink);font-weight:600}.msg-text code{font-family:var(--font-mono);font-size:13px;background:var(--cream);padding:1px 6px;border-radius:5px;color:var(--navy)}.msg-user .msg-text{background:var(--navy);color:#fff;padding:10px 14px;border-radius:14px 14px 4px;display:inline-block;max-width:90%}.msg-image-wrap{position:relative;display:inline-block;margin-bottom:8px;border-radius:14px;overflow:hidden;background:var(--cream);border:1px solid var(--rule-strong);box-shadow:var(--shadow)}.msg-image{display:block;width:200px;height:200px;object-fit:cover}.msg-image-meta{position:absolute;bottom:8px;left:8px;background:#0000008c;color:#fff;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.toolcalls{display:flex;flex-direction:column;gap:8px;margin:8px 0 12px}.toolcall{border:1px solid var(--rule);border-radius:10px;background:var(--paper);overflow:hidden;font-family:var(--font-mono);font-size:12.5px}.toolcall.public{border-left:3px solid var(--teal)}.toolcall.private{border-left:3px solid var(--coral)}.toolcall-head{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--cream);cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--rule)}.toolcall.public .toolcall-head{background:#15b7a60f}.toolcall.private .toolcall-head{background:#ff6a3d0f}.toolcall-icon{width:18px;height:18px;flex-shrink:0}.toolcall-icon-public{color:var(--teal-dk)}.toolcall-icon-private{color:var(--coral)}.toolcall-name{font-weight:600;color:var(--ink);flex:1;font-size:13px}.toolcall-name .arg-summary{color:var(--ink-muted);font-weight:400;margin-left:6px}.toolcall-meta{font-size:11px;color:var(--ink-muted);font-family:var(--font-body);font-weight:500;letter-spacing:.02em;white-space:nowrap}.toolcall-meta .latency{color:var(--ink);font-weight:600}.toolcall-meta .scope{font-family:var(--font-body);text-transform:uppercase;font-size:10px;letter-spacing:.08em;padding:2px 6px;border-radius:4px;margin-left:6px;font-weight:700}.toolcall.public .scope{background:#15b7a626;color:var(--teal-dk)}.toolcall.private .scope{background:#ff6a3d1f;color:var(--coral)}.toolcall-toggle{font-size:14px;color:var(--ink-muted);font-family:var(--font-body);margin-left:4px}.toolcall[data-open=true] .toolcall-toggle{transform:rotate(180deg);transition:transform .15s}.toolcall[data-open=false] .toolcall-toggle{transition:transform .15s}.toolcall-body{background:var(--code-bg);color:var(--code-text);padding:12px 14px;font-size:12px;line-height:1.55;overflow-x:auto}.toolcall-body .label{font-family:var(--font-body);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--code-muted);margin-bottom:4px;display:block}.toolcall-body pre{margin:0 0 10px;white-space:pre;font-family:var(--font-mono)}.toolcall-body pre:last-child{margin-bottom:0}.tc-key{color:var(--code-key)}.tc-str{color:var(--code-str)}.tc-num{color:var(--code-num)}.risks{margin:12px 0 4px;display:grid;gap:6px}.risk-row{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:12px;padding:10px 12px;background:var(--paper);border:1px solid var(--rule);border-radius:8px;font-size:13.5px}.risk-dot{width:9px;height:9px;border-radius:50%;justify-self:center}.risk-dot.watch{background:var(--warn)}.risk-dot.common{background:var(--coral)}.risk-dot.monitor{background:var(--teal)}.risk-title{font-weight:600;color:var(--ink)}.risk-incidence{font-size:12.5px;color:var(--ink-muted);margin-left:6px;font-weight:400}.risk-claim{font-family:var(--font-mono);font-size:12.5px;color:var(--coral);font-weight:600;white-space:nowrap}.risk-claim:before{content:"🔒";margin-right:4px;font-size:10px}.products{margin:14px 0 4px;display:grid;gap:10px}.product{position:relative;border:1px solid var(--rule);border-radius:12px;background:var(--paper);padding:16px 18px}.product.recommended{border-color:var(--navy);background:linear-gradient(180deg,#fff,#f7f9ff);box-shadow:0 0 0 3px #142a4d0f}.product-badge{position:absolute;top:-10px;left:14px;background:var(--navy);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px}.product-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px}.product-head h4{font-family:var(--font-display);font-size:18px;font-weight:600;margin:0;color:var(--ink)}.product-head .price{font-family:var(--font-display);font-size:24px;font-weight:600;color:var(--ink);white-space:nowrap}.product-head .price small{font-family:var(--font-body);font-size:12px;font-weight:500;color:var(--ink-muted)}.product .tagline{font-size:12.5px;color:var(--ink-muted);margin:0 0 10px}.product .limit{font-size:13px;margin:0 0 8px;color:var(--ink)}.product .limit strong{color:var(--ink);font-weight:600}.product .reason{font-size:12.5px;color:var(--navy);background:#142a4d0d;padding:8px 10px;border-radius:7px;margin:8px 0 10px;border-left:2px solid var(--navy)}.product ul{margin:0;padding-left:18px;font-size:12.5px;color:var(--ink-muted)}.product ul li+li{margin-top:3px}.composer{border-top:1px solid var(--rule);background:var(--paper);padding:16px 32px 22px}.composer-inner{max-width:760px;margin:0 auto}.quick-replies{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.quick-reply{background:var(--paper);border:1px solid var(--rule-strong);color:var(--navy);border-radius:999px;padding:9px 16px;font-size:13.5px;font-weight:500;transition:background .12s,border-color .12s,transform .08s}.quick-reply:hover{background:var(--cream);border-color:var(--navy)}.quick-reply:active{transform:translateY(1px)}.upload-block{margin-bottom:14px}.upload-area{border:2px dashed var(--rule-strong);background:var(--cream);border-radius:14px;padding:26px 20px;text-align:center;margin-bottom:14px}.upload-area-icon{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--navy);color:#fff;margin-bottom:10px}.upload-area-icon svg{width:22px;height:22px}.upload-area strong{display:block;font-size:14.5px;color:var(--ink);font-weight:600;margin-bottom:2px}.upload-area small{color:var(--ink-muted);font-size:12.5px}.upload-divider{display:flex;align-items:center;gap:12px;color:var(--ink-muted);font-size:12.5px;font-weight:500;margin:0 0 12px}.upload-divider:before,.upload-divider:after{content:"";flex:1;height:1px;background:var(--rule)}.upload-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.upload-card{border:1px solid var(--rule);background:var(--paper);border-radius:12px;padding:0;overflow:hidden;cursor:pointer;text-align:center;font-family:inherit;transition:border-color .12s,transform .08s,box-shadow .12s}.upload-card:hover{border-color:var(--navy);box-shadow:0 4px 16px #142a4d14}.upload-card:active{transform:translateY(1px)}.upload-card img{display:block;width:100%;height:140px;object-fit:cover;border-bottom:1px solid var(--rule)}.upload-card-caption{display:block;padding:9px 10px;font-size:12.5px;font-weight:600;color:var(--ink);letter-spacing:.01em}.fake-input{display:flex;gap:8px;align-items:center;background:var(--cream);border:1px solid var(--rule-strong);border-radius:12px;padding:4px 4px 4px 14px}.fake-input input{flex:1;border:0;background:transparent;font-size:14.5px;font-family:inherit;color:var(--ink);padding:10px 0;outline:none}.fake-input input::placeholder{color:var(--ink-muted)}.fake-input button{background:var(--navy);color:#fff;border:0;border-radius:9px;padding:9px 16px;font-size:13.5px;font-weight:600}.fake-input button:disabled{background:var(--rule-strong);cursor:not-allowed}.composer-note{font-size:11px;color:var(--ink-muted);margin:10px 4px 0;text-align:center}.sidebar{background:var(--paper);border-left:1px solid var(--rule);padding:28px 24px;overflow-y:auto}.sb-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:6px}.sb-title{font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.005em;margin:0 0 14px;color:var(--ink)}.sb-text{font-size:13px;color:var(--ink-muted);line-height:1.55;margin:0 0 18px}.sb-diagram{display:grid;gap:10px;margin-bottom:18px}.sb-node{border:1px solid var(--rule);border-radius:10px;padding:12px 14px;background:var(--paper)}.sb-node strong{font-size:13px;font-weight:600;color:var(--ink);display:block;margin-bottom:3px}.sb-node span{font-size:11.5px;color:var(--ink-muted)}.sb-node.llm{background:var(--navy);color:#fff}.sb-node.llm strong{color:#fff}.sb-node.llm span{color:#ffffffb3}.sb-node.public{border-left:3px solid var(--teal)}.sb-node.private{border-left:3px solid var(--coral);background:#ff6a3d0a}.sb-arrow{display:flex;justify-content:center;color:var(--ink-muted);font-size:14px}.sb-stats{border-top:1px solid var(--rule);padding-top:16px;font-size:12px;color:var(--ink-muted);line-height:1.6}.sb-stats .stat{display:flex;justify-content:space-between;padding:5px 0}.sb-stats .stat strong{color:var(--ink);font-weight:600}@media (max-width: 600px){.topbar{padding:12px 16px}.brand-name{font-size:17px}.brand-sub{display:none}.messages{padding:18px 16px 8px}.composer{padding:14px 16px 18px}.product-head h4{font-size:16px}.product-head .price{font-size:20px}}
