:root{--color-bg: #F4F4F4;--color-surface: #FFFFFF;--color-card: #FFFFFF;--color-surface-2: #F8F8F8;--color-nav: #FFFFFF;--color-white: #FFFFFF;--color-accent: #0F0F0F;--color-accent-hover: #2A2A2A;--color-text: #0F0F0F;--color-text-secondary: #6B6B6B;--color-text-muted: #A0A0A0;--color-text-light: #C0C0C0;--color-border: #E2E2E2;--color-border-soft: #EBEBEB;--color-purple: #0F0F0F;--color-blue: #0F0F0F;--color-orange: #92400E;--color-turquoise: #0F766E;--shadow-card: none;--shadow-soft: none;--radius-card: 8px;--radius-control: 6px;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", ui-monospace, monospace;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f0f0f;background:#f4f4f4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{color:var(--color-text);background:var(--color-bg)}.app-shell{display:flex;min-height:100vh;background:var(--color-bg)}.sidebar{width:240px;flex:0 0 240px;display:flex;flex-direction:column;gap:0;padding:28px 16px;color:var(--color-text);background:var(--color-nav);border-right:1px solid var(--color-border)}.sidebar-account{margin-top:auto;padding-top:14px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:6px}.sidebar-account-email{font-size:12px;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-logout{align-self:flex-start;border:1px solid var(--color-border-soft);background:transparent;color:var(--color-text-secondary);font-size:13px;padding:5px 12px;border-radius:8px;cursor:pointer}.sidebar-logout:hover{background:var(--color-card);color:var(--color-text)}.sidebar-header{display:flex;flex-direction:column;gap:2px;padding:0 8px 28px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.brand-mark{display:grid;width:32px;height:32px;place-items:center;border-radius:4px;color:#fff;background:var(--color-accent);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:0;text-transform:uppercase;margin-bottom:10px}.app-name,.app-subtitle{display:block}.app-name{color:var(--color-text);font-size:14px;font-weight:700;letter-spacing:-.01em}.app-subtitle{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.nav-list{display:flex;flex-direction:column;gap:2px}.nav-divider{height:1px;margin:10px 8px;background:var(--color-border)}.nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:36px;border:0;border-radius:6px;padding:8px 10px;color:var(--color-text-secondary);background:transparent;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;text-align:left;transition:background .12s,color .12s}.nav-magic-badge{border-radius:3px;padding:1px 5px;color:var(--color-text-muted);background:var(--color-border-soft);font-family:var(--font-mono);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.nav-item:hover{color:var(--color-text);background:var(--color-bg)}.nav-item.active{color:var(--color-accent);background:var(--color-bg);font-weight:700;border-left:2px solid var(--color-accent);padding-left:8px}.content{flex:1;min-width:0;padding:48px;background:var(--color-bg)}.screen-panel,.sources-area,.search-page,.product-spec-area,.artifacts-area{max-width:1040px}.screen-kicker{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em}h1{color:var(--color-text);font-size:clamp(28px,3vw,36px);font-weight:700;letter-spacing:-.02em;line-height:1.15}h2,.sources-list-panel h2,.knowledge-search-panel h2,.questions-block h2,.form-note h2{color:var(--color-text);font-weight:600}.screen-description{color:var(--color-text-secondary);font-size:15px;line-height:1.6}.empty-state,.project-form,.project-card,.clarification-form,.questions-block,.source-upload-panel,.sources-list-panel,.knowledge-search-panel,.product-spec-panel,.product-spec-preview,.artifact-preview,.artifact-table-wrap,.confirm-box,.api-base-note,.backend-status,.openai-status,.source-accordion-item,.search-result-card,.answer-card,.placeholder-block{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-card);box-shadow:none}.source-accordion-item,.project-card,.search-result-card{transition:border-color .15s}.source-accordion-item:hover,.project-card:hover,.search-result-card:hover{border-color:silver;box-shadow:none;transform:none}.primary-button,.secondary-button{min-height:38px;border-radius:var(--radius-control);padding:8px 16px;white-space:nowrap;font-size:13px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.primary-button{color:#fff;background:var(--color-accent);border:1px solid var(--color-accent);box-shadow:none}.primary-button:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.secondary-button{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.secondary-button:hover:not(:disabled){border-color:silver;background:var(--color-bg)}.primary-button.danger,.secondary-button.danger{border:1px solid #FECACA;color:#991b1b;background:#fef2f2;box-shadow:none}.primary-button.danger:hover,.secondary-button.danger:hover{background:#fee2e2}.primary-button:disabled,.secondary-button:disabled{opacity:.45;cursor:not-allowed}.field input[type=text],.field input[type=file],.field select,.field textarea{border:1px solid var(--color-border);border-radius:var(--radius-control);color:var(--color-text);background:var(--color-surface);font-size:14px}.field input[type=text]:focus,.field select:focus,.field textarea:focus{border-color:var(--color-accent);outline:2px solid rgba(0,0,0,.08)}.option{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text)}.source-badge,.project-card-header span,.answer-status,.search-result-badge,.search-result-badge-direct,.search-result-badge-semantic{border-radius:4px;padding:3px 8px;font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.02em}.source-badge{color:#374151;background:#f3f4f6;border:1px solid #E5E7EB}.source-index-badge{padding:3px 8px;font-size:11px;font-family:var(--font-mono)}.source-index-badge-indexed,.answer-status.filled,.check-block.ready,.form-success{color:#166534;background:#f0fdf4;border-radius:4px;padding:8px 12px}.source-index-badge-not-indexed,.source-index-badge-indexing{color:#92400e;background:#fffbeb}.source-index-badge-error,.answer-status.empty,.check-block.missing,.form-error{color:#991b1b;background:#fef2f2;border-radius:4px;padding:8px 12px}.autosave-status-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.autosave-indicator{font-size:12px;color:var(--color-text-muted);font-weight:500;white-space:nowrap}.autosave-indicator-done{color:var(--color-success, #16a34a)}.source-accordion-header{padding:16px 20px}.source-accordion-details{border-top:1px solid var(--color-border);padding:20px}.source-accordion-summary h3,.knowledge-result-header h3{color:var(--color-text);font-weight:600}.source-meta-grid div,.source-table-meta div,.search-result-meta div,.source-index-status div,.clarification-summary div,.product-spec-summary div,.source-preview div,.knowledge-result-text,.artifact-preview,.product-spec-preview pre{border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg)}.source-table-scroll,.search-result-table-wrapper,.artifact-table-wrap{border:1px solid var(--color-border);border-radius:6px}.source-preview-table th,.search-result-table th.search-result-table-cell,.artifact-table th{color:var(--color-text-secondary);background:var(--color-bg);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.search-result-badge-direct{color:#1d4ed8;background:#eff6ff;border:1px solid #BFDBFE}.search-result-badge-semantic{color:#5b21b6;background:#f5f3ff;border:1px solid #DDD6FE}.search-highlight{border-radius:3px;padding:0 3px;color:#000;background:#fef08a;font-weight:700}.semantic-highlight,.semantic-evidence-box{border:1px solid #E0E7FF;background:#f5f3ff}.artifact-tabs{gap:4px}.artifact-tab{border-radius:5px;padding:6px 12px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);font-size:13px;font-weight:500}.artifact-tab:hover{background:var(--color-bg);border-color:silver;color:var(--color-text)}.artifact-tab.active{border-color:var(--color-accent);color:var(--color-white);background:var(--color-accent);box-shadow:none}.source-search-inline{margin-top:24px;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:14px 18px;background:var(--color-surface)}.source-search-inline>summary{color:var(--color-text-secondary);font-size:13px;font-weight:600;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.source-search-inline>summary:before{content:"▸ ";color:var(--color-text-muted);font-size:10px}.source-search-inline[open]>summary:before{content:"▾ "}.source-search-inline-body{display:flex;flex-direction:column;gap:12px;margin-top:14px}.source-search-row{display:flex;gap:10px}.source-search-input{flex:1;min-height:38px;border:1px solid var(--color-border);border-radius:var(--radius-control);padding:8px 12px;color:var(--color-text);background:var(--color-surface);font:inherit;font-size:14px}.source-search-input:focus{border-color:var(--color-accent);outline:2px solid rgba(0,0,0,.07)}.source-search-toggle{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary);font-size:13px;cursor:pointer}.inline-details{margin-top:10px}.inline-details summary{display:inline-flex;align-items:center;gap:4px;padding:4px 0;color:var(--color-text-muted);font-size:12px;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.inline-details summary:before{content:"▸";display:inline-block;font-size:10px;transition:transform .15s}.inline-details[open] summary:before{transform:rotate(90deg)}.inline-details>*:not(summary){margin-top:8px}.artifact-stale-badge{margin-left:5px;color:#92400e;font-size:11px}.artifact-stale-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgb(251 191 36 / 25%);border-radius:12px;padding:10px 16px;color:#92400e;background:#fbbf2414;font-size:14px;font-weight:600}.nav-hint-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid rgb(96 165 250 / 30%);border-radius:8px;padding:8px 14px;color:#1e40af;background:#eff6ff;font-size:13px;margin-bottom:4px}.templates-section{display:flex;flex-direction:column;gap:16px;padding:22px;border-radius:var(--radius-card);border:1px solid var(--color-border-soft);background:var(--color-card)}.template-list{display:flex;flex-direction:column;gap:6px}.template-row{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:8px;background:var(--color-bg);border:1px solid var(--color-border-soft)}.template-row-label{font-size:13px;font-weight:600;min-width:130px}.template-row-status{flex:1;font-size:13px;display:flex;align-items:center;gap:6px;overflow:hidden}.template-row-filename{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.template-row-date{color:#6b7280;white-space:nowrap;font-size:12px}.template-row-empty{color:#9ca3af}.template-row-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.brandbook-upload-form{display:flex;flex-direction:column;gap:10px}.brandbook-mode-tabs{display:flex;gap:6px}.brandbook-url-row{display:flex;gap:8px;align-items:center}.brandbook-url-row .text-input{flex:1}.artifact-format-toggle{display:flex;align-items:center;gap:6px;padding:6px 0}.artifact-format-label{font-size:13px;color:#6b7280;margin-right:2px}.format-toggle-btn{padding:4px 12px;border-radius:6px;border:1px solid var(--color-border-soft);background:var(--color-card);font-size:13px;cursor:pointer;color:#374151;transition:background .15s,color .15s}.format-toggle-btn.active{background:#3b5bdb;border-color:#3b5bdb;color:#fff;font-weight:600}.format-toggle-btn:disabled{opacity:.6;cursor:default}.product-spec-summary{gap:10px;background:transparent}.product-spec-summary div{padding:16px}.product-spec-summary dd{color:var(--color-text);font-size:18px}.product-spec-preview{padding:16px}.product-spec-preview pre{max-height:620px;border:1px solid var(--color-border-soft);padding:18px}.product-spec-source-context,.product-spec-source-references{display:grid;gap:14px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:18px;background:#fafafa}.product-spec-source-context .knowledge-results,.product-spec-source-references .knowledge-results{gap:10px}.product-spec-source-references{margin:16px}.product-spec-source-references h2{margin:0;font-size:22px}.answer-card{border-radius:20px;background:var(--color-card)}.empty-table{border-color:var(--color-border-soft);border-radius:20px;background:var(--color-card)}@media(max-width:900px){.sidebar{width:auto;flex-basis:auto;margin:12px}.content{padding:24px 18px}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}.screen-panel{max-width:960px}.screen-heading{margin-bottom:32px}.screen-kicker{margin:0 0 8px;color:#a0a0a0;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;font-weight:600;letter-spacing:.05em}h1{margin:0;color:#0f0f0f;font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1.15}.screen-description{max-width:680px;margin:10px 0 0;color:#6b6b6b;font-size:15px;line-height:1.6}.placeholder-block{min-height:220px;border:1px dashed #D8D8D8;border-radius:8px;padding:28px;background:#fff}.placeholder-block span{display:inline-flex;margin-bottom:14px;border-radius:4px;padding:4px 10px;color:#6b6b6b;background:#f3f4f6;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.placeholder-block p{max-width:560px;margin:0;color:#6b6b6b;font-size:16px;line-height:1.6}.empty-state,.project-form,.project-card,.clarification-form,.questions-block{border:1px solid #E2E2E2;border-radius:8px;background:#fff}.empty-state{max-width:620px;padding:28px}.empty-state h2,.project-card h2{margin:0;color:#0f0f0f;font-size:22px;line-height:1.25}.empty-state p{margin:12px 0 22px;color:#6b6b6b;font-size:16px;line-height:1.6}.primary-button,.secondary-button{min-height:42px;border:0;border-radius:8px;padding:10px 16px;cursor:pointer;font-weight:700}.primary-button{color:#fff;background:#0f0f0f;border:1px solid #0F0F0F}.primary-button:hover{background:#2a2a2a;border-color:#2a2a2a}.primary-button:disabled{cursor:not-allowed;opacity:.45}.primary-button.danger{color:#991b1b;background:#fef2f2;border:1px solid #FECACA}.primary-button.danger:hover{background:#fee2e2}.secondary-button{color:#0f0f0f;background:#fff;border:1px solid #E2E2E2}.secondary-button:hover{background:#f4f4f4;border-color:silver}.secondary-button.danger{color:#991b1b;background:#fef2f2;border:1px solid #FECACA}.secondary-button.danger:hover{background:#fee2e2}.project-form{display:flex;max-width:720px;flex-direction:column;gap:22px;padding:28px}.field{display:flex;flex-direction:column;gap:8px}.field span,.field-group legend{color:#0f0f0f;font-size:13px;font-weight:600}.field input[type=text],.field select,.field textarea,.field input[type=file]{width:100%;border:1px solid #E2E2E2;border-radius:8px;padding:10px 12px;color:#0f0f0f;background:#fff}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364748b' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.field input[type=file]{padding:8px 12px;cursor:pointer}.field input[type=file]::file-selector-button{margin-right:12px;border:1px solid #E2E2E2;border-radius:6px;padding:4px 12px;color:#6b6b6b;background:#ffffff0d;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s}.field input[type=file]::file-selector-button:hover{background:#f0f0f0;color:#0f0f0f}.field input[type=text],.field select{min-height:44px}.field textarea{min-height:160px;resize:vertical;line-height:1.5}.field input[type=text]:focus,.field select:focus,.field textarea:focus{border-color:#0f0f0f;outline:2px solid rgba(0,0,0,.08)}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B6B6B' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.field-group{margin:0;border:0;padding:0}.field-group legend{margin-bottom:10px;padding:0}.option-grid,.option-list{display:grid;gap:10px}.option-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.option-list{grid-template-columns:1fr}.option{display:flex;min-height:42px;align-items:center;gap:10px;border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;color:var(--color-text-secondary);background:var(--color-surface);cursor:pointer}.option span{min-width:0;overflow-wrap:anywhere}.option input{width:16px;height:16px;flex:0 0 16px;margin:0}.form-error{margin:-4px 0 0;border-radius:8px;padding:10px 12px;color:#991b1b;background:#fef2f2;font-weight:700}.form-success{margin:-4px 0 0;border-radius:8px;padding:10px 12px;color:#166534;background:#f0fdf4;font-weight:700}.projects-area{display:flex;flex-direction:column;gap:16px}.projects-section-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-card);overflow:hidden}.projects-section-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--color-border-soft)}.projects-count{color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px}.projects-list{display:flex;flex-direction:column}.projects-list-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:13px 22px;border:none;border-top:1px solid var(--color-border-soft);background:transparent;text-align:left;cursor:pointer;transition:background .1s}.projects-list-row:first-child{border-top:none}.projects-list-row:hover{background:#00000006}.projects-list-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.projects-list-row-main strong{display:block;color:var(--color-text);font-size:15px;font-weight:700}.projects-list-platforms{color:var(--color-text-secondary);font-size:13px}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.projects-toolbar p{margin:0;color:#6b6b6b;font-weight:700}.confirm-box{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgb(239 68 68 / 25%);border-radius:8px;padding:18px;background:#ef444412}.confirm-box h2{margin:0;color:#991b1b;font-size:18px;line-height:1.3}.confirm-box p{margin:6px 0 0;color:#5d3038;line-height:1.5}.confirm-actions{display:flex;flex:0 0 auto;gap:10px}.source-confirm{margin-bottom:14px}.source-confirm-file{margin-top:10px;color:#6b6b6b;font-weight:700}.project-list{display:grid;gap:14px}.project-card{padding:20px}.project-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.project-card-header span{flex:0 0 auto;border-radius:999px;padding:4px 10px;color:#374151;background:#eff6ff;font-size:13px;font-weight:700}.project-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 0}.project-meta div{min-width:0}.project-meta dt{margin-bottom:4px;color:#a0a0a0;font-size:13px;font-weight:700}.project-meta dd{margin:0;color:#6b6b6b;line-height:1.45}.sources-area{display:flex;max-width:1120px;flex-direction:column;gap:22px}.sources-page-header,.clarifications-page-header{padding:4px 0 8px}.sources-page-header h2,.clarifications-page-header h2{margin:4px 0 8px;font-size:clamp(22px,3vw,30px);font-weight:900;line-height:1.08}.sources-page-header p,.clarifications-page-header p{margin:0;color:var(--color-text-secondary);font-size:15px;line-height:1.6}.drop-zone-input{display:none}.drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1.5px dashed var(--color-border);border-radius:var(--radius-card);padding:28px 20px;background:#fafafa;cursor:pointer;text-align:center;transition:border-color .15s,background .15s}.drop-zone:hover,.drop-zone.active{border-color:var(--color-text-secondary);background:#f5f5f5}.drop-zone-icon{font-size:20px;color:var(--color-text-muted);line-height:1}.drop-zone-text{color:var(--color-text-secondary);font-size:14px;font-weight:600}.drop-zone.active .drop-zone-text,.drop-zone:hover .drop-zone-text{color:var(--color-text)}.drop-zone-hint{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.source-details-actions{padding:8px 0 4px}.source-upload-panel,.sources-list-panel{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px;background:var(--color-card)}.source-upload-panel{display:flex;flex-direction:column;gap:18px}.source-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sources-list-panel h2{margin:0 0 14px;color:#0f0f0f;font-size:22px;line-height:1.25}.delete-diagnostics{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:1px;margin:0 0 14px;overflow:hidden;border:1px solid #E2E2E2;border-radius:8px;background:#1e2535}.delete-diagnostics div{min-width:0;padding:10px;background:#fafafa}.delete-diagnostics dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.delete-diagnostics dd{margin:0;overflow-wrap:anywhere;color:#6b6b6b;font-size:13px;font-weight:700}.source-card-list{display:grid;gap:14px}.source-accordion{display:grid;gap:12px}.source-accordion-item{width:100%;border:1px solid #E2E2E2;border-radius:8px;background:#fff;cursor:pointer}.source-accordion-header{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:14px 16px}.source-accordion-summary{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:10px}.source-accordion-title{display:flex;min-width:0;align-items:flex-start;gap:10px}.source-caret{flex:0 0 auto;color:#6b6b6b;font-size:20px;line-height:1.2}.source-accordion-summary h3{min-width:0;max-width:100%;margin:0;color:#0f0f0f;font-size:18px;line-height:1.2;overflow-wrap:anywhere;word-break:normal}.source-accordion-details{border-top:1px solid #e5ebf3;padding:16px;cursor:default}.source-card{width:100%;border:1px solid #E2E2E2;border-radius:8px;padding:18px;background:#fff}.source-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.source-card-header h3{min-width:0;margin:0;color:#0f0f0f;font-size:20px;line-height:1.3;overflow-wrap:anywhere}.source-badges{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}.source-badge{max-width:100%;overflow:hidden;border-radius:999px;padding:4px 10px;color:#374151;background:#eff6ff;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.source-index-badge{max-width:100%;overflow:hidden;border:1px solid transparent;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.source-index-badge-indexed{border-color:#4ade804d;color:#166534;background:#f0fdf4}.source-index-badge-not-indexed{border-color:#e2e2e2;color:#6b6b6b;background:#fafafa}.source-index-badge-error{border-color:#ef44444d;color:#991b1b;background:#fef2f2}.source-index-badge-indexing{border-color:#fbbf244d;color:#92400e;background:#fffbeb}.source-badge.status-error{color:#991b1b;background:#fef2f2}.source-badge.status-text_extracted{color:#166534;background:#f0fdf4}.source-badge.status-indexing{color:#92400e;background:#fffbeb}.source-badge.status-indexed{color:#0f766e;background:#f0fdfa}.source-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin:0 0 16px}.source-meta-grid div{min-width:0;border:1px solid #E2E2E2;border-radius:8px;padding:10px 12px;background:#fafafa}.source-meta-grid dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.source-meta-grid dd{margin:0;color:#6b6b6b;line-height:1.4;overflow-wrap:anywhere}.source-preview h4{margin:0 0 8px;color:#6b6b6b;font-size:15px}.source-preview div{max-height:160px;overflow:auto;border:1px solid #E2E2E2;border-radius:8px;padding:12px;color:#6b6b6b;background:#fafafa;line-height:1.55;white-space:pre-wrap;overflow-wrap:break-word}.source-table-preview h4{margin:0 0 10px;color:#6b6b6b;font-size:15px}.source-table-meta{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;margin:0 0 12px}.source-table-meta div{min-width:0;border:1px solid #E2E2E2;border-radius:8px;padding:9px 10px;background:#fafafa}.source-table-meta dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.source-table-meta dd{margin:0;color:#6b6b6b;line-height:1.4;overflow-wrap:anywhere}.source-table-truncated{margin:0 0 10px;color:#a0a0a0;font-size:13px;font-weight:700}.source-table-scroll{max-height:360px;overflow:auto;border:1px solid #E2E2E2;border-radius:8px;background:#fff}.source-preview-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;table-layout:auto}.source-preview-table th,.source-preview-table td{min-width:140px;max-width:280px;border-bottom:1px solid #e5ebf3;border-right:1px solid #e5ebf3;padding:9px 10px;color:#6b6b6b;line-height:1.4;text-align:left;vertical-align:top;white-space:normal;overflow-wrap:break-word}.source-preview-table th{position:sticky;top:0;z-index:1;color:#0f0f0f;background:#fff;font-size:13px;font-weight:800}.source-preview-table tr:last-child td{border-bottom:0}.source-preview-table th:last-child,.source-preview-table td:last-child{border-right:0}.source-card-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-start;margin-top:14px;width:100%}.source-accordion-header .source-card-actions{margin-top:0}.source-card-actions button{min-height:34px;padding:8px 12px;white-space:nowrap}.source-index-status{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;margin:-2px 0 16px}.source-index-status div{min-width:0;border:1px solid #cfe0f2;border-radius:8px;padding:9px 10px;background:#fafafa}.source-index-status dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.source-index-status dd{margin:0;color:#6b6b6b;line-height:1.4;overflow-wrap:anywhere}.search-page{display:flex;max-width:1120px;flex-direction:column;gap:18px}.knowledge-search-panel{display:flex;flex-direction:column;gap:16px;border:1px solid #E2E2E2;border-radius:8px;padding:20px;background:#fff}.search-controls{width:100%}.knowledge-search-panel h2{margin:0;color:#0f0f0f;font-size:22px}.knowledge-search-panel p{margin:8px 0 0;color:#6b6b6b;line-height:1.5}.knowledge-results{display:grid;gap:12px}.search-result-card{border:1px solid #E2E2E2;border-radius:8px;padding:14px;background:#fafafa}.knowledge-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.knowledge-result-header h3{min-width:0;margin:0;color:#0f0f0f;font-size:17px;overflow-wrap:anywhere}.search-result-badges{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px}.search-result-badge,.search-result-badge-direct,.search-result-badge-semantic{border-radius:999px;padding:4px 10px;font-size:13px;font-weight:800}.search-result-badge.direct,.search-result-badge-direct{color:#166534;background:#f0fdf4}.search-result-badge.semantic{color:#7a541c;background:#fffbeb}.search-result-badge-semantic{color:#5b4ac7;background:#f0f0f0}.search-result-meta{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;margin:0 0 12px}.search-result-meta div{min-width:0;border:1px solid #E2E2E2;border-radius:8px;padding:9px 10px;background:#fff}.search-result-meta dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.search-result-meta dd{margin:0;color:#6b6b6b;line-height:1.4;overflow-wrap:anywhere}.knowledge-match-note,.semantic-note{margin:0 0 10px;color:#6b6b6b;font-size:13px;line-height:1.45}.semantic-note{color:#7a541c}.search-result-semantic-warning{margin:0 0 10px;border:1px solid #f4d99a;border-radius:8px;padding:10px 12px;color:#7a541c;background:#fffbeb;font-size:13px;font-weight:700;line-height:1.45}.knowledge-result-text{max-height:180px;overflow:auto;margin:0;border:1px solid #E2E2E2;border-radius:8px;padding:12px;color:#6b6b6b;background:#fff;line-height:1.55;white-space:pre-wrap;overflow-wrap:break-word}.search-highlight{border-radius:4px;padding:0 2px;color:#1f2937;background:#fbbf24;font-weight:700}.semantic-highlight{margin:0;border-radius:8px;padding:12px;color:#6b6b6b;background:#f0f0f0;line-height:1.55;white-space:pre-wrap;overflow-wrap:break-word}.semantic-evidence-box{margin:0 0 12px;border:1px solid #c8ddff;border-radius:8px;padding:12px;background:#fafafa}.semantic-evidence-box h4{margin:0 0 10px;color:#6b6b6b;font-size:14px}.search-exact-option{align-self:flex-start}.search-checkboxes{display:flex;flex-wrap:wrap;gap:10px}.search-result-table-block h4{margin:0 0 10px;color:#6b6b6b;font-size:15px}.search-result-table-wrapper{max-height:360px;overflow:auto;border:1px solid #E2E2E2;border-radius:8px;background:#fff}.search-result-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;table-layout:auto}.search-result-table-cell{min-width:140px;max-width:280px;border-bottom:1px solid #e5ebf3;border-right:1px solid #e5ebf3;padding:9px 10px;color:#6b6b6b;line-height:1.4;text-align:left;vertical-align:top;white-space:normal;overflow-wrap:break-word}.search-result-table th.search-result-table-cell{position:sticky;top:0;z-index:1;color:#0f0f0f;background:#fff;font-size:13px;font-weight:800}.search-result-table tr:last-child .search-result-table-cell{border-bottom:0}.search-result-table .search-result-table-cell:last-child{border-right:0}.table-row-semantic-evidence .search-result-table-cell{background:#f0f0f0}.clarifications-area{display:flex;max-width:860px;flex-direction:column;gap:18px}.clarification-form{display:flex;flex-direction:column;gap:18px;padding:24px}.source-mode-note{margin:-8px 0 0;color:#a0a0a0;font-size:14px;font-weight:700}.form-note h2{margin:0;color:#0f0f0f;font-size:22px;line-height:1.25}.form-note p{margin:10px 0 20px;color:#6b6b6b;line-height:1.6}.clarification-actions{display:flex;flex-wrap:wrap;gap:10px}.clarification-footer{display:flex;flex-wrap:wrap;gap:16px;padding-top:4px}.questions-grid{display:grid;gap:14px}.clarification-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.clarification-summary div{border:1px solid #E2E2E2;border-radius:8px;padding:14px;background:#fff}.clarification-summary dt{margin-bottom:4px;color:#a0a0a0;font-size:13px;font-weight:700}.clarification-summary dd{margin:0;color:#6b6b6b;font-weight:700}.questions-block{padding:20px}.questions-block h2{margin:0 0 12px;color:#0f0f0f;font-size:20px;line-height:1.25}.questions-block ol{display:grid;gap:10px;margin:0;padding-left:22px;color:#6b6b6b;line-height:1.55}.questions-block p{margin:0;color:#a0a0a0}.product-spec-area{display:flex;max-width:980px;flex-direction:column;gap:18px}.product-spec-panel,.product-spec-preview{border:1px solid #E2E2E2;border-radius:8px;background:#fff}.product-spec-panel{display:flex;flex-direction:column;gap:18px;padding:24px}.check-block{border-radius:8px;padding:12px 14px;font-weight:700}.check-block p{margin:0}.check-block.ready{color:#166534;background:#f0fdf4}.check-block.missing{color:#991b1b;background:#fef2f2}.product-spec-preview{overflow:hidden}.product-spec-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0;background:#1e2535}.product-spec-summary div{min-width:0;padding:12px;background:#fff}.product-spec-summary dt{margin-bottom:4px;color:#a0a0a0;font-size:12px;font-weight:700}.product-spec-summary dd{margin:0;overflow-wrap:anywhere;color:#6b6b6b;font-size:14px;font-weight:700;line-height:1.35}.product-spec-preview pre{max-height:640px;margin:0;overflow:auto;padding:20px;color:#0f0f0f;background:#fafafa;font-size:13px;line-height:1.55}.artifacts-area{display:flex;max-width:980px;flex-direction:column;gap:18px}.artifact-workspace{display:grid;gap:14px}.artifact-summary{border:1px solid #E2E2E2;border-radius:8px;overflow:hidden}.artifact-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:0;border-bottom:1px solid var(--color-border-soft);scrollbar-width:none}.artifact-tabs::-webkit-scrollbar{display:none}.artifact-tab{flex:0 0 auto;min-height:40px;border:none;border-bottom:2px solid transparent;border-radius:0;padding:10px 16px;color:var(--color-text-secondary);background:transparent;cursor:pointer;font-size:14px;font-weight:600;white-space:nowrap;transition:color .15s,border-color .15s}.artifact-tab:hover{color:var(--color-text)}.artifact-tab.active{border-bottom-color:var(--color-text);color:var(--color-text);background:transparent}.artifact-stale-badge{margin-left:5px;font-size:11px}.artifact-action-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.artifact-action-bar-description{color:var(--color-text-secondary);font-size:13px;line-height:1.5;max-width:560px}.artifact-actions{display:flex;flex-wrap:wrap;gap:8px;flex:0 0 auto}.artifact-meta-line{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px;line-height:1.5}.artifact-preview{max-height:680px;margin:0;overflow:auto;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:28px 32px;background:var(--color-card)}.markdown-body{color:var(--color-text);font-size:14px;line-height:1.6}.markdown-body h1{margin:0 0 20px;font-size:22px;font-weight:900;line-height:1.2}.markdown-body h2{margin:28px 0 12px;font-size:17px;font-weight:800;line-height:1.25}.markdown-body h2:first-child{margin-top:0}.markdown-body h3{margin:20px 0 8px;font-size:14px;font-weight:700;line-height:1.3}.markdown-body p{margin:0 0 12px;color:var(--color-text-secondary);line-height:1.6}.markdown-body strong{color:var(--color-text);font-weight:700}.markdown-body em{font-style:italic;color:var(--color-text-secondary)}.markdown-body ul,.markdown-body ol{margin:0 0 12px;padding-left:22px;color:var(--color-text-secondary)}.markdown-body li{margin:4px 0;line-height:1.55}.markdown-body hr{margin:24px 0;border:none;border-top:1px solid var(--color-border-soft)}.markdown-body blockquote{margin:0 0 12px;padding-left:14px;border-left:3px solid var(--color-border);color:var(--color-text-muted);font-style:italic}.markdown-body code{padding:2px 6px;border-radius:4px;background:#f0f0f0;color:var(--color-text);font-family:var(--font-mono);font-size:12px}.markdown-body pre{overflow-x:auto;margin:0 0 16px;border-radius:8px;padding:14px 16px;background:#f5f5f5}.markdown-body pre code{padding:0;background:transparent;font-size:12px;line-height:1.55}.markdown-body table{width:100%;margin:0 0 16px;border-collapse:collapse;font-size:13px}.markdown-body th{padding:8px 12px;border:1px solid var(--color-border-soft);background:#f5f5f5;color:var(--color-text);font-weight:700;text-align:left;white-space:nowrap}.markdown-body td{padding:7px 12px;border:1px solid var(--color-border-soft);color:var(--color-text-secondary);vertical-align:top;line-height:1.45}.markdown-body tr:hover td{background:#00000005}.publishing-page-header{padding:4px 0 8px}.publishing-page-header h1{margin:4px 0 8px;font-size:clamp(22px,3vw,30px);font-weight:900;line-height:1.08}.publishing-page-header p{margin:0;color:var(--color-text-secondary);font-size:15px;line-height:1.6}.publishing-action-group{display:flex;flex-direction:column;gap:10px}.publishing-action-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.publication-link-value{color:var(--color-text-secondary);font-size:13px;line-height:1.5;margin:8px 0;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.artifact-table-wrap{max-height:680px;overflow:auto;border:1px solid #E2E2E2;border-radius:8px;background:#fff}.artifact-table{width:100%;border-collapse:collapse;font-size:14px}.artifact-table th,.artifact-table td{border-bottom:1px solid #e5ebf3;padding:10px 12px;text-align:left;vertical-align:top}.artifact-table th{position:sticky;top:0;color:#6b6b6b;background:#fff;font-size:13px;font-weight:700}.artifact-table td{color:#6b6b6b;line-height:1.45}.empty-table{border:1px solid #E2E2E2;border-radius:8px;padding:20px;color:#a0a0a0;background:#fff;font-weight:700}.answer-list{display:grid;gap:14px}.answer-card{border:1px solid #E2E2E2;border-radius:8px;padding:16px;background:#fafafa}.answer-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.answer-card h3{margin:0;color:#6b6b6b;font-size:16px;line-height:1.45}.answer-card-header-right{display:flex;align-items:center;flex:0 0 auto;gap:8px}.ai-answer-btn{height:28px;border:1px solid var(--color-border);border-radius:999px;padding:0 12px;color:var(--color-text-secondary);background:transparent;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s}.ai-answer-btn:hover:not(:disabled){border-color:var(--color-text-secondary);color:var(--color-text)}.ai-answer-btn:disabled{color:var(--color-text-muted);cursor:default}.ai-answer-all-row{display:flex;align-items:center;gap:12px}.ai-answer-all-hint{color:var(--color-text-muted);font-size:13px}.answer-status{flex:0 0 auto;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.answer-status.filled{color:#166534;background:#f0fdf4}.answer-status.empty{color:#991b1b;background:#fef2f2}.nav-divider{height:1px;margin:8px 10px;background:#ffffff14}.workspace-panel{max-width:100%!important;padding:0!important}.workspace-shell{display:flex;flex-direction:column;min-height:0}.workspace-header{padding:20px 42px 0}.workspace-project-info{display:flex;flex-direction:column;gap:3px;margin-bottom:20px}.workspace-project-name{color:var(--color-text);font-size:22px;font-weight:850;line-height:1.2}.workspace-project-meta{color:var(--color-text-muted);font-size:13px}.workspace-tabs{display:flex;gap:2px;border-bottom:1px solid var(--color-border);padding:0 42px}.workspace-tab{position:relative;min-height:40px;border:none;border-radius:0;padding:0 16px 12px;color:var(--color-text-muted);background:transparent;font-size:14px;font-weight:700;cursor:pointer;transition:color .15s}.workspace-tab:hover{color:var(--color-text-secondary)}.workspace-tab.active{color:#0f0f0f;font-weight:700}.workspace-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;border-radius:2px 2px 0 0;background:#0f0f0f}.workspace-content{padding:28px 42px}.settings-area{display:flex;flex-direction:column;gap:16px;max-width:720px}.llm-provider-section{display:flex;flex-direction:column;gap:20px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:22px;background:var(--color-card)}.llm-provider-form{display:flex;flex-direction:column;gap:16px}.llm-provider-actions{display:flex;flex-wrap:wrap;gap:10px}.llm-key-saved-badge{margin-left:8px;border-radius:999px;padding:2px 8px;color:#166534;background:#f0fdf4;font-size:11px;font-weight:700}.llm-test-result{border-radius:10px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1.5}.llm-test-result.ok{color:#166534;background:#f0fdf4}.llm-test-result.error{color:#991b1b;background:#fef2f2}.api-base-note{border:1px solid #E2E2E2;border-radius:8px;padding:10px 12px;color:#6b6b6b;background:#fff;font-size:13px;font-weight:700}.backend-status,.openai-status{border:1px solid #E2E2E2;border-radius:8px;padding:22px;background:#fff}.backend-status.checking,.backend-status.idle,.openai-status.checking,.openai-status.idle{border-color:#cbd6e4}.backend-status.connected,.openai-status.configured{border-color:#a8d7b8;background:#f0fdf4}.backend-status.unavailable,.openai-status.missing,.openai-status.unavailable{border-color:#f0bdc6;background:#ef444412}.backend-status-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.backend-status h2,.openai-status h2{margin:0;color:#0f0f0f;font-size:22px;line-height:1.25}.backend-status-header p{margin:8px 0 0;color:#6b6b6b;font-size:17px;font-weight:700}.backend-status.connected .backend-status-header p,.openai-status.configured .backend-status-header p{color:#166534}.backend-status.unavailable .backend-status-header p,.openai-status.missing .backend-status-header p,.openai-status.unavailable .backend-status-header p,.backend-message{color:#991b1b}.backend-message{margin:16px 0 0;line-height:1.5}.backend-message.neutral{color:#6b6b6b;font-weight:700}.debug-button{margin-top:16px}.technical-details{display:grid;gap:8px;margin:18px 0 0;border-top:1px solid #d8e0ea;padding-top:16px;color:#a0a0a0;font-size:13px}.technical-details div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px}.technical-details dt{font-weight:700}.technical-details dd{margin:0;overflow-wrap:anywhere}.product-spec-area{width:100%;max-width:1180px;gap:22px}.product-spec-panel,.product-spec-preview,.product-spec-source-context,.product-spec-help-card,.product-spec-readable-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-card);box-shadow:var(--shadow-card)}.productspec-page-header{padding:4px 0 8px}.productspec-page-header h1{margin:4px 0 8px;font-size:clamp(28px,4vw,40px);font-weight:900;line-height:1.08}.productspec-page-header p{margin:0;max-width:680px;color:var(--color-text-secondary);font-size:16px;line-height:1.6}.product-spec-flow{display:flex;flex-wrap:wrap;gap:10px}.product-spec-flow span{display:inline-flex;align-items:center;min-height:36px;border:1px solid rgb(77 162 255 / 18%);border-radius:999px;padding:7px 14px;color:var(--color-purple);background:#f5f8ff;font-size:13px;font-weight:800}.product-spec-flow span:not(:last-child):after{content:"→";margin-left:12px;color:var(--color-magenta)}.product-spec-help-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.product-spec-help-card{padding:20px}.product-spec-help-card h3,.product-spec-readable-card h3{margin:0 0 8px;color:var(--color-text);font-size:17px;font-weight:850}.product-spec-help-card p,.product-spec-readable-card p,.product-spec-panel p,.product-spec-source-context p{color:var(--color-text-secondary);line-height:1.55}.product-spec-panel,.product-spec-source-context,.product-spec-preview{padding:24px}.product-spec-panel h2,.product-spec-source-context h2,.product-spec-preview h2{margin:0;color:var(--color-text);font-size:24px;font-weight:850}.productspec-readiness-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--color-border-soft);border:1px solid var(--color-border-soft);border-radius:var(--radius-card);overflow:hidden}.productspec-readiness-card{display:flex;flex-direction:column;gap:8px;padding:16px 18px;background:var(--color-card)}.productspec-readiness-label{font-family:var(--font-mono);font-size:11px;color:var(--color-text-muted);letter-spacing:.03em}.productspec-readiness-status{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-secondary);line-height:1.4}.productspec-readiness-dot{font-size:8px;line-height:1;flex:0 0 auto}.productspec-readiness-card.ready .productspec-readiness-dot{color:#22c55e}.productspec-readiness-card.partial .productspec-readiness-dot{color:#f59e0b}.productspec-readiness-card.missing .productspec-readiness-dot{color:#d1d5db}.product-spec-source-context{display:grid;gap:18px}.product-spec-source-context .form-note{padding:0;background:transparent}.product-spec-empty-note{margin:0;border:1px dashed rgb(77 162 255 / 26%);border-radius:18px;padding:16px;color:var(--color-text-muted);background:#4da2ff0d}.product-spec-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.product-spec-result-header p{margin:8px 0 0}.product-spec-readiness-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 12px;color:var(--color-purple);background:#f0f0f0;font-size:13px;font-weight:850}.product-spec-quality-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 20px}.product-spec-quality-summary div{border:1px solid var(--color-border-soft);border-radius:18px;padding:14px;background:#fafafa}.product-spec-quality-summary dt{color:var(--color-text-muted);font-size:12px;font-weight:800}.product-spec-quality-summary dd{margin:4px 0 0;color:var(--color-text);font-size:24px;font-weight:900}.product-spec-readable{display:grid;gap:18px;margin-top:20px}.product-spec-tabs{margin:0}.product-spec-readable-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-spec-readable-card{padding:20px}.product-spec-readable-card.wide{grid-column:1 / -1}.product-spec-readable-card pre{max-height:620px;margin:12px 0 0;overflow:auto;border:1px solid var(--color-border-soft);border-radius:18px;padding:18px;color:#0f0f0f;background:#fafafa;font-size:13px;line-height:1.55}.product-spec-readable-list{display:grid;gap:10px}.product-spec-readable-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;border:1px solid var(--color-border-soft);border-radius:16px;padding:14px;background:#fafafa}.product-spec-readable-item p{margin:0;overflow-wrap:anywhere}.product-spec-status-badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:850}.product-spec-status-badge.status-confirmed{color:#087443;background:#00c2a824}.product-spec-status-badge.status-assumption{color:var(--color-purple);background:#f0f0f0}.product-spec-status-badge.status-unknown{color:var(--color-text-muted);background:#fff}.product-spec-status-badge.status-requires_user_answer{color:#9a4b00;background:#ff8a3d29}.product-spec-status-badge.status-conflict{color:#a3153d;background:#ff4fd821}.product-spec-readable-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--color-border-soft);border-radius:18px}.product-spec-readable-table th,.product-spec-readable-table td{border-bottom:1px solid var(--color-border-soft);padding:12px 14px;text-align:left;vertical-align:top}.product-spec-readable-table th{color:var(--color-text-secondary);background:#fafafa;font-size:12px;font-weight:850}.product-spec-readable-table td{color:var(--color-text-secondary);overflow-wrap:anywhere}.product-spec-readable-table tr:last-child td{border-bottom:0}.product-context-source-summary{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}dl.product-context-source-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.product-context-source-summary h3{width:100%;margin:0;color:var(--color-text);font-size:17px;font-weight:850}.product-context-source-summary div{min-width:0}dl.product-context-source-summary div{border:1px solid var(--color-border-soft);border-radius:18px;padding:14px;background:#fafafa}.product-context-source-summary dt{color:var(--color-text-muted);font-size:12px;font-weight:800}.product-context-source-summary dd{margin:4px 0 0;color:var(--color-text);font-size:20px;font-weight:900}.product-context-accordion{display:grid;gap:12px}.product-context-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid rgb(77 162 255 / 12%);border-radius:20px;padding:16px;background:radial-gradient(circle at 0% 0%,rgb(77 162 255 / 8%),transparent 36%),var(--color-card)}.product-context-toolbar h3{margin:0 0 6px;color:var(--color-text);font-size:18px;font-weight:850}.product-context-toolbar p{margin:0;color:var(--color-text-muted);font-size:13px}.product-context-toolbar-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px;justify-content:flex-end}.product-context-toolbar-actions .secondary-button{min-height:36px;padding:8px 12px;font-size:13px}.product-context-usage{display:grid;gap:6px;border-radius:18px;padding:14px 16px}.product-context-usage strong{font-size:14px;font-weight:850}.product-context-usage p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.5;overflow-wrap:anywhere}.product-context-usage.ready{border:1px solid rgb(0 194 168 / 24%);color:#087443;background:#00c2a81a}.product-context-usage.muted{border:1px solid var(--color-border-soft);color:var(--color-text-muted);background:#fafafa}.product-context-item{overflow:hidden;border:1px solid var(--color-border-soft);border-radius:20px;background:#fafafa}.product-context-header{display:grid;width:100%;grid-template-columns:minmax(0,1fr);gap:10px;border:0;padding:16px;color:inherit;background:transparent;text-align:left;cursor:pointer}.product-context-header:hover{background:#4da2ff0d}.product-context-summary{display:flex;min-width:0;align-items:flex-start;gap:10px}.product-context-summary span{flex:0 0 auto;color:var(--color-purple);font-size:18px;font-weight:900;line-height:1.25}.product-context-summary strong{min-width:0;color:var(--color-text);font-size:16px;font-weight:850;line-height:1.25;overflow-wrap:anywhere;word-break:normal}.product-context-badges{display:flex;max-width:100%;flex-wrap:wrap;gap:8px;padding-left:28px}.product-context-badge,.product-context-score-badge{display:inline-flex;max-width:100%;align-items:center;min-height:28px;border-radius:999px;padding:5px 10px;overflow:hidden;font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.product-context-badge{color:var(--color-text-secondary);background:#f5f8ff}.product-context-score-badge{color:var(--color-purple);background:#f0f0f0}.product-context-details{display:grid;gap:14px;border-top:1px solid var(--color-border-soft);padding:18px;background:var(--color-card)}.product-context-details h4{margin:0 0 10px;color:var(--color-text);font-size:16px;font-weight:850}.product-context-table-wrapper{max-height:360px;overflow:auto;border:1px solid var(--color-border-soft);border-radius:18px;background:var(--color-card)}.product-context-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.product-context-table th,.product-context-table td{max-width:320px;border-right:1px solid var(--color-border-soft);border-bottom:1px solid var(--color-border-soft);padding:10px 12px;color:var(--color-text-secondary);text-align:left;vertical-align:top;overflow-wrap:anywhere}.product-context-table th{position:sticky;top:0;z-index:1;color:var(--color-text);background:#fafafa;font-weight:850}.product-context-table tr:last-child td{border-bottom:0}.product-context-table th:last-child,.product-context-table td:last-child{border-right:0}.product-context-text-preview{display:grid;gap:10px}.product-context-text-preview p{max-height:280px;margin:0;overflow:auto;border:1px solid var(--color-border-soft);border-radius:18px;padding:14px;color:var(--color-text-secondary);background:#fafafa;font-size:14px;line-height:1.65;white-space:pre-wrap}.product-context-empty{margin:0;border:1px dashed rgb(77 162 255 / 26%);border-radius:18px;padding:16px;color:var(--color-text-muted);background:#4da2ff0d}.productspec-page{max-width:1200px}.productspec-hero{padding:24px}.productspec-hero h2{font-size:clamp(30px,3.2vw,38px)}.productspec-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.productspec-section-heading h2,.productspec-section-heading p{margin:0}.productspec-section-heading p{max-width:760px;color:var(--color-text-secondary);line-height:1.55}.status-badge{display:inline-flex;align-items:center;width:fit-content;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:850;white-space:nowrap}.status-badge.ready,.status-badge.success{color:#166534;background:#4ade801f}.status-badge.partial{color:#92400e;background:#fbbf241f}.status-badge.missing{color:var(--color-text-muted);background:#fff}.status-badge.problem{color:#991b1b;background:#f871711f}.productspec-how-it-works,.productspec-gen-params,.productspec-regenerate{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-card)}.productspec-how-it-works summary,.productspec-gen-params summary,.productspec-regenerate summary{padding:14px 20px;color:var(--color-text-secondary);font-size:14px;font-weight:600;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none}.productspec-how-it-works summary::-webkit-details-marker,.productspec-gen-params summary::-webkit-details-marker,.productspec-regenerate summary::-webkit-details-marker{display:none}.productspec-how-it-works summary:after,.productspec-gen-params summary:after,.productspec-regenerate summary:after{content:" ›";color:var(--color-text-muted)}.productspec-how-it-works[open] summary:after,.productspec-gen-params[open] summary:after,.productspec-regenerate[open] summary:after{content:" ‹"}.productspec-how-it-works .productspec-stepper-grid{padding:0 20px 20px}.productspec-gen-params>*:not(summary),.productspec-regenerate>*:not(summary){padding-left:20px;padding-right:20px}.productspec-regenerate>*:last-child{padding-bottom:16px}.productspec-stepper{display:grid;gap:16px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:22px;background:var(--color-card);box-shadow:var(--shadow-card)}.productspec-stepper-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.productspec-stepper-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;border:1px solid var(--color-border-soft);border-radius:20px;padding:16px;background:#fafafa}.productspec-stepper-item.ready{border-color:#00c2a83d}.productspec-stepper-item.partial{border-color:#ff8a3d3d}.productspec-stepper-number{display:grid;width:34px;height:34px;place-items:center;border-radius:14px;color:var(--color-white);background:var(--gradient-primary);font-weight:900}.productspec-stepper-item h3{margin:10px 0 6px;color:var(--color-text);font-size:16px;font-weight:850}.productspec-stepper-item p{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.productspec-action-panel{gap:16px}.productspec-action-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.productspec-link-row{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.productspec-footer-row{padding-top:4px;border-top:1px solid var(--color-border-soft)}.link-button{display:inline-flex;align-items:center;border:none;padding:0;background:transparent;color:var(--color-text-secondary);font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:3px;transition:color .15s}.link-button:hover:not(:disabled){color:var(--color-text);text-decoration-color:var(--color-text-secondary)}.link-button:disabled{color:var(--color-text-muted);cursor:default;text-decoration:none}.link-button-small{font-size:12px;font-weight:500}.productspec-action-grid{display:flex;flex-wrap:wrap;gap:10px}.productspec-action-grid button,.productspec-action-grid a,.productspec-quick-nav button{min-height:40px}.productspec-action-grid a{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:999px;padding:10px 18px;color:var(--color-text-secondary);background:var(--color-card);font-weight:700;text-decoration:none;white-space:nowrap}.productspec-action-grid a:hover{border-color:#4da2ff3d;background:#4da2ff0f}.productspec-quick-nav{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--color-border-soft);padding-top:14px}.productspec-quick-nav:before{content:"Быстрые переходы";display:inline-flex;align-items:center;margin-right:4px;color:var(--color-text-muted);font-size:13px;font-weight:800}.gen-mode-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.gen-mode-tabs{display:flex;gap:4px;border:1px solid var(--color-border);border-radius:12px;padding:3px;background:#fafafa}.gen-mode-tab{min-height:32px;border:none;border-radius:9px;padding:5px 14px;color:var(--color-text-secondary);background:transparent;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,color .15s}.gen-mode-tab:hover:not(:disabled){color:var(--color-text);background:#f5f5f5}.gen-mode-tab.active{color:#fff;background:#0f0f0f;box-shadow:none}.gen-mode-tab:disabled{opacity:.5;cursor:not-allowed}.gen-mode-hint{color:var(--color-text-muted);font-size:12px;font-weight:600;white-space:nowrap}.productspec-diagnostics{margin:0;border:1px dashed var(--color-border);border-radius:18px;padding:12px;border-style:dashed;background:#fafafa}.productspec-diagnostics summary{color:var(--color-text-secondary);cursor:pointer;font-size:13px;font-weight:850}.productspec-diagnostics .technical-details{margin-top:12px}.productspec-diagnostics-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-border)}.productspec-clear-action{margin-top:4px}.link-button-danger{background:none;border:none;padding:4px 0;color:#a0a0a0;font-size:13px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#d0d0d0}.link-button-danger:hover:not(:disabled){color:#991b1b;text-decoration-color:#991b1b}.link-button-danger:disabled{opacity:.4;cursor:default;text-decoration:none}.productspec-diagnostics dt{font-size:11px}.productspec-diagnostics dd{font-size:12px}.productspec-tabs{position:sticky;top:0;z-index:2;padding:8px;border-radius:999px;background:#f8fafceb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.productspec-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.productspec-summary-grid div{border:1px solid var(--color-border-soft);border-radius:16px;padding:14px;background:#fafafa}.productspec-summary-grid dt{color:var(--color-text-muted);font-size:12px;font-weight:800}.productspec-summary-grid dd{margin:4px 0 0;color:var(--color-text);font-size:18px;font-weight:900;overflow-wrap:anywhere}.productspec-quality-compact{margin-bottom:18px}.productspec-extended-badge{justify-self:start}.productspec-quality-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 20px}.productspec-quality-checks div{display:flex;align-items:center;gap:10px;border:1px solid var(--color-border-soft);border-radius:16px;padding:12px;background:#fafafa}.productspec-quality-checks p{margin:0;color:var(--color-text-secondary);font-size:14px;font-weight:750}.productspec-result{scroll-margin-top:20px}.productspec-empty-state{border:1px dashed rgb(77 162 255 / 24%);border-radius:var(--radius-card);background:radial-gradient(circle at 0% 0%,rgb(77 162 255 / 8%),transparent 36%),var(--color-white)}.productspec-json-panel pre{max-height:560px}.home-page,.wizard-page,.magic-page{display:grid;gap:22px;width:100%;max-width:1200px}.wizard-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border:1px solid var(--color-border-soft);border-radius:28px;padding:28px;background:radial-gradient(ellipse at 0% 0%,rgb(77 162 255 / 12%),transparent 40%),radial-gradient(ellipse at 100% 100%,rgb(6 182 212 / 8%),transparent 40%),var(--color-card);box-shadow:var(--shadow-card)}.wizard-hero h2{margin:0 0 10px;color:var(--color-text);font-size:clamp(30px,4vw,42px);font-weight:900;line-height:1.08}.wizard-hero p{max-width:760px;margin:0;color:var(--color-text-secondary);font-size:16px;line-height:1.6}.home-hero-text{padding:4px 0 0}.home-hero-text h2{margin:0 0 10px;color:var(--color-text);font-size:clamp(28px,4vw,40px);font-weight:900;line-height:1.08}.home-hero-text p{max-width:680px;margin:0;color:var(--color-text-secondary);font-size:16px;line-height:1.6}.home-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px 28px;background:radial-gradient(ellipse at 0% 0%,rgb(77 162 255 / 10%),transparent 40%),var(--color-card);box-shadow:var(--shadow-card)}.home-cta-text h2{margin:0 0 6px;color:var(--color-text);font-size:22px;font-weight:850}.home-cta-text p{margin:0;color:var(--color-text-secondary);font-size:15px}.home-entry-grid,.magic-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.magic-hero,.magic-input-card,.magic-result-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px;background:var(--color-card);box-shadow:var(--shadow-card)}.magic-hero{background:radial-gradient(ellipse at 0% 0%,rgb(77 162 255 / 12%),transparent 40%),radial-gradient(ellipse at 100% 0%,rgb(6 182 212 / 8%),transparent 40%),var(--color-card)}.magic-hero h1{margin:10px 0;font-size:clamp(32px,4vw,44px);line-height:1.08}.magic-hero p,.magic-result-card p,.magic-input-card p{color:var(--color-text-secondary);line-height:1.6}.magic-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.magic-mode-switcher{display:flex;flex-direction:column;gap:8px}.magic-mode-tabs{display:inline-flex;gap:4px;border:1px solid var(--color-border);border-radius:12px;padding:3px;background:#fafafa;width:fit-content}.magic-mode-tab{min-height:32px;border:none;border-radius:9px;padding:5px 18px;color:var(--color-text-secondary);background:transparent;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,color .15s}.magic-mode-tab:hover{color:var(--color-text);background:#f0f0f0}.magic-mode-tab.active{color:#fff;background:#0f0f0f}.magic-mode-hint{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.magic-input-area{display:flex;flex-direction:column;gap:16px}.magic-result-section{display:grid;grid-template-columns:1fr 1fr;gap:24px 40px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px;background:var(--color-card)}.magic-section-item{display:flex;flex-direction:column;gap:8px}.magic-section-label{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.03em}.magic-section-text{margin:0;color:var(--color-text-secondary);font-size:14px;line-height:1.55;display:flex;flex-direction:column;gap:4px}.magic-section-sub{color:var(--color-text-muted);font-size:13px}.magic-artifact-badges{display:flex;flex-wrap:wrap;gap:6px}.magic-context-confirm{display:flex;flex-direction:column;gap:16px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px 28px;background:var(--color-card)}.magic-context-fields{display:flex;flex-direction:column;gap:14px}.magic-platform-checkboxes{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text);cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer}.magic-context-confirm-actions{display:flex;gap:12px;align-items:center}.magic-create-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.auto-flow-panel{display:flex;flex-direction:column;gap:14px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px 28px;background:var(--color-card)}.auto-flow-stage-label{margin:0;color:var(--color-text);font-size:15px;font-weight:700}.auto-flow-hint{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.auto-flow-bar{height:3px;background:var(--color-border-soft);border-radius:2px;overflow:hidden}.auto-flow-bar-fill{height:100%;background:var(--color-text);border-radius:2px;animation:auto-flow-pulse 2s ease-in-out infinite}@keyframes auto-flow-pulse{0%{width:5%}60%{width:80%}to{width:88%}}.auto-flow-done-title{margin:0;color:var(--color-text);font-size:16px;font-weight:800}.auto-flow-done-hint{margin:0;color:var(--color-text-secondary);font-size:14px;line-height:1.55}.auto-flow-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.magic-flow-list,.magic-question-list ul,.magic-risk-list ul{margin:0;padding-left:20px;color:var(--color-text-secondary);line-height:1.6}.magic-result-card h2{margin-top:0}.home-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;gap:10px;justify-content:flex-end}.home-flow-steps{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px;line-height:1}.home-recent,.wizard-current,.productspec-section-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:22px;background:var(--color-card);box-shadow:var(--shadow-card)}.home-project-list{display:flex;flex-direction:column;margin-top:4px}.home-project-row{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:13px 0;border:none;border-top:1px solid var(--color-border-soft);background:transparent;text-align:left;cursor:pointer;transition:background .1s;border-radius:0}.home-project-row:last-child{border-bottom:1px solid var(--color-border-soft)}.home-project-row:hover{background:#00000006;margin:0 -22px;padding-left:22px;padding-right:22px;border-radius:0}.home-project-row-main{display:flex;flex-direction:column;gap:3px;min-width:0}.home-project-row-main strong{display:block;color:var(--color-text);font-size:15px;font-weight:700}.home-project-platforms{color:var(--color-text-secondary);font-size:13px}.home-project-badge{flex:0 0 auto;border:.5px solid var(--color-border);border-radius:999px;padding:3px 10px;color:var(--color-text-muted);background:transparent;font-size:12px;font-weight:500}.wizard-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;border:1px solid var(--color-border-soft);border-radius:24px;padding:12px;background:var(--color-card);box-shadow:var(--shadow-card)}.wizard-step{display:grid;min-width:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid transparent;border-radius:18px;padding:10px;color:var(--color-text-muted);background:#fafafa;text-align:left;cursor:pointer}.wizard-step span{display:grid;width:28px;height:28px;place-items:center;border-radius:12px;background:#f5f8ff;color:var(--color-purple);font-size:12px;font-weight:900}.wizard-step strong{color:inherit;font-size:12px;font-weight:850;white-space:normal;line-height:1.2}.wizard-step.current{border-color:#4da2ff47;color:var(--color-purple);background:#f5f8ff}.wizard-step.completed{border-color:#00c2a842;color:#087443;background:#00c2a81a}.wizard-step.skipped{border-color:#ff8a3d3d;color:#9a4b00;background:#ff8a3d1f}.wizard-step.blocked{opacity:.55}.wizard-step-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.wizard-current{display:grid;gap:18px}.wizard-footer{position:sticky;bottom:18px;z-index:5;display:flex;justify-content:flex-end;gap:10px;border:1px solid var(--color-border-soft);border-radius:999px;padding:12px;background:#ffffffeb;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.wizard-compact-list{display:grid;gap:10px;margin-top:14px}.wizard-compact-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--color-border-soft);border-radius:18px;padding:14px;background:#fafafa}.wizard-compact-item strong{color:var(--color-text);overflow-wrap:anywhere}.wizard-compact-item p{margin:4px 0 0;color:var(--color-text-muted);font-size:13px}.wizard-result-preview{display:grid;gap:14px;margin-top:16px}.wizard-integrations{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}@media(max-width:760px){.app-shell{flex-direction:column}.sidebar{width:100%;flex-basis:auto;gap:16px;padding:18px}.nav-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{min-height:40px;text-align:center}.content{padding:24px 18px}h1{font-size:30px}.option-grid,.project-meta,.clarification-summary,.delete-diagnostics,.source-options,.product-spec-summary{grid-template-columns:1fr}.projects-toolbar,.project-card-header,.source-card-header,.answer-card-header,.confirm-box,.backend-status-header{align-items:stretch;flex-direction:column}.source-badges,.source-card-actions{justify-content:flex-start}.confirm-actions{flex-direction:column-reverse}.project-card-header span{width:fit-content}.clarification-actions{flex-direction:column}.product-context-toolbar,.product-spec-result-header,.home-hero,.wizard-hero,.wizard-compact-item{align-items:stretch;flex-direction:column}.product-context-toolbar-actions{justify-content:flex-start}.product-context-badges{padding-left:0}dl.product-context-source-summary,.product-spec-readiness-grid,.product-spec-quality-summary,.product-spec-readable-grid,.product-spec-help-grid,.wizard-stepper,.wizard-step-grid{grid-template-columns:1fr}.wizard-footer{position:static;flex-direction:column;border-radius:24px}.technical-details div{grid-template-columns:1fr}}.nav-hint-close{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;color:#1e40af;padding:0 2px;flex-shrink:0}.llm-status-row{display:flex;align-items:center;gap:12px;padding:4px 0 8px}.llm-status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:500}.llm-status-badge.configured{background:#dcfce7;color:#15803d;border:1px solid rgb(134 239 172 / 60%)}.llm-status-badge.missing{background:#ffedd5;color:#c2410c;border:1px solid rgb(253 186 116 / 60%)}.source-processing-status{font-size:12px;color:var(--color-text-muted, #6b7280);font-style:italic}.source-ready-status{font-size:12px;color:#15803d;font-weight:500}.welcome-screen{display:flex;flex-direction:column;align-items:center;gap:40px;padding:60px 32px;text-align:center;max-width:700px;margin:0 auto}.welcome-hero h1{font-size:26px;font-weight:700;margin-bottom:8px;color:var(--color-text, #111)}.welcome-hero p{font-size:16px;color:var(--color-text-muted, #6b7280)}.welcome-steps-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap;justify-content:center}.welcome-step-item{display:flex;flex-direction:column;align-items:center;gap:6px;max-width:160px;text-align:center}.welcome-step-icon{font-size:32px;line-height:1}.welcome-step-item strong{font-size:14px;font-weight:600}.welcome-step-item p{font-size:12px;color:var(--color-text-muted, #6b7280);margin:0}.welcome-step-arrow{font-size:20px;color:var(--color-text-muted, #9ca3af);margin-top:16px;flex-shrink:0}.welcome-cta-btn{font-size:16px;padding:12px 32px}.artifact-next-step-hint{font-size:12px;color:#1e40af;margin:2px 0 0;font-style:italic}.context-auto-status{font-size:13px;padding:8px 12px;border-radius:6px;margin-bottom:8px;background:#eff6ff;color:#1e40af;border:1px solid rgb(96 165 250 / 30%)}.context-auto-status.ready{background:#dcfce7;color:#15803d;border-color:#86efac99}.context-auto-status.muted{background:var(--color-bg-subtle, #f9fafb);color:var(--color-text-muted, #6b7280);border-color:var(--color-border-soft, #e5e7eb)}.conflict-analysis-hint{margin:0;font-size:13px;color:var(--color-text-muted)}.change-section{display:flex;flex-direction:column;gap:12px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:20px 24px;background:var(--color-card)}.change-section .screen-kicker{margin:0}.change-section-title{margin:0;font-size:16px;font-weight:600;color:var(--color-text)}.change-section-subtitle{margin:0;font-size:13px;color:var(--color-text-muted)}.change-preview{display:flex;flex-direction:column;gap:12px}.change-preview-heading{margin:0;font-size:14px;font-weight:600;color:var(--color-text)}.change-summary-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--color-text);line-height:1.5}.change-affected-artifacts{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.change-affected-label{font-size:12px;color:var(--color-text-muted);margin-right:2px}.spec-diff-details{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:8px 14px;background:var(--color-bg-subtle, #f9fafb)}.spec-diff-details>summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--color-text-secondary)}.spec-diff-body{display:flex;flex-direction:column;gap:10px;margin-top:10px}.spec-diff-row{display:flex;flex-direction:column;gap:2px}.spec-diff-label{font-size:13px;font-weight:600}.spec-diff-added{font-size:13px;color:#15803d;padding-left:10px}.spec-diff-removed{font-size:13px;color:#b91c1c;padding-left:10px}.change-preview-conflicts{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:var(--color-bg-subtle, #f9fafb);border-radius:var(--radius-card);border:1px solid var(--color-border-soft)}.change-preview-conflicts-label{margin:0;font-size:12px;font-weight:600;color:var(--color-text-muted)}.change-preview-conflict-item{margin:0;font-size:13px;color:var(--color-text)}.change-preview-actions{display:flex;gap:10px;align-items:center}.artifacts-header-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.artifacts-header-row h2{margin:0}.conflict-panel{display:flex;flex-direction:column;gap:16px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:20px 24px;background:var(--color-card)}.conflict-panel-header{display:flex;align-items:center;gap:10px}.conflict-panel-title{font-size:14px;font-weight:600;color:var(--color-text)}.conflict-panel-count{font-size:12px;font-weight:600;background:var(--color-bg-subtle, #f3f4f6);color:var(--color-text-muted);border-radius:99px;padding:1px 8px}.conflict-section{display:flex;flex-direction:column;gap:10px}.conflict-section-label{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.conflict-card{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:var(--color-bg)}.conflict-card-header{display:flex;align-items:flex-start;gap:8px}.conflict-severity-icon{font-size:13px;flex-shrink:0;margin-top:1px}.conflict-title{flex:1;font-size:13px;font-weight:600;color:var(--color-text);line-height:1.4}.conflict-dismiss-btn{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;color:var(--color-text-muted);padding:0 2px;flex-shrink:0}.conflict-dismiss-btn:hover{color:var(--color-text)}.conflict-description{margin:0;font-size:13px;color:var(--color-text-secondary, var(--color-text-muted));line-height:1.5}.conflict-artifacts{display:flex;flex-wrap:wrap;gap:5px}.conflict-artifact-badge{font-size:11px;padding:2px 8px;border-radius:99px;background:var(--color-bg-subtle, #f3f4f6);color:var(--color-text-muted);border:1px solid var(--color-border-soft)}.conflict-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.conflict-resolution{display:flex;flex-direction:column;gap:8px;padding-top:8px;border-top:1px solid var(--color-border-soft)}.conflict-resolution-text{margin:0;font-size:13px;color:var(--color-text);line-height:1.5}.conflict-resolution-patch{margin:0;font-size:12px;color:var(--color-text-muted);font-style:italic;line-height:1.4}.conflict-changes-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.conflict-change-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-muted)}.conflict-change-item span{flex:1}.conflict-inline-dismiss{background:none;border:none;cursor:pointer;font-size:14px;color:var(--color-text-muted);padding:0 2px;line-height:1;flex-shrink:0}.conflict-inline-dismiss:hover{color:var(--color-text)}.artifact-conflict-badge{margin-left:4px;font-size:11px}.nav-group-label{display:block;padding:4px 10px 2px;color:var(--color-text-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.nav-item-sub{padding-left:22px;font-size:12.5px}.home-two-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:8px}.home-mode-card{display:flex;flex-direction:column;gap:16px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:24px;background:var(--color-card);box-shadow:var(--shadow-card)}.home-mode-card-body{flex:1}.home-mode-icon{font-size:28px;display:block;margin-bottom:8px}.home-mode-card h3{margin:0 0 8px;font-size:18px;font-weight:800;color:var(--color-text)}.home-mode-card p{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.55}.home-project-row-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.setup-gate-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.setup-gate-card{width:min(520px,90vw);border:1px solid var(--color-border-soft);border-radius:16px;padding:36px 40px;background:var(--color-card);box-shadow:0 20px 60px #0003}.change-modal-card{width:min(620px,92vw);max-height:88vh;overflow-y:auto;border:1px solid var(--color-border-soft);border-radius:16px;padding:24px 28px;background:var(--color-card);box-shadow:0 20px 60px #0003}.change-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.change-modal-header h2{margin:2px 0 0;font-size:20px;font-weight:800}.change-modal-close{border:0;background:transparent;color:var(--color-text-muted);font-size:18px;cursor:pointer;line-height:1;padding:4px}.change-modal-sub{margin:0 0 12px;color:var(--color-text-secondary);font-size:14px}.change-modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.change-report{display:flex;flex-direction:column;gap:14px}.change-report-title{margin:0;font-size:16px;font-weight:800;color:#15803d}.change-report-block{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:12px 14px}.change-report-block h4{margin:0 0 6px;font-size:13px;font-weight:700}.change-report-note{margin:0;font-size:13px;color:var(--color-text-secondary)}.change-report-warn{background:#d9770614;border-color:#d97706}.productspec-change-cta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.setup-gate-card h2{margin:0 0 8px;font-size:20px;font-weight:800}.setup-gate-card>p{margin:0 0 24px;color:var(--color-text-secondary);font-size:14px;line-height:1.6}.setup-checklist{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-direction:column;gap:10px}.setup-checklist li{display:flex;flex-direction:column;gap:4px;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;background:var(--color-bg)}.setup-check-ok{color:var(--color-success, #16a34a)}.setup-check-fail{color:var(--color-danger, #dc2626)}.setup-check-pending{color:var(--color-text-muted)}.setup-check-hint{font-size:12px;font-weight:400;color:var(--color-text-secondary);line-height:1.5}.setup-check-hint code{display:inline-block;margin-top:4px;padding:3px 8px;border-radius:4px;background:#0000000f;font-family:var(--font-mono);font-size:11px}.setup-gate-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.workspace-overview{padding:0}.overview-project-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.overview-project-header h2{margin:0 0 4px;font-size:22px;font-weight:800}.overview-project-meta{margin:0;color:var(--color-text-secondary);font-size:14px}.overview-pipeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:24px}.overview-pipeline-step{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border:1px solid var(--color-border-soft);border-radius:10px;background:var(--color-card);cursor:pointer;text-align:center;transition:border-color .15s,box-shadow .15s;font-size:13px;font-weight:500}.overview-pipeline-step:hover{border-color:var(--color-accent);box-shadow:0 0 0 2px #4f8cff1f}.overview-pipeline-step.done{border-color:var(--color-success, #16a34a);background:#16a34a0d}.overview-pipeline-step.partial{border-color:var(--color-warning, #f59e0b);background:#f59e0b0d}.overview-pipeline-step.missing{border-color:var(--color-border-soft);opacity:.7}.pipeline-step-icon{font-size:18px;line-height:1}.pipeline-step-label{font-size:11px;color:var(--color-text-secondary);font-weight:600;line-height:1.3}.overview-checklist{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.overview-checklist-col{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:16px 20px;background:var(--color-card)}.overview-checklist-col h3{margin:0 0 12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.overview-check-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.check-item{display:flex;align-items:center;gap:6px;font-size:14px}.check-item.done{color:var(--color-success, #16a34a)}.check-item.missing{color:var(--color-text-secondary);justify-content:space-between}.check-item.muted{color:var(--color-text-muted);font-style:italic}.overview-next-action{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:radial-gradient(ellipse at 0% 50%,rgb(79 140 255 / 8%),transparent 50%),var(--color-card)}.overview-next-label{margin:0;font-size:13px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.overview-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.workspace-overview-v2{display:flex;flex-direction:column;gap:20px;padding:0}.overview-header-v2{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.overview-project-title{margin:0 0 4px;font-size:24px;font-weight:800;line-height:1.2}.overview-status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:99px;font-size:12px;font-weight:700;white-space:nowrap;flex-shrink:0}.overview-status-gray{background:#7878821f;color:var(--color-text-secondary)}.overview-status-amber{background:#f59e0b26;color:#b45309}.overview-status-blue{background:#4f8cff26;color:#1d4ed8}.overview-status-green{background:#16a34a26;color:#15803d}.overview-status-purple{background:#9333ea26;color:#7e22ce}.overview-readiness-wrap{display:flex;flex-direction:column;gap:8px}.overview-readiness-track{display:flex;align-items:flex-start;gap:0}.overview-readiness-line{flex:1;height:2px;margin-top:15px;background:var(--color-border-soft);transition:background .2s}.overview-readiness-line.done{background:var(--color-success, #16a34a)}.overview-readiness-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:0 0 auto;width:92px}.overview-readiness-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid var(--color-border-soft);background:var(--color-bg);color:var(--color-text-muted);transition:all .2s}.overview-readiness-circle.done{background:var(--color-success, #16a34a);border-color:var(--color-success, #16a34a);color:#fff}.overview-readiness-circle.current{border-color:var(--color-accent);background:#4f8cff1a;color:var(--color-accent)}.overview-readiness-label{font-size:11px;color:var(--color-text-secondary);font-weight:600;text-align:center;white-space:nowrap}.overview-readiness-caption{margin:0;font-size:12px;color:var(--color-text-muted);text-align:center}.overview-command{display:flex;flex-direction:column;gap:6px}.overview-command-row{display:flex;gap:8px}.overview-command-input{flex:1;padding:10px 14px;border:1px solid var(--color-border-soft);border-radius:var(--radius-card);background:var(--color-card);font-size:14px}.overview-command-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #4f8cff1f}.overview-command-feedback{margin:0;font-size:13px;color:var(--color-text-secondary)}.overview-health{padding:10px 16px;border-radius:var(--radius-card);font-size:14px;font-weight:600}.overview-health-ok{background:#16a34a1a;color:#15803d}.overview-health-warn{background:#d977061a;color:#b45309}.overview-flag-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-radius:var(--radius-card);border-left:4px solid}.overview-flag-actions{display:flex;gap:8px;flex-shrink:0}.overview-flag-conflict{background:#ea580c14;border-color:#ea580c}.overview-flag-stale{background:#f59e0b14;border-color:#d97706}.overview-flag-text{display:flex;flex-direction:column;gap:2px}.overview-flag-text strong{font-size:14px;font-weight:700}.overview-flag-text span{font-size:13px;color:var(--color-text-secondary)}.overview-next-card{padding:20px 24px;border-radius:var(--radius-card);border:1px solid var(--color-border-soft)}.overview-next-card-default{background:radial-gradient(ellipse at 0% 50%,rgba(79,140,255,.08),transparent 60%),var(--color-card)}.overview-next-card-conflict{background:#ea580c0f;border-color:#ea580c}.overview-next-card-stale{background:#f59e0b0f;border-color:#d97706}.overview-next-kicker{margin:0 0 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.overview-next-action-text{margin:0 0 16px;font-size:18px;font-weight:700}.overview-next-buttons{display:flex;flex-wrap:wrap;gap:10px}.overview-quick-actions-v2{display:flex;flex-wrap:wrap;gap:8px}.overview-publications{border:1px solid var(--color-border-soft);border-radius:var(--radius-card);padding:16px 20px;background:var(--color-card)}.overview-section-label{margin:0 0 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.overview-pub-list{display:flex;flex-direction:column;gap:10px}.overview-pub-item{display:flex;align-items:center;gap:10px;font-size:14px}.overview-pub-icon{font-size:18px;line-height:1;flex-shrink:0}.overview-pub-name{flex:1;font-weight:500}.settings-group{display:flex;flex-direction:column;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--color-border);margin-bottom:8px}.settings-group:last-child{border-bottom:none}.settings-group-title{margin:0 0 4px;font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}.settings-diagnostics>summary{cursor:pointer;font-size:13px;color:var(--color-text-muted);padding:8px 0}.productspec-action-panel{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:16px}.productspec-action-cols{display:flex;gap:24px;flex-wrap:wrap}.productspec-action-section{flex:1;min-width:160px}.productspec-action-section h4{margin:0 0 8px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.productspec-action-section ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.productspec-action-section li{font-size:13px;color:var(--color-text)}.productspec-action-done li{color:var(--color-success, #22c55e)}.productspec-action-todo li{color:var(--color-warning, #f59e0b)}.productspec-action-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.oauth-hint{font-size:13px;padding:10px 14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text-muted);margin-bottom:8px}.spec-versions-panel{margin-bottom:16px}.spec-versions-toggle{background:none;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:6px 14px;font-size:12px;color:var(--color-text-muted);cursor:pointer;width:100%;text-align:left}.spec-versions-toggle:hover{border-color:var(--color-accent, #4f8cff);color:var(--color-text)}.spec-versions-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.spec-version-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-card)}.spec-version-label{font-size:13px;color:var(--color-text-muted)}
