@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";:root{--bg-primary: #f9f5f0;--bg-secondary: #ffffff;--bg-card: #ffffff;--text-primary: #000000;--text-secondary: #232323;--text-muted: #555555;--accent-red: #FF4B4B;--accent-black: #000000;--accent-blue: #2AB09C;--accent-emerald: #00C292;--accent-amber: #FFB000;--accent-rose: #FF2B2E;--border-main: 1.5px solid #000000;--border-thin: 1px solid #000000;--border-muted: 1px solid #e0e0e0;--shadow-sm: 2px 2px 0px rgba(0, 0, 0, 1);--shadow-md: 4px 4px 0px rgba(0, 0, 0, 1);--shadow-lg: 8px 8px 0px rgba(0, 0, 0, 1);--shadow-hover: 6px 6px 0px rgba(0, 0, 0, 1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 0px;--radius-full: 9999px;--transition-fast: .1s ease;--transition-normal: .2s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#000;border:2px solid var(--bg-primary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--accent-red)}.glass-card{background:var(--bg-card);border:var(--border-main);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all var(--transition-fast);position:relative;overflow:hidden}.glass-card:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-hover)}.hero-section{padding:100px 24px 60px;text-align:center;background:var(--bg-primary);border-bottom:var(--border-main)}.hero-title{font-size:4rem;font-weight:900;letter-spacing:-.04em;color:var(--text-primary);margin-bottom:16px;line-height:.9;text-transform:uppercase}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);font-weight:500;max-width:600px;margin:0 auto}.search-container{max-width:800px;margin:-40px auto 0;padding:0 24px}.search-box{display:flex;align-items:center;gap:12px;background:var(--bg-secondary);border:var(--border-main);border-radius:var(--radius-md);padding:8px 12px 8px 24px;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.search-box:focus-within{transform:translate(-2px,-2px);box-shadow:6px 6px #000}.search-input{flex:1;background:none;border:none;color:var(--text-primary);font-size:1.2rem;font-family:inherit;font-weight:500;padding:12px 0;outline:none}.search-input::placeholder{color:#a0a0a0}.search-btn{display:flex;align-items:center;gap:8px;background:#000!important;border:var(--border-thin);color:#fff!important;font-family:inherit;font-weight:800;font-size:1rem;padding:14px 28px;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);text-transform:uppercase}.search-btn:hover:not(:disabled){background:var(--accent-red)!important;color:#000!important;transform:translate(-2px,-2px);box-shadow:4px 4px #000}.search-btn:active:not(:disabled){transform:translate(0);box-shadow:none}.search-btn:disabled{background:#232323;color:#666;border-color:#000;cursor:not-allowed;transform:none;box-shadow:none}.search-container{max-width:720px;margin:32px auto 0;padding:0 24px}.search-box{display:flex;align-items:center;gap:12px;background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-xl);padding:6px 8px 6px 24px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all var(--transition-normal)}.search-box:focus-within{border-color:var(--accent-blue);box-shadow:var(--shadow-glow-blue)}.search-input{flex:1;background:none;border:none;color:var(--text-primary);font-size:1.05rem;font-family:inherit;padding:14px 0;outline:none}.search-input::placeholder{color:var(--text-muted)}.search-btn{display:flex;align-items:center;gap:8px;background:var(--gradient-primary);border:none;color:#fff;font-family:inherit;font-weight:600;font-size:.95rem;padding:12px 24px;border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.search-btn:hover:not(:disabled){transform:scale(1.03);box-shadow:var(--shadow-glow-blue)}.search-btn:disabled{opacity:.5;cursor:not-allowed}.example-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:24px}.chip{background:var(--bg-secondary);border:var(--border-thin);color:var(--text-primary);font-family:inherit;font-size:.85rem;font-weight:600;padding:8px 16px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.chip:hover{background:var(--accent-red);transform:translate(-2px,-2px);box-shadow:2px 2px #000}.progress-container{max-width:800px;margin:40px auto;padding:0 24px}.progress-card{padding:32px;border:var(--border-main);background:#fff;box-shadow:var(--shadow-md)}.progress-header{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding-bottom:12px;border-bottom:var(--border-thin)}.progress-spinner{width:24px;height:24px;border:3px solid #eee;border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress-title{font-size:1.1rem;font-weight:800;color:var(--text-primary);text-transform:uppercase}.progress-thoughts{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.thought-item{padding:14px 18px;background:#fff;border:var(--border-thin);border-left:6px solid var(--accent-red);border-radius:var(--radius-md);font-size:.9rem;font-weight:500;color:var(--text-primary);animation:fade-slide-in .2s ease-out}.progress-bar-track{height:8px;background:#eee;border:var(--border-thin);border-radius:4px;margin-top:24px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent-red);animation:indeterminate 1.5s ease-in-out infinite}@keyframes indeterminate{0%{width:0%;margin-left:0%}50%{width:40%;margin-left:30%}to{width:0%;margin-left:100%}}.enhanced-progress{padding:0!important;display:flex;flex-direction:column;overflow:hidden;max-height:600px}.progress-header-top{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 20px;border-bottom:1px solid var(--border-glass)}.progress-status-info{display:flex;align-items:center;gap:12px}.status-dot{width:8px;height:8px;background:var(--accent-emerald);border-radius:50%;box-shadow:0 0 10px var(--accent-emerald)}.status-dot.pulse{background:var(--accent-blue);box-shadow:0 0 10px var(--accent-blue);animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}.progress-main-title{font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.progress-timer{display:flex;align-items:center;gap:6px;font-family:Fira Code,monospace;font-size:.9rem;color:var(--accent-blue);background:#3b82f61a;padding:4px 10px;border-radius:var(--radius-sm)}.progress-tabs{display:flex;padding:0 24px;gap:24px;border-bottom:1px solid var(--border-glass);background:#0000001a}.progress-tab-btn{display:flex;align-items:center;gap:8px;padding:14px 0;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.progress-tab-btn.active{color:var(--text-primary);border-bottom-color:var(--accent-blue)}.progress-tab-btn:disabled{opacity:.3;cursor:not-allowed}.progress-content-area{flex:1;padding:24px;overflow-y:auto;background:#0003;min-height:300px}.thoughts-timeline{display:flex;flex-direction:column}.thought-card-wrapper{display:flex;gap:20px}.thought-connector{display:flex;flex-direction:column;align-items:center;width:12px}.connector-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-blue);margin-top:6px;z-index:1}.connector-line{width:2px;flex:1;background:var(--border-glass);margin:4px 0}.thought-card{flex:1;background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:16px;margin-bottom:24px;transform:translateY(0);animation:slide-up .4s cubic-bezier(.16,1,.3,1)}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.thought-card-title{font-weight:700;color:var(--text-primary);margin-bottom:8px;font-size:.95rem}.thought-card-body{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.live-report-preview{height:100%;display:flex;flex-direction:column}.report-stream-header{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;color:var(--accent-cyan);margin-bottom:12px;letter-spacing:.1em}.report-text{font-family:Fira Code,monospace;font-size:.85rem;line-height:1.7;color:var(--accent-cyan);opacity:.9;white-space:pre-wrap;word-break:break-word}.cursor-blink{display:inline-block;width:8px;height:1.2em;background:var(--accent-cyan);margin-left:4px;vertical-align:middle;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:0}}.pulse-text{animation:pulse-opacity 1.5s infinite}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.4}}.thought-card.skeleton{opacity:.6}.skeleton-line{height:8px;background:var(--border-glass);border-radius:4px;margin-bottom:8px;width:100%;animation:pulse-bg 1.5s infinite}.skeleton-line.short{width:40%}@keyframes pulse-bg{0%,to{opacity:.5}50%{opacity:1}}.progress-footer{padding:16px 24px 24px;border-top:1px solid var(--border-glass);background:#0003}.progress-bar-minimal{height:4px;background:#ffffff0d;border-radius:2px;margin-bottom:12px;overflow:hidden}.progress-footer-text{font-size:.75rem;color:var(--text-muted);text-align:center}.results-section{max-width:1200px;margin:0 auto;padding:40px 24px 100px}.results-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:32px;padding-bottom:16px;border-bottom:var(--border-main)}.results-title{font-size:2rem;font-weight:900;text-transform:uppercase;letter-spacing:-.02em}.results-count{color:#666;font-size:1rem;font-weight:500;margin-left:12px;text-transform:none}.results-actions{display:flex;gap:12px;align-items:center}.btn-outline{display:flex;align-items:center;gap:8px;background:#fff;border:var(--border-thin);color:#000;font-family:inherit;font-size:.9rem;font-weight:700;padding:10px 20px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-outline:hover{background:#f0f0f0;transform:translate(-2px,-2px);box-shadow:2px 2px #000}.btn-primary{display:flex;align-items:center;gap:8px;background:var(--accent-red);border:var(--border-thin);color:#000;font-family:inherit;font-size:.9rem;font-weight:800;padding:10px 24px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase}.btn-primary:hover{transform:translate(-2px,-2px);box-shadow:4px 4px #000}.btn-secondary{display:flex;align-items:center;gap:8px;background:#eee;border:var(--border-thin);color:#333;font-family:inherit;font-size:.9rem;font-weight:700;padding:10px 20px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px}.product-card{padding:24px;background:#fff;border:var(--border-main);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.product-card:hover{transform:translate(-3px,-3px);box-shadow:6px 6px #000}.product-card.selected{background:#fffafb;border-color:#000;box-shadow:8px 8px 0 var(--accent-red)}.product-card-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.product-checkbox{appearance:none;width:24px;height:24px;min-width:24px;border:var(--border-main);border-radius:4px;cursor:pointer;transition:all var(--transition-fast);position:relative;margin-top:2px;background:#fff}.product-checkbox:checked{background:var(--accent-red)}.product-checkbox:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#000;font-size:16px;font-weight:900}.product-name{font-size:1.25rem;font-weight:900;color:#000;line-height:1.2}.product-trade-names{font-size:.85rem;font-weight:600;color:#666;margin-top:4px;text-transform:uppercase}.product-sections{display:flex;flex-direction:column;gap:16px}.section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;background:#f8f8f8;border:var(--border-thin);color:#000;font-family:inherit;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:10px 14px;border-radius:4px;cursor:pointer;transition:all var(--transition-fast)}.section-toggle:hover{background:var(--accent-red)}.section-content{padding:12px 14px 4px;font-size:.9rem;color:#333;line-height:1.6}.section-tag{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:800;padding:4px 10px;border:var(--border-thin);border-radius:4px;text-transform:uppercase;background:#fff;color:#000;margin-right:8px;margin-bottom:8px}.tag-blue{background:#e6f0ff}.tag-purple{background:#f5efff}.tag-cyan{background:#e6fdff}.tag-emerald{background:#e6fffa}.tag-amber{background:#fff9e6}.tag-rose{background:#ffe6e6}.save-panel{position:fixed;bottom:-100px;left:0;right:0;z-index:100;background:#fff;border-top:var(--border-main);padding:20px 24px;display:flex;align-items:center;justify-content:center;gap:24px;box-shadow:0 -10px 30px #0000001a;transition:bottom .3s cubic-bezier(.16,1,.3,1)}.save-panel-text{font-size:1rem;font-weight:700;color:#000}.save-panel-count{background:var(--accent-red);padding:2px 8px;border:var(--border-thin);border-radius:4px;margin-right:4px}.modal-overlay{position:fixed;inset:0;z-index:200;background:#f9f5f0e6;display:flex;align-items:center;justify-content:center;padding:24px;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-content{background:#fff;border:var(--border-main);border-radius:var(--radius-md);width:100%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:12px 12px #000}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:var(--border-main);background:#fff}.modal-title{font-weight:900;font-size:1.5rem;text-transform:uppercase}.modal-close{background:#fff;border:var(--border-thin);color:#000;cursor:pointer;padding:8px;border-radius:4px;display:flex;transition:all var(--transition-fast)}.modal-close:hover{background:var(--accent-red)}.modal-body{flex:1;overflow-y:auto;padding:24px;background:#fff}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:var(--border-main);background:#f8f8f8}.json-preview{background:#fdfdfd;border:var(--border-thin);border-radius:4px;padding:20px;font-family:Fira Code,monospace;font-size:.85rem;line-height:1.6;color:#000}.error-card{padding:24px;text-align:center;border-color:#f43f5e33}.error-icon{color:var(--accent-rose);margin-bottom:12px}.error-title{font-weight:600;margin-bottom:4px}.error-message{color:var(--text-secondary);font-size:.9rem}.warning-card{padding:20px 24px;display:flex;align-items:flex-start;gap:16px;border-color:#f59e0b40;background:#f59e0b0a}.warning-icon{color:var(--accent-amber);flex-shrink:0;margin-top:2px}.warning-title{font-weight:600;color:var(--accent-amber);margin-bottom:4px;font-size:.95rem}.warning-message{color:var(--text-secondary);font-size:.88rem;line-height:1.6}.warning-message code{background:#f59e0b1a;color:var(--accent-amber);padding:1px 6px;border-radius:4px;font-size:.85em}.empty-state{text-align:center;padding:80px 24px}.empty-icon{color:var(--text-muted);margin-bottom:16px;opacity:.5}.empty-title{font-size:1.2rem;font-weight:600;margin-bottom:8px}.empty-text{color:var(--text-secondary);font-size:.9rem}.progress-container{max-width:880px;margin:0 auto 32px;padding:0 24px}.phase-banner{display:flex;align-items:flex-start;gap:10px;padding:12px 24px;background:#ffffff08;border-bottom:1px solid var(--border-glass);font-size:.82rem;color:var(--text-secondary);line-height:1.5}.phase-banner-icon{color:var(--phase-color, var(--accent-blue));flex-shrink:0;margin-top:1px}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;background:#3b82f626;color:var(--accent-blue);border-radius:9px;font-size:.7rem;font-weight:700;margin-left:6px}.tab-badge.live{background:transparent;color:var(--accent-emerald);font-size:.65rem;animation:pulse-opacity 1.5s infinite}.report-waiting{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;gap:20px}.report-waiting-dots{display:flex;gap:8px}.report-waiting-dots span{width:8px;height:8px;background:var(--accent-purple, #a855f7);border-radius:50%;animation:bounce-dot 1.2s ease-in-out infinite}.report-waiting-dots span:nth-child(2){animation-delay:.2s}.report-waiting-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.report-waiting-text{color:var(--text-muted);font-size:.85rem;text-align:center}.save-panel{position:fixed;bottom:-80px;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;background:#0f0f19e6;border-top:1px solid var(--border-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:bottom .3s cubic-bezier(.16,1,.3,1);flex-wrap:wrap}.save-panel.visible{bottom:0}.save-panel-text{font-size:.85rem;color:var(--text-secondary)}.save-panel-count{font-weight:700;color:var(--text-primary)}.save-btn-report{border-color:#a855f74d!important;color:#a855f7!important}.save-btn-report:hover{border-color:#a855f7b3!important;background:#a855f714!important}.save-divider{width:1px;height:28px;background:var(--border-glass)}.modal-overlay{position:fixed;inset:0;z-index:200;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}.modal-content{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-lg);width:100%;max-width:760px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 40px 80px #00000080}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-glass)}.modal-title{font-weight:600;font-size:1rem}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;transition:color var(--transition-fast)}.modal-close:hover{color:var(--text-primary)}.modal-body{flex:1;overflow-y:auto;padding:20px 24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-glass)}.json-preview{font-family:Fira Code,monospace;font-size:.78rem;line-height:1.7;color:var(--accent-cyan);white-space:pre-wrap;word-break:break-all}@media(max-width:768px){.hero-title{font-size:2.2rem}.product-grid{grid-template-columns:1fr}.results-header{flex-direction:column;align-items:flex-start}.navbar-inner{flex-direction:column;gap:12px;padding:12px 20px}.report-form{padding:20px!important}.form-row{flex-direction:column}}.navbar{position:sticky;top:0;z-index:100;background:#fff;border-bottom:var(--border-main)}.navbar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:72px}.navbar-brand{display:flex;align-items:center;gap:12px}.navbar-logo{font-size:2rem;font-weight:900;color:#000;line-height:1;background:var(--accent-red);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:var(--border-thin);border-radius:4px;-webkit-text-fill-color:initial;background-clip:initial}.navbar-title{font-size:1.4rem;font-weight:900;color:#000;letter-spacing:-.04em;text-transform:uppercase}.navbar-links{display:flex;align-items:center;gap:8px}.navbar-link{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:4px;font-size:.9rem;font-weight:800;color:#000;text-decoration:none;transition:all var(--transition-fast);border:var(--border-thin);text-transform:uppercase}.navbar-link:hover{background:#f0f0f0;transform:translate(-2px,-2px);box-shadow:2px 2px #000}.navbar-link.active{background:var(--accent-red);transform:translate(-2px,-2px);box-shadow:2px 2px #000}.report-page{max-width:900px;margin:0 auto;padding:60px 24px 100px}.report-header{display:flex;align-items:center;gap:24px;margin-bottom:40px;padding-bottom:24px;border-bottom:var(--border-main)}.report-header-icon-wrap{width:64px;height:64px;border-radius:8px;background:var(--accent-red);display:flex;align-items:center;justify-content:center;color:#000;border:var(--border-thin);flex-shrink:0;box-shadow:4px 4px #000}.report-header-title{font-size:2.5rem;font-weight:900;letter-spacing:-.04em;line-height:1;text-transform:uppercase}.report-header-subtitle{font-size:1rem;font-weight:500;color:#555;margin-top:8px}.report-tabs{display:flex;gap:12px;margin-bottom:32px}.report-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border:var(--border-thin);border-radius:8px;background:#fff;color:#000;font-family:inherit;font-size:1rem;font-weight:800;cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase}.report-tab:hover:not(:disabled){background:#f0f0f0;transform:translate(-2px,-2px);box-shadow:4px 4px #000}.report-tab.active{background:var(--accent-red);transform:translate(-2px,-2px);box-shadow:4px 4px #000}.report-form{padding:40px;background:#fff;border:var(--border-main);border-radius:12px;box-shadow:var(--shadow-md);margin-bottom:40px}.form-group{margin-bottom:32px}.form-label{display:block;font-size:.9rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#000;margin-bottom:12px}.form-input{width:100%;background:#fff;border:var(--border-main);border-radius:8px;padding:14px 20px;color:#000;font-family:inherit;font-size:1.1rem;font-weight:500;transition:all var(--transition-fast);outline:none}.form-input:focus{background:#fffafb;box-shadow:4px 4px #ff90e84d}.form-textarea{width:100%;background:#fff;border:var(--border-main);border-radius:8px;padding:16px 20px;color:#000;font-family:Fira Code,monospace;font-size:1rem;line-height:1.6;resize:vertical;transition:all var(--transition-fast);outline:none;min-height:250px}.form-textarea:focus{background:#fffafb;box-shadow:4px 4px #ff90e84d}.form-hint{font-size:.75rem;color:var(--text-muted);margin-top:6px}.form-row{display:flex;align-items:flex-end;gap:16px}.url-list{display:flex;flex-direction:column;gap:8px}.url-row{display:flex;gap:8px;align-items:center}.url-remove-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-glass);background:transparent;color:var(--accent-rose);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.url-remove-btn:hover{background:#f43f5e1a;border-color:var(--accent-rose)}.url-add-btn{align-self:flex-start;margin-top:4px}.report-generate-btn{padding:12px 28px!important;font-size:.95rem!important;white-space:nowrap;margin-left:auto}.report-progress{padding:0!important;margin-bottom:20px;overflow:hidden}.report-progress-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--border-glass)}.report-progress-header:hover{background:var(--bg-glass-hover)}.report-progress-title{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--text-primary)}.report-minimize-btn{background:none;border:1px solid var(--border-glass);color:var(--text-secondary);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.report-minimize-btn:hover{background:var(--bg-glass-hover);border-color:var(--accent-blue);color:var(--text-primary)}.report-progress-body{max-height:300px;overflow-y:auto;padding:16px 20px;background:#00000026}.report-progress-line{padding:6px 12px;font-size:.82rem;color:var(--text-secondary);border-left:2px solid var(--accent-blue);margin-bottom:6px;animation:fade-slide-in .3s ease-out;line-height:1.5}.report-download{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;margin-top:20px;border-color:#3b82f633!important;background:#3b82f60d!important}.report-download-info{display:flex;align-items:center;gap:16px}.report-download-icon{color:var(--accent-blue)}.report-download-title{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.report-download-meta{font-size:.82rem;color:var(--text-secondary);margin-top:2px}.report-download-btn{padding:12px 28px!important;font-size:.95rem!important}.param-toggle-btn{display:inline-flex;align-items:center;gap:8px;background:#f8f8f8;border:var(--border-thin);color:#000;font-family:inherit;font-size:.9rem;font-weight:800;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all var(--transition-fast);margin-top:16px;text-transform:uppercase}.param-toggle-btn:hover{background:var(--accent-red);transform:translate(-1px,-1px);box-shadow:2px 2px #000}.param-toggle-count{background:#000;color:#fff;font-size:.75rem;font-weight:900;padding:2px 8px;border-radius:4px;margin-left:4px}.param-section{margin-top:16px;background:#fff;border:var(--border-main);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.param-input-row{display:flex;gap:12px;margin-bottom:16px}.param-input{flex:1;background:#fff;border:var(--border-thin);border-radius:6px;color:#000;font-family:inherit;font-size:.95rem;font-weight:500;padding:10px 16px;outline:none;transition:all var(--transition-fast)}.param-input:focus{background:#fffafb;border-color:#000;box-shadow:3px 3px #ff90e833}.param-add-btn{display:flex;align-items:center;gap:4px;background:#000;border:var(--border-thin);color:#fff;font-family:inherit;font-size:.9rem;font-weight:800;padding:10px 20px;border-radius:6px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-transform:uppercase}.param-add-btn:hover:not(:disabled){background:var(--accent-red);color:#000;transform:translate(-2px,-2px);box-shadow:2px 2px #000}.param-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.param-suggestion-chip{display:inline-flex;align-items:center;gap:3px;background:transparent;border:1px dashed var(--border-glass-hover);color:var(--text-muted);font-family:inherit;font-size:.72rem;padding:3px 9px;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.param-suggestion-chip:hover{border-color:var(--accent-purple);color:var(--text-secondary);background:#a855f70d;border-style:solid}.param-active{margin-top:10px}.param-active-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;display:block;margin-bottom:6px}.param-tags{display:flex;flex-wrap:wrap;gap:6px}.param-tag{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#a855f726,#3b82f61a);border:1px solid rgba(168,85,247,.3);color:var(--text-primary);font-size:.8rem;font-weight:500;padding:5px 10px;border-radius:var(--radius-full)}.param-tag-remove{display:flex;align-items:center;background:none;border:none;color:var(--text-muted);padding:0;margin-left:2px;cursor:pointer;line-height:1;transition:color var(--transition-fast)}.param-tag-remove:hover{color:var(--accent-rose)}.param-hint{font-size:.72rem;color:var(--text-muted);margin-top:8px;line-height:1.4}.param-review-modal{max-width:1100px;width:95vw}.param-review-header{background:var(--accent-blue);color:#fff;padding:24px 32px;border-bottom:var(--border-main);border-radius:12px 12px 0 0}.param-review-title{font-size:1.8rem;font-weight:900;text-transform:uppercase;letter-spacing:-.02e}.param-review-subtitle{font-size:1rem;font-weight:600;opacity:.8;margin-top:4px}.param-review-body{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:24px;padding:32px;max-height:70vh;overflow-y:auto;background:#f9f5f0}.param-review-note{grid-column:1 / -1;display:flex;align-items:center;gap:16px;background:#fff9e6;border:var(--border-thin);border-radius:8px;padding:16px 24px;font-size:1rem;font-weight:700;color:#856404;margin-bottom:8px}.param-review-card{background:#fff;border:var(--border-main);border-radius:12px;padding:24px;transition:all var(--transition-fast);display:flex;flex-direction:column;height:100%}.param-review-card:hover{transform:translate(-4px,-4px);box-shadow:6px 6px #000}.param-review-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #000}.param-review-name{font-weight:950;font-size:1.4rem;color:#000;text-transform:uppercase;letter-spacing:-.04em}.param-review-edit-btn{display:flex;align-items:center;gap:6px;background:#f0f0f0;border:var(--border-thin);color:#000;font-family:inherit;font-size:.85rem;font-weight:800;padding:6px 14px;border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.param-review-edit-btn:hover{background:var(--accent-red)}.param-review-interpretation{font-size:1.1rem;font-weight:500;color:#000;line-height:1.5;padding:0 4px}.param-review-scope{font-size:.9rem;font-weight:600;color:#666;margin-top:12px;background:#f8f8f8;padding:8px 12px;border-radius:6px}.param-review-textarea{background:#fff;border:var(--border-main);border-radius:8px;color:#000;font-family:inherit;font-size:1rem;font-weight:500;padding:14px 16px;resize:vertical;outline:none;min-height:100px;transition:all var(--transition-fast)}.param-review-textarea:focus{background:#fffafb;box-shadow:4px 4px #ff90e833}.param-review-meaning-chip{background:#fff;border:var(--border-thin);color:#000;font-family:inherit;font-size:.85rem;font-weight:700;padding:6px 14px;border-radius:6px;cursor:pointer;transition:all var(--transition-fast)}.param-review-meaning-chip:hover{background:var(--accent-red);transform:translate(-1px,-1px);box-shadow:2px 2px #000}.ppt-generate-btn{background:linear-gradient(135deg,#a855f7,#6366f1)!important}.ppt-generate-btn:hover:not(:disabled){box-shadow:var(--shadow-glow-purple)!important}.ppt-download-btn{background:linear-gradient(135deg,#10b981,#06b6d4)!important}.ppt-progress-modal{max-width:580px}.ppt-progress-log{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.ppt-progress-line{font-size:.82rem;color:var(--text-secondary);padding:4px 0;border-bottom:1px solid var(--border-glass);animation:fade-slide-in .3s ease-out}.ppt-progress-line:last-child{border-bottom:none}.spin{animation:spin 1s linear infinite}
