:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#0f172a;background-color:#0b1020;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(1200px 800px at 20% 10%,rgba(99,102,241,.25),transparent 60%),radial-gradient(1000px 700px at 80% 20%,rgba(16,185,129,.18),transparent 55%),#0b1020}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.appShell{min-height:100vh;padding:20px;box-sizing:border-box}.appHeader{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:16px;background:#ffffff14;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.appTitle__name{font-weight:700;letter-spacing:.2px;color:#ffffffeb}.appTitle__sub{font-size:12px;color:#ffffffa6}.appHeader__right{display:flex;align-items:center;gap:10px}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;color:#ffffffd9;background:#ffffff1f;border:1px solid rgba(255,255,255,.18)}.badge--soft{color:#ffffffe6;background:#6366f12e;border-color:#6366f159}.secondaryBtn{border-radius:10px;padding:8px 10px;border:1px solid rgba(255,255,255,.18);background:#ffffff14;color:#ffffffe6}.secondaryBtn:hover{border-color:#ffffff4d}.appMain{max-width:1280px;margin:14px auto 0;display:grid;grid-template-columns:1fr 1.2fr;gap:14px}.panel{border-radius:18px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;display:flex;flex-direction:column;min-height:560px}.panelHeader{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12)}.panelHeader__title{font-weight:650;color:#ffffffe0}.panelHeader__meta{font-size:12px;color:#ffffff9e}.chatBody{padding:14px;display:flex;flex-direction:column;gap:10px;overflow:auto;flex:1}.msgRow{display:flex;justify-content:flex-start}.msgRow--user{justify-content:flex-end}.msgBubble{max-width:92%;padding:10px 12px;border-radius:14px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffe6}.msgBubble--user{background:#6366f133;border-color:#6366f159}.msgText{margin:0;white-space:pre-wrap}.msgHint{margin-top:10px;font-size:12px;color:#ffffffa6}.chatFooter{padding:12px 14px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:10px}.promptChips{display:flex;flex-wrap:wrap;gap:8px}.chip{border-radius:999px;padding:7px 10px;font-size:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#ffffffdb}.chip:hover{border-color:#ffffff47}.inputRow{display:flex;gap:10px}.textInput{flex:1;border-radius:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.16);background:#050a148c;color:#ffffffeb;outline:none}.textInput:focus{border-color:#6366f1a6;box-shadow:0 0 0 3px #6366f12e}.primaryBtn{border-radius:12px;padding:10px 14px;border:1px solid rgba(99,102,241,.5);background:#6366f159;color:#fffffff2}.primaryBtn:disabled,.chip:disabled,.secondaryBtn:disabled{opacity:.6;cursor:not-allowed}.canvasBody{padding:14px;overflow:auto;flex:1}.canvasGrid{display:grid;gap:12px}.canvasItem{display:flex;flex-direction:column;gap:10px}.canvasItem__meta{display:flex;align-items:center;justify-content:space-between}.emptyState{padding:28px;border-radius:16px;border:1px dashed rgba(255,255,255,.22);background:#ffffff0a}.emptyState__title{font-weight:700;color:#ffffffe6}.emptyState__desc{margin-top:8px;color:#ffffffad;font-size:13px}.jsonPanel{border-top:1px solid rgba(255,255,255,.12);padding:12px 14px}.jsonPanel__title{font-size:12px;color:#ffffffb3;margin-bottom:10px}.jsonPanel__pre{margin:0;border-radius:14px;padding:12px;background:#050a14b3;border:1px solid rgba(255,255,255,.12);overflow:auto;color:#ffffffe0;font-size:12px}.errorBox{padding:12px;border-radius:14px;border:1px solid rgba(248,113,113,.45);background:#f871711f;color:#ffffffe6}.card{border-radius:16px;padding:14px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:#ffffffe6}.card--elevated{box-shadow:0 18px 45px #00000059}.cardHeader{margin-bottom:12px}.cardHeader--row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cardTitle{font-weight:750}.cardSub{font-size:12px;margin-top:4px;color:#ffffffa6}.kpiGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.kpi{border-radius:14px;padding:10px;border:1px solid rgba(255,255,255,.12);background:#050a1459}.kpiLabel{font-size:12px;color:#ffffffa6}.kpiValue{font-size:20px;font-weight:800;margin-top:4px}.delta{margin-top:6px;font-size:12px;color:#ffffffb3}.delta--up{color:#34d399f2}.delta--down{color:#f87171f2}.barChart{height:140px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:end;padding:8px;border-radius:14px;background:#050a1459;border:1px solid rgba(255,255,255,.12)}.barChartItem{display:flex;flex-direction:column;gap:6px;align-items:center}.barChartBar{width:100%;border-radius:10px;background:linear-gradient(180deg,#6366f1f2,#6366f159)}.barChartLabel{font-size:11px;color:#fff9}.field{display:grid;gap:6px;margin-bottom:12px}.fieldLabel{font-size:12px;color:#ffffffa6}.fieldInput{border-radius:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.16);background:#050a1473;color:#ffffffeb}.todoList{display:grid;gap:10px}.todoItem{display:flex;align-items:center;gap:10px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#050a1447}.todoItem--done{opacity:.78}.todoText{line-height:1.35}.tableWrap{overflow:auto;border-radius:14px;border:1px solid rgba(255,255,255,.12)}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.1)}.table th{text-align:left;font-weight:700;color:#ffffffbf;background:#050a1438}.right{text-align:right}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.muted{color:#fff9}.status{display:inline-flex;padding:4px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f}.select{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#ffffffb3}.select select{border-radius:10px;padding:8px 10px;border:1px solid rgba(255,255,255,.16);background:#050a1473;color:#ffffffeb}.actionGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.actionBtn{border-radius:14px;padding:12px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#ffffffeb}.actionBtn--primary{border-color:#6366f180;background:#6366f138}.actionBtn--danger{border-color:#f871718c;background:#f871712e}.callout{margin-top:12px;border-radius:14px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);background:#050a1459;color:#ffffffd9}@media(max-width:1020px){.appMain{grid-template-columns:1fr}.panel{min-height:520px}}
