:root{--text:#334155;--text-h:#1e293b;--text-muted:#64748b;--bg:#fafbfd;--surface:#fff;--surface-raised:#f1f5f9;--border:#e2e8f0;--accent:#0f6fde;--accent-bg:#0f6fde12;--accent-border:#0f6fde4d;--accent-hover:#0b5ab8;--navy:#1e3a5f;--shadow:#0f172a0f 0 4px 12px -2px, #0f172a08 0 1px 3px;--sans:"Inter", system-ui, sans-serif;--mono:"DM Mono", ui-monospace, monospace;font:14px/1.6 var(--sans);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{background-color:#0000;background-image:radial-gradient(at 20%,#0f6fde08 0%,#0000 50%),radial-gradient(at 80% 20%,#1e3a5f08 0%,#0000 40%),radial-gradient(at 60% 80%,#94a3b80a 0%,#0000 50%),linear-gradient(135deg,#fafbfd 0%,#f1f5f9 50%,#fafbfd 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;min-height:100vh;margin:0}#root{min-height:100svh}.ecosystem-bar{background:var(--navy);border-bottom:1px solid #1e3a5fcc;justify-content:space-between;align-items:center;padding:6px 24px;display:flex}.ecosystem-bar a{color:#93c5fd;font:600 11px var(--mono);letter-spacing:.03em;text-decoration:none}.ecosystem-bar a:hover{color:#bfdbfe;text-decoration:underline}.ecosystem-bar .eco-meta{color:#ffffffb3;font:500 11px var(--mono);letter-spacing:.03em}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;box-shadow:0 1px 3px #0f172a0a}.brand{align-items:center;gap:12px;display:flex}.logo{background:var(--accent);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-size:13px;font-weight:800;display:flex}.title{color:var(--text-h);font-size:14px;font-weight:700}.subtitle{color:var(--text-muted);font-size:11px}.meta{color:var(--text-muted);font:500 11px var(--mono)}.context-banner{background:var(--accent-bg);border-bottom:1px solid var(--accent-border);align-items:center;gap:16px;padding:10px 24px;font-size:12px;display:flex}.context-banner .label{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.context-banner .value{color:var(--text-h)}.workspace{padding:24px}.layout{grid-template-columns:280px 1fr;gap:20px;margin-top:16px;display:grid}.context-bar{margin-bottom:16px}.context-bar h2{color:var(--text-h);text-transform:uppercase;letter-spacing:.04em;margin:0 0 10px;font-size:13px;font-weight:700}.context-fields{flex-wrap:wrap;gap:12px;display:flex}.context-fields label{flex-direction:column;flex:1;min-width:160px;display:flex}.context-fields label span{color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:600}.context-fields input{background:var(--surface);border:1px solid var(--border);color:var(--text-h);border-radius:6px;padding:8px 12px;font-size:13px;transition:border-color .2s}.context-fields input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.sidebar{background:var(--surface);border:1px solid var(--border);max-height:calc(100vh - 200px);box-shadow:var(--shadow);border-radius:10px;padding:16px;position:sticky;top:16px;overflow-y:auto}.sidebar h2{color:var(--text-h);text-transform:uppercase;letter-spacing:.06em;margin:0 0 12px;font-size:12px;font-weight:700}.domain-filter{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.domain-filter button{background:var(--surface-raised);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:6px;padding:5px 10px;font-size:11px;font-weight:600;transition:all .15s}.domain-filter button.active,.domain-filter button:hover{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.artefact-list{flex-direction:column;gap:4px;display:flex}.artefact-item{text-align:left;cursor:pointer;color:var(--text);background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;transition:all .15s;display:flex}.artefact-item:hover{background:var(--surface-raised);border-color:var(--border)}.artefact-item.active{background:var(--accent-bg);border-color:var(--accent-border)}.artefact-item .domain-tag{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.artefact-item b{color:var(--text-h);font-size:12px;font-weight:600}.artefact-item small{color:var(--text-muted);font-size:11px}.content{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;padding:24px}.artefact-header{margin-bottom:20px}.artefact-header .domain-tag{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:10px;font-weight:700;display:block}.artefact-header h1{color:var(--text-h);letter-spacing:-.02em;margin:0 0 8px;font-size:22px;font-weight:700}.artefact-header .basis{color:var(--text-muted);margin:0 0 6px;font-size:12px}.artefact-header .basis b{color:var(--text-h)}.artefact-header .desc{color:var(--text);margin:0;font-size:13px}.fields{flex-direction:column;gap:14px;margin-bottom:20px;display:flex}.fields label{flex-direction:column;display:flex}.fields label span{color:var(--text-muted);margin-bottom:4px;font-size:11px;font-weight:600}.fields textarea{background:var(--surface-raised);border:1px solid var(--border);color:var(--text-h);resize:vertical;border-radius:6px;min-height:80px;padding:10px 12px;font-size:13px;transition:border-color .2s}.fields textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.actions{flex-wrap:wrap;gap:10px;display:flex}button{cursor:pointer;background:var(--surface-raised);color:var(--text);border:none;border:1px solid var(--border);border-radius:7px;padding:9px 16px;font-size:12px;font-weight:700;transition:all .15s}button:hover{border-color:var(--accent-border);color:var(--accent)}button.primary{background:var(--accent);color:#fff;border:none}button.primary:hover{background:var(--accent-hover)}.output{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.output h2{color:var(--text-h);margin:0 0 12px;font-size:14px;font-weight:700}.output pre{background:var(--surface-raised);border:1px solid var(--border);color:var(--text);font:12px/1.6 var(--mono);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:500px;margin-bottom:12px;padding:16px;overflow-y:auto}@media (width<=768px){.layout{grid-template-columns:1fr}.sidebar{max-height:none;position:static}}
