@font-face{font-family:"Instrument Serif";src:url(/assets/instrument-serif-DXer19By.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:"Instrument Serif";src:url(/assets/instrument-serif-italic-DvH-EfPC.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Inter Tight;src:url(/assets/inter-tight-BjjQnp0H.ttf) format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/jetbrains-mono--VKQJH3W.ttf) format("truetype");font-weight:100 800;font-display:swap}:root{font-family:Inter Tight,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;font-size:14px;--paper:#f6f3ed;--paper-raised:#fbf9f4;--foam:#fffdf8;--paper-deep:#eee9df;--line:#e2ddd2;--line-strong:#cfc8bb;--line-input:#8f8676;--neutral-mid:#c8c0b2;--ink:#292a24;--ink-raised:#34352e;--ink-soft:#4b4a42;--muted:#6b675d;--muted-soft:#a9a293;--on-dark:#e9e3d8;--line-on-dark:#3d3e36;--rust:#aa4e31;--rust-hover:#8f4128;--rust-deep:#7a3c26;--rust-soft:#e9c4aa;--rust-wash:#f4e6da;--on-accent:#fff7ee;--green:#293c32;--green-ok:#4f6a49;--green-wash:#e3e9dc;--danger:#a3362a;--danger-wash:#f8e3dc;--stage-1:#d9a57f;--stage-2:#c47f57;--stage-3:#b0613c;--stage-4:#aa4e31;--amber:#8a6a1f;--amber-wash:#f3e9cf;--amber-line:#e3d1a2;--overlay-on-dark-sm:rgba(255,255,255,.04);--overlay-on-dark-md:rgba(255,255,255,.07);--overlay-on-dark-lg:rgba(255,255,255,.4);--radius-sm:3px;--radius-md:6px;--radius-pill:999px;--serif:"Instrument Serif",Georgia,serif;--sans:"Inter Tight",Arial,sans-serif;--mono:"JetBrains Mono",monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:22px;--weight-medium:500;--weight-semibold:550;--weight-bold:600;--control-h-sm:32px;--control-h-md:40px;--control-h-lg:44px;--control-icon:40px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--dur-fast:.12s;--dur-base:.2s;--dur-slow:.4s;--ease-standard:cubic-bezier(.4,0,.2,1);--ease-brand:cubic-bezier(.3,1.4,.5,1);--state-proposal-bg:var(--rust-soft);--state-proposal-text:var(--rust-deep);--state-approved-bg:var(--rust);--state-approved-text:var(--on-accent);--state-running-bg:var(--foam);--state-running-border:var(--rust);--state-running-text:var(--rust);--state-verified-bg:var(--green-wash);--state-verified-text:var(--green);--state-blocked-bg:var(--paper-deep);--state-blocked-text:var(--ink-soft);--state-error-bg:var(--danger-wash);--state-error-text:var(--danger);--state-authorize-bg:var(--amber-wash);--state-authorize-text:#5e4812;--state-authorize-border:var(--amber-line);--state-draft-text:var(--muted);--state-draft-border:var(--line-strong)}:root{--role-assistant:#aa4e31;--role-strategist:#5c6b4a;--role-researcher:#4a6272;--role-analyst:#8f6a2f;--role-reviewer:#7a4f6b;--role-default:#787060}.logo-mark{width:31px;height:36px;display:block;background:var(--rust);clip-path:polygon(0 28%,33% 0,33% 72%,100% 72%,72% 100%,0 100%)}body.app-mode{display:block;padding:0;overflow-y:auto}.app{display:grid;grid-template-rows:auto 1fr;min-height:100%}.app-header{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-5);background:var(--paper-raised);border-bottom:1px solid var(--line)}.app-header .brand-link{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--serif);font-size:var(--text-2xl);color:var(--ink);text-decoration:none}.app-header .brand-link .logo-mark{width:20px;height:23px}.app-header nav a{color:var(--ink-soft);text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.app-header nav a[aria-current=page]{color:var(--rust);font-weight:var(--weight-semibold)}.app-header .spacer{flex:1}.app-header .usage{font-size:var(--text-sm);color:var(--muted)}.app-main{width:100%;max-width:720px;margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-8);box-sizing:border-box}h2.screen-title{font-family:var(--serif);font-weight:400;font-size:var(--text-3xl);margin:0 0 var(--space-5)}.card{background:var(--foam);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-5)}.brand-list{display:grid;gap:var(--space-3);padding:0;margin:0;list-style:none}.brand-list a{display:flex;justify-content:space-between;gap:var(--space-3);align-items:baseline;padding:var(--space-3) var(--space-4);background:var(--foam);border:1px solid var(--line);border-radius:var(--radius-md);color:var(--ink);text-decoration:none}.brand-list a:hover{border-color:var(--line-strong);background:var(--paper-raised)}.brand-list .when{color:var(--muted);font-size:var(--text-sm);white-space:nowrap}form.inline{display:grid;gap:var(--space-3)}label.field{display:grid;gap:var(--space-1);font-size:var(--text-sm);color:var(--ink-soft)}input[type=text],input[type=url],select,textarea{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line-input);border-radius:var(--radius-sm);padding:0 var(--space-3);min-height:var(--control-h-md);width:100%;box-sizing:border-box}textarea{padding:var(--space-2) var(--space-3);resize:vertical}button{font:inherit;cursor:pointer;border-radius:var(--radius-sm);min-height:var(--control-h-md);padding:0 var(--space-4)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--rust);outline-offset:2px}button.primary{background:var(--rust);border:1px solid var(--rust);color:var(--on-accent);font-weight:var(--weight-medium)}button.primary:hover{background:var(--rust-hover);border-color:var(--rust-hover)}button.secondary{background:transparent;border:1px solid var(--line-input);color:var(--ink)}button.secondary:hover{background:var(--paper-deep)}button:disabled{opacity:.55;cursor:default}.screen-sub{color:var(--muted);margin:0 0 var(--space-5)}.loading{color:var(--muted)}.error-box{background:var(--danger-wash);border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4)}.error-box button{margin-top:var(--space-2)}.progress{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-4) 0}.progress ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2)}.progress li{color:var(--ink-soft);font-size:var(--text-md)}.progress li:before{content:"·";color:var(--rust);font-weight:var(--weight-bold);margin-right:var(--space-2)}.tag-assumption{display:inline-block;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--rust-deep);background:var(--rust-wash);border:1px solid var(--rust-soft);border-radius:var(--radius-pill);padding:0 var(--space-2);vertical-align:middle}.dna-fields{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-3) var(--space-4);margin:0}.dna-fields dt{color:var(--muted);font-size:var(--text-sm);padding-top:2px}.dna-fields dd{margin:0;line-height:1.5}.dna-fields dd.dna-empty{color:var(--muted-soft);font-style:italic}.dna-sources{color:var(--muted);font-size:var(--text-xs)}.dna-steps{color:var(--muted);font-size:var(--text-sm)}.dna-ideas{margin-top:var(--space-5)}.dna-ideas h3,.chat h3{font-family:var(--serif);font-weight:400;font-size:var(--text-xl);margin:0 0 var(--space-3)}.dna-idea{border-left:2px solid var(--rust-soft);padding:var(--space-1) 0 var(--space-1) var(--space-3);margin-bottom:var(--space-3)}.dna-idea p{margin:var(--space-1) 0 0;color:var(--ink-soft)}.chat-log{display:grid;gap:var(--space-3);margin:0 0 var(--space-4)}.chat-msg{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);max-width:85%;line-height:1.55}.chat-msg.user{background:var(--paper-deep);justify-self:end}.chat-msg.assistant{background:var(--foam);border:1px solid var(--line);justify-self:start}.chat-form{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:end}.chat-form textarea{min-height:var(--control-h-md)}@media(max-width:500px){.chat-form{grid-template-columns:1fr}.dna-fields{grid-template-columns:1fr;gap:var(--space-1) 0}.dna-fields dt{padding-top:var(--space-2)}}
