:root{--coen-bg-0: #0b0d11;--coen-bg-1: #11151c;--coen-bg-2: #161b24;--coen-bg-3: #1d2330;--coen-fg-0: #e7ecf2;--coen-fg-1: #b6bdc8;--coen-fg-2: #8a93a0;--coen-fg-muted: #5a6271;--coen-border: #232a37;--coen-accent: #6ea8fe;--coen-accent-soft: #1a2a44;--coen-accent-2: #c084fc;--coen-accent-3: #5eead4;--coen-success: #4ade80;--coen-error: #f87171;--coen-radius: 8px;--coen-radius-sm: 4px;--coen-pad: 12px;--coen-pad-sm: 8px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0;background:var(--coen-bg-0);color:var(--coen-fg-0);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}.coen-app{display:flex;height:100vh;width:100vw;overflow:hidden}.coen-panel{background:var(--coen-bg-1);border-right:1px solid var(--coen-border);display:flex;flex-direction:column;min-width:0}.coen-panel:last-child{border-right:none}.coen-panel-conversation{flex:0 0 38%;min-width:320px;background:var(--coen-bg-1)}.coen-panel-preview{flex:1 1 42%;min-width:400px;background:var(--coen-bg-0)}.coen-panel-context{flex:0 0 20%;min-width:240px;background:var(--coen-bg-2);transition:flex-basis .2s ease}.coen-panel-context.coen-collapsed{flex:0 0 32px;min-width:32px}.coen-splitter{width:4px;cursor:col-resize;background:transparent;transition:background .1s;flex:0 0 auto}.coen-splitter:hover,.coen-splitter.coen-dragging{background:var(--coen-accent)}@media (max-width: 767px){.coen-app{flex-direction:column}.coen-splitter{display:none}.coen-panel{flex:1 1 auto;min-width:0;border-right:none;display:none}.coen-panel.coen-active-tab{display:flex}.coen-tab-bar{display:flex;flex:0 0 48px;background:var(--coen-bg-2);border-bottom:1px solid var(--coen-border);position:sticky;top:0;z-index:10}.coen-tab-bar button{flex:1;background:transparent;color:var(--coen-fg-1);border:none;padding:12px;font-size:14px;cursor:pointer;border-bottom:2px solid transparent}.coen-tab-bar button.coen-active{color:var(--coen-fg-0);border-bottom-color:var(--coen-accent)}}@media (min-width: 768px){.coen-tab-bar{display:none}.coen-panel{display:flex}}.coen-conv{display:flex;flex-direction:column;height:100%}.coen-conv-header{padding:12px 16px;border-bottom:1px solid var(--coen-border);color:var(--coen-fg-1);font-weight:600;flex:0 0 auto}.coen-conv-transcript{flex:1 1 auto;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.coen-conv-msg{max-width:85%;padding:10px 14px;border-radius:var(--coen-radius);white-space:pre-wrap;word-wrap:break-word}.coen-conv-msg-user{background:var(--coen-accent-soft);color:var(--coen-fg-0);align-self:flex-end}.coen-conv-msg-assistant{background:var(--coen-bg-2);color:var(--coen-fg-0);align-self:flex-start}.coen-conv-msg-typing{color:var(--coen-fg-2);font-style:italic}.coen-conv-error{background:#f871711a;color:var(--coen-error);padding:10px 14px;border-radius:var(--coen-radius);border:1px solid var(--coen-error);margin:8px 0}.coen-conv-greeting{padding:24px 16px 8px;color:var(--coen-fg-1)}.coen-conv-greeting h2{margin:0 0 8px;font-size:16px;color:var(--coen-fg-0)}.coen-conv-input-area{flex:0 0 auto;border-top:1px solid var(--coen-border);padding:12px;display:flex;gap:8px;align-items:flex-end;background:var(--coen-bg-1)}.coen-conv-input{flex:1 1 auto;min-height:36px;max-height:144px;padding:8px 12px;background:var(--coen-bg-3);color:var(--coen-fg-0);border:1px solid var(--coen-border);border-radius:var(--coen-radius);font-family:inherit;font-size:14px;resize:none;outline:none}.coen-conv-input:focus{border-color:var(--coen-accent)}.coen-conv-send,.coen-conv-mic{flex:0 0 auto;height:36px;padding:0 14px;background:var(--coen-accent-soft);color:var(--coen-fg-0);border:1px solid var(--coen-border);border-radius:var(--coen-radius);cursor:pointer;font-size:14px}.coen-conv-send:hover:not(:disabled){background:var(--coen-accent);color:var(--coen-bg-0)}.coen-conv-send:disabled,.coen-conv-mic:disabled{opacity:.5;cursor:not-allowed}.coen-conv-mic[disabled]{background:transparent}.coen-starter{display:flex;flex-wrap:wrap;gap:8px;padding:8px 16px 16px;transition:opacity .2s}.coen-starter.coen-fading{opacity:0;pointer-events:none}.coen-starter button{background:transparent;color:var(--coen-fg-1);border:1px solid var(--coen-border);border-radius:var(--coen-radius);padding:8px 14px;font-size:13px;cursor:pointer;font-family:inherit;transition:background .1s,color .1s,transform .1s}.coen-starter button:hover{background:var(--coen-accent-soft);color:var(--coen-fg-0);border-color:var(--coen-accent)}.coen-starter button:active{transform:scale(.97)}.coen-preview{flex:1 1 auto;overflow-y:auto;padding:16px}.coen-preview h1{font-size:18px;color:var(--coen-fg-0);margin:0 0 12px}.coen-context{display:flex;flex-direction:column;height:100%}.coen-context-collapsed{writing-mode:vertical-rl;text-orientation:mixed;padding:16px 4px;color:var(--coen-fg-2);font-size:12px;cursor:pointer}.coen-context-header{padding:12px 16px;border-bottom:1px solid var(--coen-border);display:flex;justify-content:space-between;align-items:center;flex:0 0 auto}.coen-context-header-title{font-weight:600;color:var(--coen-fg-0)}.coen-context-collapse{background:transparent;border:none;color:var(--coen-fg-2);cursor:pointer;font-size:14px;padding:4px 8px}.coen-context-collapse:hover{color:var(--coen-fg-0)}.coen-context-body{flex:1 1 auto;overflow-y:auto;padding:12px 16px}.coen-context-empty{color:var(--coen-fg-2);padding:32px 16px;text-align:center}.coen-context-section{margin-bottom:16px}.coen-context-section-header{color:var(--coen-fg-1);font-size:12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;padding:4px 0;cursor:pointer;background:transparent;border:none;width:100%;text-align:left}.coen-context-section-body{color:var(--coen-fg-1);font-size:13px}.coen-context-skeleton{background:var(--coen-bg-3);height:12px;border-radius:3px;margin:4px 0;opacity:.5}.coen-features{padding:12px 16px}.coen-features-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.coen-features-header-title{font-weight:600;color:var(--coen-fg-0)}.coen-features-add{background:var(--coen-accent-soft);color:var(--coen-fg-0);border:1px solid var(--coen-border);border-radius:var(--coen-radius);padding:4px 10px;font-size:12px;cursor:pointer}.coen-features-add:hover{background:var(--coen-accent);color:var(--coen-bg-0)}.coen-features-group{margin-bottom:16px}.coen-features-group-title{color:var(--coen-fg-2);font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:12px 0 6px}.coen-feature-card{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:var(--coen-bg-2);border:1px solid var(--coen-border);border-radius:var(--coen-radius);margin-bottom:6px;cursor:pointer;transition:background 80ms,border-color 80ms}.coen-feature-card:hover{background:var(--coen-bg-3)}.coen-feature-card.coen-selected{border-color:var(--coen-accent);background:var(--coen-bg-3)}.coen-feature-badge{font-size:16px;line-height:1;flex:0 0 auto;margin-top:2px}.coen-feature-info{flex:1 1 auto;min-width:0}.coen-feature-name{color:var(--coen-fg-0);font-weight:500;font-size:13px}.coen-feature-intent{color:var(--coen-fg-2);font-size:12px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coen-feature-status{color:var(--coen-fg-1);font-size:11px;text-transform:uppercase;letter-spacing:.5px;flex:0 0 auto}.coen-feature-empty{color:var(--coen-fg-2);padding:24px 8px;text-align:center}.coen-status-Idea{color:var(--coen-fg-muted)}.coen-status-Defining{color:var(--coen-accent)}.coen-status-Building{color:var(--coen-accent-2)}.coen-status-Ready{color:var(--coen-accent-3)}.coen-status-Deployed{color:var(--coen-success)}.coen-product-list{padding:16px}.coen-product-card{background:var(--coen-bg-2);border:1px solid var(--coen-border);border-radius:var(--coen-radius);padding:12px 16px;margin-bottom:8px;cursor:pointer}.coen-product-card:hover{border-color:var(--coen-accent)}.coen-product-card.coen-selected{border-color:var(--coen-accent);background:var(--coen-bg-3)}.coen-product-name{color:var(--coen-fg-0);font-weight:500}.coen-product-meta{color:var(--coen-fg-2);font-size:12px;margin-top:2px}.coen-focus-ring:focus-visible,button:focus-visible,[role=button]:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--coen-accent);outline-offset:2px}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--coen-border);border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--coen-fg-muted)}
