:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg-color: #ffffff;--bg-color-light: #f8fafc;--text-color: #333333;--text-muted: #6b7280;--border-color: #ccc;--active-bg: #f0f0f0;--hover-bg: #e5e7eb;--shadow-color: rgba(0, 0, 0, .1);--input-bg: #ffffff;--button-bg: #007bff;--button-text: #ffffff;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--brand-color: #667eea;--status-success-bg: #d4edda;--status-success-text: #155724;--status-failure-bg: #f8d7da;--status-failure-text: #721c24;--status-partial-bg: #fff3cd;--status-partial-text: #856404;--status-info-bg: #e3f2fd;--status-sites-bg: #e0f2fe;--status-sites-text: #0369a1;--status-neutral-bg: #e8f5e8}@media (prefers-color-scheme: dark){:root{--bg-color: #0a0a0a;--bg-color-light: #1a1a1a;--text-color: #ffffff;--text-muted: #9ca3af;--border-color: #333;--active-bg: #1a1a1a;--hover-bg: #333;--shadow-color: rgba(255, 255, 255, .1);--input-bg: #1a1a1a;--button-bg: #667eea;--button-text: #ffffff;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--brand-color: #667eea;--status-success-bg: #1d4d20;--status-success-text: #90c695;--status-failure-bg: #4d1d1d;--status-failure-text: #f5a3a3;--status-partial-bg: #4d4520;--status-partial-text: #f5d98a;--status-info-bg: #1d3557;--status-sites-bg: #164e63;--status-sites-text: #7dd3fc;--status-neutral-bg: #2d4a2d}}body{background:var(--bg-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{max-width:1280px;margin:0 auto;padding:1rem;background-color:var(--bg-color);color:var(--text-color);height:100dvh}.app-container{display:flex;flex-direction:column;gap:2rem;width:100%}.app-header{text-align:center;padding:2rem 0;background:var(--gradient-primary);border-radius:16px;margin-bottom:1rem;box-shadow:0 10px 40px var(--shadow-color)}@keyframes sparkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.1) rotate(5deg)}}.text-area{width:100%;height:200px;margin-bottom:10px;padding:16px;box-sizing:border-box;resize:none;background-color:var(--input-bg);color:var(--text-color);border:2px solid var(--border-color);border-radius:12px;font-family:inherit;font-size:14px;line-height:1.5;transition:border-color .3s ease,box-shadow .3s ease}.text-area:focus{outline:none;border-color:var(--brand-color);box-shadow:0 0 0 3px #667eea1a}.text-area::placeholder{color:var(--text-color);opacity:.6}.card{padding:2rem;display:flex;gap:24px;background-color:var(--bg-color);border-radius:16px;box-shadow:0 4px 20px var(--shadow-color);border:1px solid var(--border-color)}.two-column-layout{display:flex;justify-content:space-between;max-width:100%;margin:0}.input-container{flex:0 0 300px!important;width:300px!important;margin-right:20px!important;display:flex!important;flex-direction:column!important;height:100%!important}.output-container{flex:1!important;position:relative!important;display:flex!important;flex-direction:column!important;height:100%!important;overflow:hidden!important;box-sizing:border-box!important}.page-container{position:relative;width:100%}.page-header{margin-bottom:20px}.page-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-color)}.page-subtitle{color:var(--text-color);opacity:.7;font-size:1rem}.output-container{display:flex;flex-direction:column}.metadata-grid{position:static;height:auto;grid-template-columns:150px 1fr;gap:8px;align-items:start;overflow:visible}.metadata-stats{position:static;height:auto;display:grid;grid-template-columns:150px 150px 1fr;align-items:center;justify-content:start}.stat-item{display:flex;align-items:center;gap:8px;height:30px;flex-wrap:nowrap}.stat-label{font-size:14px;font-weight:600;white-space:nowrap;flex-shrink:0}.stat-badge{padding:4px 8px;border-radius:4px;font-weight:700;text-align:center;font-size:14px;line-height:1;flex-shrink:0}.stat-badge--ideas{background:var(--status-info-bg)}.stat-badge--sites{background:var(--status-sites-bg);color:var(--status-sites-text)}.stat-badge--success{background:var(--status-success-bg);color:var(--status-success-text);min-width:30px}.stat-badge--failure{background:var(--status-failure-bg);color:var(--status-failure-text);min-width:30px}.stat-badge--partial{background:var(--status-partial-bg);color:var(--status-partial-text);min-width:30px}.stat-badge--total{background:var(--status-neutral-bg);min-width:40px}.stat-text{font-size:12px;color:var(--text-color);opacity:.7;flex-shrink:0}.requirements-text{word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;line-height:1.3;font-size:14px;max-height:38px;cursor:help}.form-field{margin-bottom:10px}.form-label{display:block;margin-bottom:5px;font-weight:700;font-size:14px;color:var(--text-color)}.form-select{width:100%;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--input-bg);color:var(--text-color);transition:border-color .2s ease}.form-select:focus{outline:none;border-color:var(--brand-color)}@media (max-width: 768px){#root{padding:0}.app-header{padding:1.5rem 1rem;margin-bottom:1rem}.card{flex-direction:column;padding:1rem;gap:16px;min-height:auto;height:auto!important;max-height:none!important}.input-container{flex:none!important;width:100%!important;margin-right:0!important;height:auto!important;overflow-y:visible!important}.output-container{flex:none!important;width:100%!important;margin-left:0!important;height:auto!important}.text-area{height:120px;font-size:16px}.metadata-stats{position:static!important;height:auto!important;margin-bottom:10px!important;grid-template-columns:1fr!important;gap:4px!important}}@media (max-width: 480px){.card{padding:.75rem}.text-area{padding:12px;height:100px}}.text-area--ideas{width:100%;height:150px;flex-shrink:0}.metadata-container--ideas{text-align:left;margin-bottom:10px;padding:15px;background:var(--bg-color-light);border:1px solid var(--border-color);border-radius:8px;flex-shrink:0;width:100%;box-sizing:border-box;min-height:auto;max-height:none;height:auto;display:block;overflow:visible;position:static;display:flex;flex-direction:column;justify-content:space-between}.navigation{position:fixed;top:0;left:0;width:240px;height:100vh;background:var(--bg-color);border-right:1px solid var(--border-color);z-index:1000;display:flex;flex-direction:column;box-shadow:2px 0 10px var(--shadow-color)}.navigation-header{padding:1.5rem 1rem;border-bottom:1px solid var(--border-color);background:var(--gradient-primary)}.navigation-brand{display:flex;align-items:center;gap:.75rem;color:#fff}.navigation-brand-icon{font-size:1.5rem;animation:sparkle 2s ease-in-out infinite}.navigation-brand-text{font-size:1.5rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.navigation-menu{flex:1;padding:1rem 0;overflow-y:auto}.navigation-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-color);text-decoration:none;transition:all .2s ease;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-size:.95rem;font-weight:500}.navigation-item:hover{background-color:var(--active-bg);transform:translate(4px)}.navigation-item.active{background:var(--gradient-primary);color:#fff;box-shadow:0 2px 8px #667eea4d}.navigation-item-icon{font-size:1.2rem;width:20px;text-align:center;flex-shrink:0}.navigation-item-text{flex:1}.main-content{position:absolute;left:240px;right:0;min-height:100vh;background-color:var(--bg-color);overflow-x:hidden}.page-container{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}@media (max-width: 768px){.navigation{width:100%;height:auto;position:relative;box-shadow:none;border-right:none;border-bottom:1px solid var(--border-color)}.navigation-menu{flex-direction:row;overflow-x:auto;padding:.5rem 0}.navigation-item{flex-direction:column;gap:.25rem;padding:.5rem;min-width:80px;text-align:center;white-space:nowrap}.navigation-item-text{font-size:.8rem}.main-content{position:static;left:auto;right:auto}.page-container{padding:0}}.content-generation-page{min-height:100vh;background:var(--bg-gradient);padding:2rem}.page-header{text-align:center;margin-bottom:2rem}.page-header h1{font-size:2.5rem;font-weight:700;color:var(--text-color);margin-bottom:.5rem}.emoji{color:var(--brand-color)}.page-header p{font-size:1.1rem;color:var(--text-muted)}.page-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto}.article-generation-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}@media (max-width: 1200px){.article-generation-layout{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.article-generation-layout{grid-template-columns:1fr;grid-template-rows:auto auto}.list-panel{order:2}.form-panel{order:1}.article-generation-layout .generation-list{max-height:none;height:auto}.article-generation-layout .generation-items{max-height:400px}}.form-panel,.list-panel{display:flex;flex-direction:column;gap:1.5rem}.article-generation-layout .generation-list{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px var(--shadow-color);height:fit-content;max-height:70vh;overflow:hidden;display:flex;flex-direction:column}.article-generation-layout .generation-items{overflow-y:auto;flex:1}.article-generation-layout .generation-list-title{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-color);flex-shrink:0}.article-generation-layout .empty-state{text-align:center;padding:2rem 1rem;color:var(--text-muted)}.article-generation-layout .empty-subtitle{font-size:.875rem;margin-top:.5rem}.article-generation-layout .loading-state{text-align:center;padding:2rem 1rem;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:1rem}.left-panel,.right-panel{display:flex;flex-direction:column;gap:1.5rem}.right-panel.hidden{display:none}.right-panel.full-width{grid-column:1 / -1;min-width:0;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-group label{display:block;font-weight:500;color:var(--text-color);margin-bottom:.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:1.1rem;font-weight:600;color:var(--text-color);margin:0}.primary-button{background:var(--gradient-primary);color:#fff;border:none;padding:.875rem 1.5rem;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;flex:1;min-width:150px}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea40}.primary-button:disabled{opacity:.6;cursor:not-allowed}.generation-list{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px var(--shadow-color)}.generation-list.empty{text-align:center;padding:3rem 1.5rem}.list-title{font-size:1.1rem;font-weight:600;color:var(--text-color);margin-bottom:1rem}.generation-items{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto}.generation-item{background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;padding:1rem;cursor:pointer;transition:all .3s ease}.generation-item:hover{border-color:var(--brand-color);transform:translateY(-1px)}.generation-item.selected{border-color:var(--brand-color);background:#667eea0d}.item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.status-icon{font-size:1rem}.timestamp{font-size:.75rem;color:var(--text-muted);margin-left:auto}.item-content{font-size:.875rem}.request-preview{color:var(--text-color);line-height:1.4;margin-bottom:.5rem}.global-request-tooltip{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:.75rem;font-size:.75rem;color:var(--text-color);line-height:1.4;box-shadow:0 8px 25px #0003;max-width:400px;max-height:200px;overflow-y:auto;word-wrap:break-word;animation:fadeIn .2s ease;pointer-events:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.error-preview{color:#ff4757;font-size:.75rem}.running-indicator{display:flex;align-items:center;gap:.5rem;color:var(--brand-color);font-size:.75rem}.success-info{color:#2ed573;font-size:.75rem}.spinner-small{width:12px;height:12px;border:2px solid var(--border-color);border-top:2px solid var(--brand-color);border-radius:50%;animation:spin 1s linear infinite}.content-generation-results{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 20px var(--shadow-color);overflow:hidden;width:100%;min-width:0}.results-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--input-bg);border-bottom:1px solid var(--border-color);min-width:0;overflow:hidden;flex-wrap:wrap}.status-info{display:flex;align-items:center;gap:.75rem;min-width:0;flex:1}.status-icon{font-size:1.25rem}.run-id{font-family:Monaco,Menlo,monospace;font-size:.75rem;color:var(--text-muted);background:var(--border-color);padding:.25rem .5rem;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.status-text{font-weight:600;color:var(--text-color);text-transform:capitalize;white-space:nowrap;flex-shrink:0}.live-counters{background:var(--brand-color);color:#fff;padding:.25rem .5rem;border-radius:8px;font-size:.75rem;font-weight:600;white-space:nowrap}.error-message{color:#ff4757;font-size:.875rem}.expand-toggle{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);transition:color .3s ease;flex-shrink:0}.expand-toggle:hover{color:var(--text-color)}.results-content{padding:1.5rem}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--brand-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.content-view{animation:fadeIn .3s ease}.content-section{background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 1.5rem .5rem;margin-bottom:1.5rem;font-size:1.1rem;font-weight:600;color:var(--text-color);margin-bottom:1rem;border-bottom:1px solid var(--border-color)}.section-blocks{display:flex;flex-direction:column;gap:1rem}.content-block{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.heading-block h4{font-size:1rem;font-weight:600;color:var(--text-color);margin:0 0 .25rem}.heading-block small{color:var(--text-muted);font-size:.75rem}.text-block .markdown-content{color:var(--text-color);line-height:1.6;font-size:.875rem}.image-block .image-placeholder,.visual-info-block .visual-info-placeholder{background:var(--input-bg);border:2px dashed var(--border-color);border-radius:8px;padding:1.5rem;color:var(--text-muted);font-size:.875rem}.element-reference{font-weight:600;color:var(--text-color);margin-bottom:.75rem;text-align:center}.element-preview{background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:1rem;color:var(--text-color);font-size:.875rem;line-height:1.6;text-align:left;margin-top:.5rem}.element-preview .markdown-content{color:var(--text-color);line-height:1.6;font-size:.875rem}.element-preview .markdown-content h1,.element-preview .markdown-content h2,.element-preview .markdown-content h3,.element-preview .markdown-content h4,.element-preview .markdown-content h5,.element-preview .markdown-content h6{margin:.5rem 0 .25rem;font-weight:600}.element-preview .markdown-content p{margin:.25rem 0}.element-preview .markdown-content ul,.element-preview .markdown-content ol{margin:.25rem 0;padding-left:1.5rem}.element-preview .markdown-content li{margin:.125rem 0}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1400px){.page-content{grid-template-columns:1fr;gap:1.5rem}}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.content-generation-page{padding:1rem}.primary-button{min-width:unset}}.pagination-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem 0 0;margin-top:1rem;border-top:1px solid var(--border-color)}.pagination-btn{background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-color);cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:var(--brand-color);border-color:var(--brand-color);color:#fff}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:.875rem;color:var(--text-muted);white-space:nowrap}.research-data-page{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;background:#0a0a0a;z-index:1000}.research-data-page .page-header{padding:1.5rem 2rem;border-bottom:1px solid #2a2a2a;background:#1a1a1a;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.research-data-page .page-header h1{margin:0;font-size:1.5rem;color:#e0e0e0}.research-data-page .page-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.research-layout{flex:1;overflow:hidden;display:flex;flex-direction:column;width:100%;max-width:1400px;margin:0 auto}.facts-panel-main{flex:1;overflow:hidden;display:flex;flex-direction:column;background:#0a0a0a}.panel-header{padding:1.5rem 2rem;border-bottom:1px solid #2a2a2a;display:flex;justify-content:space-between;align-items:center;background:#0a0a0a;flex-shrink:0}.panel-header h2{margin:0;font-size:1.2rem;color:#e0e0e0}.count-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.3rem .8rem;border-radius:14px;font-size:.85rem;font-weight:600}.facts-list-main{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem;align-content:start}.fact-card-main{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:6px;padding:.75rem 1rem;cursor:pointer;transition:all .15s ease;display:flex;flex-direction:column;gap:.5rem}.fact-card-main:hover{border-color:#667eea;background:#1f1f1f;box-shadow:0 2px 8px #667eea26}.fact-card-main.active{border-color:#667eea;background:#2a2a40;box-shadow:0 2px 8px #667eea33}.fact-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.fact-entity-info{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.entity-name-fact{font-size:.9rem;font-weight:600;color:#e0e0e0;line-height:1.3}.entity-type-fact{display:inline-block;background:linear-gradient(135deg,#ffeaa7,#fdcb6e);color:#2d3436;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;width:fit-content}.fact-relation-info{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.relation-arrow-vertical{color:#555;font-size:1rem;font-weight:700}.relation-name-fact{background:linear-gradient(135deg,#2d4a2d,#1e3a1e);color:#81c784;padding:.25rem .75rem;border-radius:12px;font-weight:600;font-size:.85rem;text-transform:lowercase;border:1px solid #3d5a3d;white-space:nowrap}.fact-meta{font-size:.75rem;color:#888;margin-left:auto}.fact-episodes-expanded{margin-top:.5rem;padding-top:1rem;border-top:2px solid #2a2a2a}.episodes-header-inline{font-size:.95rem;font-weight:600;color:#8ab4f8;margin-bottom:1rem}.episode-card-inline{background:#0f0f0f;border-left:3px solid #667eea;border-radius:6px;padding:1rem;margin-bottom:.75rem}.episode-number-inline{font-size:.75rem;color:#8ab4f8;font-weight:600;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.episode-text-inline{color:#ccc;line-height:1.7;font-size:.9rem;white-space:pre-wrap;word-wrap:break-word}.nav-button{padding:.6rem 1.2rem;background:#1a1a1a;color:#e0e0e0;border:1px solid #2a2a2a;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s ease;font-weight:500}.nav-button:hover{background:#252525;border-color:#667eea;transform:translateY(-1px);box-shadow:0 2px 8px #667eea33}.facts-list-main::-webkit-scrollbar{width:10px}.facts-list-main::-webkit-scrollbar-track{background:#0a0a0a}.facts-list-main::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:5px}.facts-list-main::-webkit-scrollbar-thumb:hover{background:#3a3a3a}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#666;padding:3rem}.empty-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.3}.empty-state h3{margin:0 0 .75rem;color:#aaa;font-size:1.3rem}.empty-state p{margin:0;font-size:1rem;color:#777}@media (max-width: 768px){.facts-list-main{padding:.75rem}.fact-row{flex-direction:column;align-items:flex-start;gap:.5rem}.fact-meta{margin-left:0}.research-data-page .page-header{padding:1rem;flex-direction:column;gap:1rem}}.article-generation-form{background:var(--bg-color);border:1px solid var(--border-color);border-radius:16px;padding:2rem;box-shadow:0 4px 20px var(--shadow-color)}.article-generation-form.collapsed{padding:1rem 2rem;cursor:pointer;transition:all .3s ease}.article-generation-form.collapsed:hover{border-color:var(--brand-color)}.form-summary{display:flex;flex-direction:column;gap:.5rem}.form-title{font-size:1.5rem;font-weight:600;color:var(--text-color);margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:600;color:var(--text-color);margin-bottom:.75rem;font-size:.95rem;letter-spacing:.02em}.form-textarea{width:100%;min-height:180px;padding:1.25rem;border:2px solid var(--border-color);border-radius:12px;background-color:var(--input-bg);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;font-size:.9375rem;line-height:1.6;resize:vertical;transition:all .3s ease;box-sizing:border-box;box-shadow:0 2px 4px #0000000a}.form-textarea::placeholder{color:var(--text-muted);opacity:.6;font-style:italic}.form-textarea:hover{border-color:var(--brand-color);box-shadow:0 2px 8px #0000000f}.form-textarea:focus{outline:none;border-color:var(--brand-color);box-shadow:0 0 0 4px #667eea1f,0 4px 12px #00000014;background-color:var(--bg-color)}.form-actions{display:flex;flex-direction:column;gap:1.5rem;margin-top:2rem}.button-group{display:flex;flex-direction:column;gap:.75rem}.button-group-label{font-size:.875rem;font-weight:600;color:var(--brand-color);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.request-helpers{display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem}.request-helpers .button-group-label{width:100%}.helper-button{flex:1;min-width:150px;padding:.875rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.helper-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.helper-button:active{transform:translateY(0)}.helper-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.generation-actions{display:flex;flex-direction:column;gap:.75rem}.generate-main{width:100%;padding:1rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #667eea66}.generate-main:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 30px #667eea80}.generate-main:active{transform:translateY(-1px)}.generate-main:disabled{opacity:.6;cursor:not-allowed;transform:none}.utility-actions{display:flex;flex-direction:row;gap:.75rem}.utility-button{flex:1;padding:.75rem 1rem;background:var(--border-color);color:var(--text-color);border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.utility-button:hover:not(:disabled){background:var(--hover-bg);transform:translateY(-1px)}.utility-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.article-generation-form{padding:1.5rem}.form-actions{gap:1rem}.request-helpers{flex-direction:column}.helper-button{width:100%}.utility-actions{flex-direction:column}.utility-button{width:100%}}.toast-notification{position:fixed;top:20px;right:20px;padding:1rem 1.5rem;color:#fff;border-radius:10px;font-weight:600;font-size:.95rem;z-index:1000;animation:toast-slide-in .3s ease-out}.toast-loading{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 20px #f59e0b66}.toast-success{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 20px #10b98166;animation:toast-slide-in .3s ease-out,toast-fade-out .3s ease-in 2.7s forwards}.toast-failed{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 20px #ef444466}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-fade-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.generation-progress{background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px var(--shadow-color);display:flex;flex-direction:column;min-height:200px;max-height:80vh}.generation-progress.loading{min-height:120px}.progress-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(135deg,var(--brand-color) 0%,#6366f1 100%);color:#fff}.progress-header h3{margin:0;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}.progress-stats{display:flex;gap:12px}.progress-stats .stat{font-size:12px;opacity:.9}.progress-stats .stat-value{font-weight:700;margin-right:3px}.progress-stats .stat.running{color:#fef08a}.progress-stats .stat.failed{color:#fca5a5}.progress-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--text-muted)}.current-stage{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-bottom:1px solid #93c5fd;padding:12px 16px}.current-stage-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.current-stage-name{font-weight:600;font-size:15px;color:#1e3a8a;flex:1}.current-stage-count{font-size:12px;color:#3b82f6;background:#fff;padding:2px 8px;border-radius:10px}.current-stage-tools{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid #93c5fd}.current-stage-tool{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#ffffff80;border-radius:6px;font-size:12px}.current-stage-tool .tool-name{font-weight:500;color:#1e40af}.current-stage-tool .tool-preview{flex:1;color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-stage-tool .tool-duration{font-size:10px;color:#64748b;font-family:monospace}.current-operation{background:#fff;border-radius:8px;padding:12px;margin-top:8px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.current-operation-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.current-operation-icon{font-size:20px}.current-operation-title{flex:1;display:flex;flex-direction:column;gap:2px}.current-operation-name{font-weight:600;font-size:15px;color:#1e3a8a}.current-operation-type{font-size:11px;color:#3b82f6;text-transform:uppercase;letter-spacing:.5px}.current-operation-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.current-operation-elapsed{font-size:13px;font-weight:600;color:#1e40af;font-family:monospace}.current-operation-time{font-size:11px;color:#64748b;font-family:monospace}.current-operation-details{background:#fff;border-radius:8px;padding:12px;margin-top:8px}.current-operation-detail{display:flex;gap:8px;padding:6px 0;border-bottom:1px solid #e2e8f0}.current-operation-detail:last-child{border-bottom:none;padding-bottom:0}.current-operation-detail:first-child{padding-top:0}.detail-label{font-size:12px;font-weight:600;color:#64748b;min-width:60px;flex-shrink:0}.detail-value{font-size:13px;color:#1e293b;word-break:break-word;line-height:1.5}.current-operation-description{font-size:13px;color:#475569;font-style:italic;margin-top:8px;padding-left:32px}.current-operation-markdown{background:#fff;border-radius:6px;padding:12px;font-size:13px;line-height:1.6;max-height:300px;overflow-y:auto;flex:1}.current-operation-markdown h1,.current-operation-markdown h2,.current-operation-markdown h3{margin-top:.5em;margin-bottom:.3em}.current-operation-markdown h1:first-child,.current-operation-markdown h2:first-child,.current-operation-markdown h3:first-child{margin-top:0}.current-operation-markdown p{margin:.4em 0}.history-section{border-top:1px solid var(--border-color);flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.history-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--input-bg);border-bottom:1px solid var(--border-color)}.history-title{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.history-count{font-size:11px;color:var(--text-muted)}.history-list{flex:1;overflow-y:auto}.history-list::-webkit-scrollbar{width:4px}.history-list::-webkit-scrollbar-track{background:var(--bg-color)}.history-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.stage-group{border-bottom:1px solid var(--border-color)}.stage-group:last-child{border-bottom:none}.stage-header{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:13px;transition:background .15s ease}.stage-header.clickable{cursor:pointer}.stage-header.clickable:hover{background:var(--input-bg)}.stage-header.completed{color:var(--text-color)}.stage-header.failed{color:#dc2626}.stage-header.running{color:#2563eb}.stage-name{font-weight:600;flex:1}.stage-tool-count{font-size:11px;color:var(--text-muted);background:var(--input-bg);padding:2px 8px;border-radius:10px}.stage-duration{font-size:11px;color:var(--text-muted);font-family:monospace;background:var(--bg-color);padding:2px 6px;border-radius:4px}.stage-tools{padding-left:24px;background:var(--input-bg);border-top:1px solid var(--border-color)}.history-item-wrapper{border-bottom:1px solid var(--border-color)}.history-item-wrapper:last-child{border-bottom:none}.history-item-wrapper.expanded{background:#00000005}.history-item{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:12px;transition:background .15s ease}.history-item.clickable{cursor:pointer}.history-item.clickable:hover{background:var(--input-bg)}.history-item-wrapper.expanded .history-item{background:transparent}.history-item.completed{color:var(--text-color)}.history-item.failed{color:#dc2626}.history-icon{font-size:14px;flex-shrink:0}.tool-icon-small{font-size:12px}.history-name{font-weight:500;flex-shrink:0}.history-preview{color:var(--text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.history-duration{font-size:10px;color:var(--text-muted);font-family:monospace;background:var(--bg-color);padding:2px 6px;border-radius:4px;flex-shrink:0}.expand-arrow{font-size:10px;color:var(--text-muted);transition:transform .2s ease;flex-shrink:0}.expand-arrow.expanded{transform:rotate(90deg)}.history-error{flex-shrink:0}.history-details{padding:8px 16px 12px 40px;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.history-detail-section{margin-bottom:8px}.history-detail-section:last-child{margin-bottom:0}.history-detail-section.error{color:#dc2626}.history-detail-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:4px}.history-detail-content{background:var(--bg-color);border-radius:6px;padding:8px 10px;font-size:12px;border:1px solid var(--border-color)}.history-detail-row{display:flex;gap:8px;padding:3px 0}.history-detail-row:first-child{padding-top:0}.history-detail-row:last-child{padding-bottom:0}.detail-key{font-weight:500;color:var(--text-muted);flex-shrink:0}.detail-val{color:var(--text-color);word-break:break-word;line-height:1.4}.history-yaml{margin:0;font-size:11px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;white-space:pre-wrap;word-break:break-word;max-height:500px;overflow-y:auto;background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:10px 12px;line-height:1.5;color:var(--text-color)}.history-output-preview{color:#059669;font-weight:500}.history-markdown-content{background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:12px 16px;font-size:13px;line-height:1.6;max-height:400px;overflow-y:auto}.history-markdown-content h1,.history-markdown-content h2,.history-markdown-content h3,.history-markdown-content h4{margin-top:.8em;margin-bottom:.4em}.history-markdown-content h1:first-child,.history-markdown-content h2:first-child,.history-markdown-content h3:first-child{margin-top:0}.history-markdown-content p{margin:.5em 0}.history-markdown-content ul,.history-markdown-content ol{margin:.5em 0;padding-left:1.5em}.history-markdown-content code{background:var(--input-bg);padding:2px 6px;border-radius:4px;font-size:.9em}.history-detail-section.error .history-detail-content{background:#fef2f2;border-color:#fecaca}.status-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:10px;font-weight:700;flex-shrink:0}.status-icon.completed{background:#22c55e;color:#fff}.status-icon.failed{background:#ef4444;color:#fff}.status-icon.running{background:transparent}.status-icon.pending{background:var(--border-color);color:var(--text-muted)}.spinner{width:16px;height:16px;border:2px solid #93c5fd;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.current-operation .spinner{width:18px;height:18px;border-color:#bfdbfe;border-top-color:#2563eb}.node-icon{font-size:16px}@media (max-width: 640px){.progress-header{flex-direction:column;align-items:flex-start;gap:8px}.progress-stats{flex-wrap:wrap;gap:8px 12px}.current-operation-header,.history-item{flex-wrap:wrap}.history-preview{width:100%;padding-left:24px}.history-details{padding-left:16px}}.active-operations-section{margin-bottom:24px;border:2px solid #3b82f6;border-radius:12px;background:#3b82f60d}.active-operations-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid rgba(59,130,246,.2)}.active-operations-title{font-size:13px;font-weight:600;color:#2563eb;text-transform:uppercase;letter-spacing:.5px}.active-operations-tree .operation-node.running{background:#3b82f614}.active-operations-tree .operation-node.running:hover{background:#3b82f61f}.operation-node-wrapper{border-bottom:1px solid var(--border-color);padding-left:calc(var(--depth, 0) * 16px)}.operation-node-wrapper:last-child{border-bottom:none}.operation-node{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:13px;transition:background .15s ease}.operation-node.clickable{cursor:pointer}.operation-node.clickable:hover{background:var(--input-bg)}.operation-node.completed{color:var(--text-color)}.operation-node.failed{color:#dc2626}.operation-node.running{color:#2563eb}.operation-icon{font-size:14px;flex-shrink:0}.operation-name{font-weight:500;flex-shrink:0;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:12px}.operation-type-badge{font-size:9px;color:var(--text-muted);background:var(--input-bg);padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;font-weight:600}.operation-spacer{flex:1;min-width:8px}.operation-preview{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.operation-child-count{font-size:11px;color:var(--text-muted);background:var(--input-bg);padding:2px 8px;border-radius:10px;flex-shrink:0}.operation-duration{font-size:11px;color:var(--text-muted);font-family:monospace;background:var(--bg-color);padding:2px 6px;border-radius:4px;flex-shrink:0}.operation-error{flex-shrink:0}.operation-expanded{padding-left:16px;animation:slideDown .2s ease-out}.operation-details{padding:8px 16px 12px 24px}.operation-detail-section{margin-bottom:8px}.operation-detail-section:last-child{margin-bottom:0}.operation-detail-section.error{color:#dc2626}.operation-detail-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:4px}.operation-detail-content{background:var(--bg-color);border-radius:6px;padding:8px 10px;font-size:12px;border:1px solid var(--border-color)}.operation-yaml{margin:0;font-size:11px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;white-space:pre-wrap;word-break:break-word;max-height:500px;overflow-y:auto;background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:10px 12px;line-height:1.5;color:var(--text-color)}.operation-markdown-content{background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;padding:12px 16px;font-size:13px;line-height:1.6;max-height:400px;overflow-y:auto}.operation-markdown-content h1,.operation-markdown-content h2,.operation-markdown-content h3,.operation-markdown-content h4{margin-top:.8em;margin-bottom:.4em}.operation-markdown-content h1:first-child,.operation-markdown-content h2:first-child,.operation-markdown-content h3:first-child{margin-top:0}.operation-markdown-content p{margin:.5em 0}.operation-markdown-content ul,.operation-markdown-content ol{margin:.5em 0;padding-left:1.5em}.operation-markdown-content code{background:var(--input-bg);padding:2px 6px;border-radius:4px;font-size:.9em}.operation-detail-section.error .operation-detail-content{background:#fef2f2;border-color:#fecaca}.operation-children{border-top:1px solid var(--border-color);background:#00000005}.current-operation-preview{font-size:13px;color:#475569;padding:4px 8px;background:#3b82f61a;border-radius:4px}.catalog-grid{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem;width:100%;max-width:800px}.catalog-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:0;transition:box-shadow .2s;width:100%;box-sizing:border-box}.catalog-card:hover{box-shadow:0 4px 12px #0000001a}.catalog-card[open] .catalog-card-summary{border-bottom:2px solid var(--border-color)}.catalog-card-summary{padding:1.5rem;cursor:pointer;list-style:none}.catalog-card-summary::-webkit-details-marker{display:none}.catalog-summary-content{display:flex;flex-direction:column;gap:.75rem}.catalog-summary-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.catalog-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.catalog-card-title{font-size:1.5rem;font-weight:600;margin:0;color:var(--text-color)}.catalog-card-badge{background:var(--brand-color);color:#fff;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:500;white-space:nowrap}.catalog-card-section{display:flex;flex-direction:column;gap:.5rem}.catalog-card-section-title{font-size:1rem;font-weight:600;margin:0;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.875rem}.catalog-card-subsection-title{font-size:.95rem;font-weight:600;margin:0;color:var(--text-color)}.catalog-card-text{margin:0;line-height:1.6;color:var(--text-color);white-space:pre-wrap}.catalog-card-text-small{font-size:.9rem;color:var(--text-muted)}.catalog-tags{display:flex;flex-wrap:wrap;gap:.5rem}.catalog-tag{background:var(--bg-color-light);color:var(--text-color);padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:500;border:1px solid var(--border-color)}.catalog-tag-vertical{background:#e3f2fd;color:#1976d2;border-color:#90caf9}.catalog-list{display:flex;flex-direction:column;gap:.75rem}.catalog-details{border:1px solid var(--border-color);border-radius:4px;overflow:hidden}.catalog-summary{padding:.75rem 1rem;cursor:pointer;background:var(--bg-color-light);display:flex;justify-content:space-between;align-items:center;gap:1rem;-webkit-user-select:none;user-select:none;transition:background-color .2s}.catalog-summary:hover{background:var(--hover-bg)}.catalog-summary-title{font-weight:500;color:var(--text-color)}.catalog-details[open] .catalog-summary{border-bottom:1px solid var(--border-color)}.catalog-details[open].catalog-card .catalog-card-summary{border-bottom:2px solid var(--border-color)}.catalog-details-content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.catalog-card .catalog-details-content{padding:1.5rem;gap:1.5rem}.catalog-subsection{display:flex;flex-direction:column;gap:.5rem;padding-left:1rem;border-left:3px solid var(--border-color)}.catalog-subsection-title{font-size:.875rem;font-weight:600;margin:0;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.empty-message{text-align:center;padding:3rem;color:var(--text-muted);font-size:1.1rem}.catalog-nested-list{display:flex;flex-direction:column;gap:.75rem}.catalog-nested-item{border:1px solid var(--border-color);border-radius:4px;background:var(--bg-color)}.catalog-nested-item[open] .catalog-nested-summary{border-bottom:1px solid var(--border-color)}.catalog-nested-summary{padding:.75rem 1rem;cursor:pointer;background:var(--bg-color-light);display:flex;justify-content:space-between;align-items:center;gap:1rem;list-style:none;transition:background-color .2s}.catalog-nested-summary::-webkit-details-marker{display:none}.catalog-nested-summary:hover{background:var(--hover-bg)}.catalog-nested-title{font-weight:500;color:var(--text-color);flex:1}.catalog-nested-content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.catalog-nested-subsection{display:flex;flex-direction:column;gap:.5rem;padding-left:1rem;border-left:3px solid var(--border-color)}.catalog-nested-subsection-title{font-size:.875rem;font-weight:600;margin:0;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.catalog-properties-list{display:flex;flex-direction:column;gap:.5rem}.catalog-property-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.5rem;background:var(--bg-color-light);border-radius:4px;border:1px solid var(--border-color)}.catalog-property-name{font-weight:600;color:var(--brand-color);background:var(--bg-color);padding:.125rem .375rem;border-radius:3px;font-size:.875rem}.catalog-property-type{color:var(--text-muted);font-size:.75rem;font-style:italic;background:var(--bg-color);padding:.125rem .375rem;border-radius:3px}.catalog-property-description{flex-basis:100%;color:var(--text-color);font-size:.875rem;line-height:1.4;margin-top:.25rem}@media (max-width: 768px){.catalog-card-header{flex-direction:column;align-items:flex-start}}.generation-list{background:transparent;border:none;padding:0;box-shadow:none;margin-top:1rem;flex:1;display:flex;flex-direction:column;min-height:0}.generation-list-scroll{display:flex;flex-direction:column;gap:.5rem;height:100%;overflow-y:auto;overflow-x:hidden;padding:.25rem}.generation-list-scroll::-webkit-scrollbar{width:6px}.generation-list-scroll::-webkit-scrollbar-track{background:#0000000d;border-radius:3px}.generation-list-scroll::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px;transition:background .2s ease}.generation-list-scroll::-webkit-scrollbar-thumb:hover{background:#667eea80}.generation-item{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:.65rem .85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:42px;box-shadow:0 1px 3px #0000000d}.generation-item:hover{border-color:var(--brand-color);transform:translate(3px);box-shadow:0 2px 8px #667eea26;background:var(--hover-bg)}.generation-item.active{border-color:var(--brand-color);background:#667eea1a;box-shadow:0 2px 8px #667eea40;font-weight:500}.generation-item-text{flex:1;color:var(--text-color);font-size:.8125rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:.4rem}.generation-item-time{font-size:.6875rem;color:var(--text-muted);white-space:nowrap;font-family:SF Mono,Monaco,Inconsolata,Fira Code,Courier New,monospace;display:flex;align-items:center;gap:.25rem;flex-shrink:0}.elapsed-time{color:var(--brand-color);font-weight:600;font-size:.65rem}@media (prefers-color-scheme: dark){.generation-list-scroll::-webkit-scrollbar-track{background:#ffffff0d}.generation-item{box-shadow:0 1px 3px #0003}.generation-item:hover{box-shadow:0 2px 8px #667eea40}.generation-item.active{background:#667eea26;box-shadow:0 2px 8px #667eea59}}@media (max-width: 768px){.generation-list{flex:none;height:auto}.generation-list-scroll{height:auto;overflow-y:visible;max-height:none}}.ideas-viewer{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:16px;padding:24px;min-height:400px;max-height:none;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow-y:auto;overflow-x:hidden;position:relative;display:flex;flex-direction:column}.ideas-viewer:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4)}.ideas-header{margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid rgba(148,163,184,.2)}.ideas-title{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1e293b;margin:0;text-shadow:0 1px 2px rgba(0,0,0,.1)}.ideas-icon{font-size:32px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.ideas-list{display:flex;flex-direction:column;overflow-y:auto;flex:1;padding-right:8px}.idea-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:visible;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000001a;position:relative;z-index:1;margin-bottom:16px}.idea-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:#3b82f6}.idea-card.expanded{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:#3b82f6;z-index:2;margin-bottom:24px}.idea-card.expanded:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6)}.idea-card-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;cursor:pointer;background:linear-gradient(135deg,#fafbfc,#f1f5f9);border-bottom:1px solid #e2e8f0;transition:all .2s ease}.idea-card-header:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.idea-card.expanded .idea-card-header{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-bottom-color:#3b82f6}.idea-header-content{display:flex;align-items:center;gap:12px}.expand-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#3b82f6;color:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:12px}.expand-icon.rotated{transform:rotate(90deg);background:#8b5cf6}.idea-title{font-size:18px;font-weight:600;color:#1e293b;margin:0}.idea-counters{display:flex;gap:8px;align-items:center}.counter{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:20px;font-size:13px;font-weight:600;transition:all .2s ease;box-shadow:0 1px 2px #0000001a;min-width:40px;justify-content:center}.counter:hover{transform:scale(1.05)}.counter-icon{font-size:16px;line-height:1}.counter-number{font-weight:700;font-size:14px}.counter.success{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#166534;border:1px solid #22c55e}.counter.partial{background:linear-gradient(135deg,#fed7aa,#fb923c);color:#9a3412;border:1px solid #ea580c}.counter.failed{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b;border:1px solid #ef4444}.counter-icon{font-size:14px}.idea-content{padding:20px 24px;font-size:15px;line-height:1.6;color:#374151;background:#fff;border-bottom:1px solid #f1f5f9;max-height:150px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.idea-details{padding:24px;background:#fafbfc;border-top:1px solid #e2e8f0;display:block!important;position:relative;z-index:1}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 16px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:8px;border:1px solid #cbd5e1}.details-header h4{margin:0;color:#1e293b;font-size:16px;font-weight:600}.total-matches{color:#6b7280;font-size:13px;font-weight:500;background:#fff;padding:4px 8px;border-radius:12px;border:1px solid #d1d5db}.no-matches{text-align:center;padding:40px 20px;color:#6b7280;font-style:italic;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.match-section{margin-bottom:20px}.match-section:last-child{margin-bottom:0}.match-section-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;margin:0 0 12px;padding:8px 16px;border-radius:8px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.1);cursor:pointer;transition:all .2s ease}.match-section-title:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.match-section--success .match-section-title{background:linear-gradient(135deg,#22c55e,#16a34a)}.match-section--partial .match-section-title{background:linear-gradient(135deg,#f59e0b,#d97706)}.match-section--failed .match-section-title{background:linear-gradient(135deg,#ef4444,#dc2626)}.match-section-icon{font-size:18px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.matches-list{display:flex;flex-direction:column;gap:12px}.match-item{background:#fff;border-radius:8px;padding:16px;border-left:4px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.match-item:hover{transform:translate(4px);box-shadow:0 4px 12px #00000026}.match-item--success{border-left-color:#22c55e;background:linear-gradient(135deg,#fff,#f0fdf4)}.match-item--partial{border-left-color:#f59e0b;background:linear-gradient(135deg,#fff,#fffbeb)}.match-item--failed{border-left-color:#ef4444;background:linear-gradient(135deg,#fff,#fef2f2)}.match-header{margin-bottom:16px}.match-info{display:flex;flex-direction:column;gap:8px}.match-primary{display:flex;flex-direction:column;gap:4px}.match-site{color:#1e293b;font-size:16px;font-weight:600}.site-link{color:#3b82f6;text-decoration:none;font-size:12px;font-weight:400}.site-link:hover{text-decoration:underline}.match-category-info{margin:4px 0}.match-category{color:#6b7280;font-size:14px;padding:4px 12px;background:#f3f4f6;border-radius:16px;border:1px solid #d1d5db;display:inline-block;font-weight:500}.match-status{font-size:13px;font-weight:600;padding:4px 10px;border-radius:12px;display:inline-block;width:fit-content;margin-top:4px}.match-status.success{background:#dcfce7;color:#166534;border:1px solid #22c55e}.match-status.failed{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.match-details{margin-top:16px;padding-top:16px;border-top:1px solid #f1f5f9}.info-section{margin-bottom:16px;padding:12px;background:#f8fafc;border-radius:8px;border-left:4px solid #e2e8f0}.info-title{font-weight:600;color:#374151;font-size:13px;margin-bottom:8px;display:flex;align-items:center;gap:6px}.info-text{color:#6b7280;font-size:13px;line-height:1.5;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb;max-height:120px;overflow-y:auto}.technical-details{margin-top:16px;padding:12px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-radius:8px;border:1px solid #cbd5e1}.tech-field{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid #e2e8f0}.tech-field:last-child{border-bottom:none}.tech-label{font-weight:600;color:#374151;font-size:12px}.tech-value{color:#6b7280;font-size:12px;font-family:monospace;background:#fff;padding:2px 6px;border-radius:4px;border:1px solid #d1d5db}.match-extra-field{display:flex;gap:8px;margin-bottom:6px;padding:4px 8px;background:#f8fafc;border-radius:4px;font-size:12px}.field-label{font-weight:600;color:#374151;min-width:80px;text-transform:capitalize}.field-value{color:#6b7280;word-break:break-word;flex:1}.requirements-section{margin-top:12px;padding-top:12px;border-top:1px solid #f1f5f9}.requirements-title{font-weight:600;color:#374151;font-size:13px;margin-bottom:6px}.requirements-text{color:#6b7280;font-size:13px;line-height:1.5;font-style:italic;padding:8px 12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;max-height:120px;overflow-y:auto}.empty-state,.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;min-height:300px}.empty-state-icon,.error-state-icon{font-size:64px;margin-bottom:16px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.empty-state h3,.loading-state h3,.error-state h3{font-size:24px;font-weight:600;color:#1e293b;margin:0 0 8px}.empty-state p,.loading-state p,.error-state p{color:#6b7280;font-size:16px;margin:0;max-width:400px}.loading-spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.ideas-viewer{padding:16px 0;border-radius:12px;min-height:auto;max-height:none;overflow-y:visible}.idea-card-header{padding:16px;flex-direction:column;align-items:flex-start;gap:12px}.idea-counters{align-self:stretch;justify-content:flex-end}.idea-content,.idea-details{padding:16px}.match-header{flex-direction:column;align-items:flex-start;gap:8px}.ideas-title{font-size:24px}}@media (prefers-color-scheme: dark){.ideas-viewer{background:linear-gradient(135deg,#1e293b,#334155);color:#f1f5f9}.idea-card{background:#334155;border-color:#475569}.idea-card:hover{border-color:#60a5fa}.idea-card-header{background:linear-gradient(135deg,#475569,#334155);border-bottom-color:#475569}.idea-card-header:hover{background:linear-gradient(135deg,#4b5563,#374151)}.idea-card.expanded .idea-card-header{background:linear-gradient(135deg,#1e3a5f,#1e4d8d);border-bottom-color:#3b82f6}.idea-title,.ideas-title{color:#f1f5f9}.idea-content{background:#334155;color:#cbd5e1;border-bottom-color:#475569}.idea-details{background:#1e293b;border-top-color:#475569}.details-header{background:linear-gradient(135deg,#374151,#4b5563);border-color:#475569}.details-header h4{color:#f1f5f9}.total-matches{background:#334155;border-color:#475569;color:#9ca3af}.no-matches{background:#1e293b;border-color:#475569;color:#9ca3af}.match-item{background:#334155;box-shadow:0 1px 3px #0000004d}.match-item--success{background:linear-gradient(135deg,#334155,#1d4d20)}.match-item--partial{background:linear-gradient(135deg,#334155,#4d4520)}.match-item--failed{background:linear-gradient(135deg,#334155,#4d1d1d)}.match-site{color:#f1f5f9}.match-category{background:#475569;border-color:#6b7280;color:#d1d5db}.info-section{background:#1e293b;border-left-color:#475569}.info-title{color:#d1d5db}.info-text{background:#334155;border-color:#475569;color:#9ca3af}.technical-details{background:linear-gradient(135deg,#374151,#4b5563);border-color:#475569}.tech-label{color:#d1d5db}.tech-value{background:#1e293b;border-color:#475569;color:#9ca3af}.tech-field{border-bottom-color:#475569}.match-extra-field{background:#1e293b}.field-label{color:#d1d5db}.field-value{color:#9ca3af}.requirements-section{border-top-color:#475569}.requirements-title{color:#d1d5db}.requirements-text{background:#1e293b;border-color:#475569;color:#94a3b8}.match-details{border-top-color:#475569}.empty-state h3,.loading-state h3,.error-state h3{color:#f1f5f9}.empty-state p,.loading-state p,.error-state p{color:#9ca3af}.loading-spinner{border-color:#475569;border-top-color:#3b82f6}.ideas-viewer::-webkit-scrollbar-track,.ideas-list::-webkit-scrollbar-track,.idea-content::-webkit-scrollbar-track,.idea-details::-webkit-scrollbar-track,.requirements-text::-webkit-scrollbar-track{background:#1e293b}.ideas-viewer::-webkit-scrollbar-thumb,.ideas-list::-webkit-scrollbar-thumb,.idea-content::-webkit-scrollbar-thumb,.idea-details::-webkit-scrollbar-thumb,.requirements-text::-webkit-scrollbar-thumb{background:#475569}.ideas-viewer::-webkit-scrollbar-thumb:hover,.ideas-list::-webkit-scrollbar-thumb:hover,.idea-content::-webkit-scrollbar-thumb:hover,.idea-details::-webkit-scrollbar-thumb:hover,.requirements-text::-webkit-scrollbar-thumb:hover{background:#6b7280}.ideas-viewer,.ideas-list,.idea-content,.idea-details,.requirements-text{scrollbar-color:#475569 #1e293b}}.ideas-viewer::-webkit-scrollbar,.ideas-list::-webkit-scrollbar,.idea-content::-webkit-scrollbar,.idea-details::-webkit-scrollbar,.requirements-text::-webkit-scrollbar{width:8px}.ideas-viewer::-webkit-scrollbar-track,.ideas-list::-webkit-scrollbar-track,.idea-content::-webkit-scrollbar-track,.idea-details::-webkit-scrollbar-track,.requirements-text::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.ideas-viewer::-webkit-scrollbar-thumb,.ideas-list::-webkit-scrollbar-thumb,.idea-content::-webkit-scrollbar-thumb,.idea-details::-webkit-scrollbar-thumb,.requirements-text::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;transition:background .2s ease}.ideas-viewer::-webkit-scrollbar-thumb:hover,.ideas-list::-webkit-scrollbar-thumb:hover,.idea-content::-webkit-scrollbar-thumb:hover,.idea-details::-webkit-scrollbar-thumb:hover,.requirements-text::-webkit-scrollbar-thumb:hover{background:#94a3b8}.ideas-viewer,.ideas-list,.idea-content,.idea-details,.requirements-text{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.ideas-buttons-container{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:16px;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 2px 8px var(--shadow-color)}.ideas-button-row{display:flex;gap:12px;width:100%}.ideas-generate-button{flex:1;padding:14px 20px;background:var(--gradient-primary);color:var(--button-text);border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d;min-height:52px;display:flex;align-items:center;justify-content:center}.ideas-generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.ideas-generate-button:active{transform:translateY(0);box-shadow:0 2px 8px #667eea4d}.ideas-generate-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #667eea33}.ideas-clear-button{flex:1;padding:14px 20px;background:var(--gradient-secondary);color:var(--button-text);border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #f5576c4d;min-height:52px;display:flex;align-items:center;justify-content:center}.ideas-clear-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #f5576c66}.ideas-clear-button:active{transform:translateY(0);box-shadow:0 2px 8px #f5576c4d}.ideas-clear-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #f5576c33}@media (max-width: 768px){.ideas-button-row{flex-direction:column}.ideas-generate-button,.ideas-clear-button{width:100%;font-size:18px;padding:16px 20px;min-height:56px}}@media (max-width: 480px){.ideas-buttons-container{padding:12px;gap:8px}.ideas-generate-button,.ideas-clear-button{font-size:16px;padding:14px 16px;min-height:50px}}.previous-ideas-filter{margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.checkbox-container{display:flex;align-items:center;gap:8px}.form-checkbox{width:18px;height:18px;cursor:pointer}.checkbox-label{cursor:pointer;margin-bottom:0}.number-input-container{display:flex;align-items:center;max-width:200px}.form-number-input{width:60px;text-align:center;padding:8px;border:1px solid var(--border-color);border-radius:4px;margin:0 4px;background-color:var(--input-bg);color:var(--text-color)}.form-number-input::-webkit-inner-spin-button,.form-number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--hover-bg);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-size:16px;font-weight:700;color:var(--text-color);transition:background-color .2s ease}.number-btn:hover:not(:disabled){background-color:var(--active-bg)}.number-btn:disabled{opacity:.5;cursor:not-allowed}.days-label{margin-left:8px;color:var(--text-muted)}.knowledge-graph-container{width:100%;height:600px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.knowledge-graph-header{padding:10px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--input-bg, #f9fafb);display:flex;gap:10px;align-items:center}.knowledge-graph-header span{font-size:14px;font-weight:500;color:var(--text-color, #374151)}.layout-button{padding:4px 12px;font-size:12px;background:var(--input-bg, #f3f4f6);border:1px solid var(--border-color, #d1d5db);border-radius:4px;cursor:pointer;transition:background-color .2s;color:var(--text-color, #374151)}.layout-button:hover{background:var(--hover-bg, #e5e7eb)}.layout-button:active{background:var(--active-bg, #d1d5db)}.run-info{font-size:12px;color:var(--text-muted, #6b7280);margin-left:auto}.react-flow__node-default{padding:8px 12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.react-flow__node-default:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000040!important}.react-flow__node-default.react-flow__node-selected{box-shadow:0 0 0 2px #3b82f6}.react-flow__edge-path{stroke-width:2px}.react-flow__controls{bottom:10px;left:10px;background:var(--bg-color, white);border:1px solid var(--border-color, #d1d5db);border-radius:8px;box-shadow:0 4px 12px var(--shadow-color, rgba(0, 0, 0, .1))}.react-flow__controls-button{background:var(--bg-color, white);color:var(--text-color, #374151);border:none;border-bottom:1px solid var(--border-color, #d1d5db);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:16px;font-weight:600}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls-button:hover{background:var(--hover-bg, #e5e7eb);color:var(--text-color, #374151)}.react-flow__controls-button svg{fill:var(--text-color, #374151);width:16px;height:16px}.react-flow__background{background-color:var(--bg-color-light, #f8fafc)}
