:root{--bg:#0a0a0a;--surface:#111111;--surface-raised:#1a1a1a;--surface-hover:#222222;--border:#2a2a2a;--border-soft:#1e1e1e;--text:#f0f0ee;--text-muted:#8a8a85;--text-soft:#5c5b54;--accent:#d4570a;--accent-soft:rgba(212,87,10,0.12);--accent-contrast:#0a0a0a;--green:#2d9e5f;--green-soft:rgba(45,158,95,0.12);--warn:#e8a020;--warn-soft:rgba(232,160,32,0.12);--danger:#e05252;--danger-soft:rgba(224,82,82,0.1);--premium:#8b7ff0;--premium-soft:rgba(139,127,240,0.12);--shadow:0 8px 32px rgba(0,0,0,0.4);--chat-width:340px;--radius:10px;--font-ui:var(--font-geist),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-report:var(--font-source-serif),ui-serif,Georgia,Cambria,"Times New Roman",serif;--font-data:var(--font-plex-mono),"SFMono-Regular",Consolas,"Liberation Mono",monospace}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a,button{-webkit-tap-highlight-color:transparent}h1,h2,h3{font-weight:600;line-height:1.25}.workspace-shell{display:grid;grid-template-columns:var(--chat-width) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;position:relative}.resize-handle{position:absolute;top:0;bottom:0;left:var(--chat-width);width:9px;transform:translateX(-4px);cursor:col-resize;z-index:30}.resize-handle:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translateX(-50%);background:transparent;transition:background .12s,width .12s}.resize-handle:active:after,.resize-handle:hover:after{width:2px;background:var(--accent)}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;border-right:1px solid var(--border);background:var(--surface);min-height:0}.chat-header{display:flex;align-items:center;gap:10px;padding:14px 16px 12px;border-bottom:1px solid var(--border-soft)}.chat-logo-mark{width:28px;height:28px;flex:0 0 28px;border-radius:6px;object-fit:cover;background:#fff}.chat-header-title{font-size:13.5px;font-weight:600;color:var(--text);flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header-status{font-family:var(--font-data);font-size:11px;color:var(--text-muted);flex:0 0 auto}.chat-thread{display:flex;flex-direction:column;gap:1px;min-height:0;overflow-y:auto;padding:12px 0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.chat-bubble{padding:8px 16px;font-size:13.5px;line-height:1.55}.chat-bubble p{margin:0}.chat-bubble p+p{margin-top:3px}.chat-bubble.assistant{color:var(--text)}.chat-bubble.user{align-self:flex-end;max-width:85%;margin:4px 16px 4px auto;padding:8px 12px;border-radius:12px 12px 4px 12px;background:var(--surface-raised);border:1px solid var(--border);color:var(--text)}.chat-bubble.user.pending{opacity:.55}.chat-bubble.system{display:flex;align-items:center;gap:7px;color:var(--green);font-size:12.5px;padding:6px 16px}.chat-bubble.status{color:var(--text-muted);font-size:12.5px;padding:6px 16px}.chat-step-actions{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border-soft);background:var(--surface);padding:10px 12px}.chat-step-actions.build{display:grid;grid-template-columns:minmax(0,1fr)}.chat-step-actions .research-depth-control{width:100%}.step-secondary{height:34px;padding:0 12px;border-radius:7px;font-size:12.5px;font-weight:600;color:var(--text-muted);border:1px solid var(--border)}.step-secondary:hover{border-color:#444;color:var(--text)}.step-primary{display:inline-flex;align-items:center;justify-content:center;height:34px;min-width:0;padding:0 14px;border-radius:7px;background:var(--accent);color:var(--accent-contrast);font-size:12.5px;font-weight:700;text-align:center}.chat-step-actions:not(.build) .step-primary{margin-left:auto}.chat-step-actions.build .step-primary{width:100%}.step-primary:hover:not(:disabled){opacity:.9}.step-primary:disabled,.step-secondary:disabled{opacity:.5;cursor:not-allowed}.composer{border-top:1px solid var(--border-soft);padding:12px}.composer-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);overflow:hidden}.composer-box:focus-within{border-color:#444}.composer-context{display:flex;align-items:center;gap:7px;width:100%;padding:8px 14px 7px;font-size:11.5px;color:var(--text-muted);border-bottom:1px solid var(--border-soft);text-align:left;transition:color .1s}.composer-context:hover{color:var(--text)}.composer-context-dot{width:6px;height:6px;border-radius:50%;flex:0 0 auto;background:var(--text-soft)}.composer-context-dot.ready{background:var(--green)}.composer-context-dot.generating{background:var(--text-muted);animation:pulse-dot 1.2s ease-in-out infinite}.composer-context-icon{margin-left:auto;color:var(--text-soft)}.composer textarea{display:block;width:100%;min-height:44px;max-height:140px;resize:none;border:none;outline:none;padding:12px 14px 6px;font-size:13.5px;line-height:1.5;background:transparent;color:var(--text);overflow-y:auto}.composer textarea::placeholder{color:var(--text-muted)}.composer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 8px}.composer-tools{display:flex;align-items:center;gap:2px}.tool-icon{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;color:var(--text-muted);transition:color .1s,background .1s}.tool-icon:hover{color:var(--text);background:var(--surface-hover)}.tool-icon:disabled{opacity:.3;cursor:not-allowed}.tool-icon.active{color:var(--text)}.send-btn{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;background:var(--text);color:var(--bg);flex:0 0 auto}.send-btn:hover{opacity:.85}.send-btn:disabled{opacity:.5;cursor:not-allowed}.module-progress{display:flex;align-items:center;gap:10px;padding:10px 24px 0;background:var(--bg)}.module-progress-track{flex:1 1;height:3px;border-radius:3px;background:var(--surface-raised);overflow:hidden}.module-progress-fill{height:100%;background:var(--green);border-radius:3px;transition:width .3s ease}.module-progress-label{font-family:var(--font-data);font-size:11px;color:var(--text-muted);flex:0 0 auto}.module-tabs{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none;flex-shrink:0;border-bottom:1px solid var(--border-soft);padding:0 8px;background:var(--bg)}.module-tabs::-webkit-scrollbar{display:none}.module-group{display:flex;align-items:center;gap:1px;flex-shrink:0}.module-group+.module-group{border-left:1px solid var(--border-soft);margin-left:4px;padding-left:4px}.module-group-label{font-family:var(--font-data);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);padding:0 6px;flex-shrink:0}.module-tab{font-family:var(--font-ui);display:flex;align-items:center;gap:6px;flex-shrink:0;padding:0 11px;height:36px;font-size:12.5px;white-space:nowrap;color:var(--text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .1s}.module-tab:hover{color:var(--text)}.module-tab.active{color:var(--text);border-bottom-color:var(--text)}.module-tab.locked{opacity:.35}.module-tab-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0;background:transparent}.module-tab-dot.ready{background:var(--green)}.module-tab-dot.stale{background:var(--warn)}.module-tab-dot.generating{background:var(--text-muted);animation:pulse-dot 1.2s ease-in-out infinite}.module-tab-dot.error{background:var(--danger)}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.module-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:80px 32px;color:var(--text-soft);font-size:13px}.module-placeholder.error{color:var(--text-muted)}.module-placeholder.error button{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;text-decoration:underline}.module-view{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg)}.module-view-content{flex:1 1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.module-view-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--border-soft)}.module-view-title h2{font-size:15px;font-weight:600;color:var(--text)}.module-view-title p{font-size:11.5px;color:var(--text-muted);margin-top:2px}.module-view-actions{display:flex;align-items:center;gap:4px;flex:0 0 auto}.icon-btn{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;color:var(--text-muted);background:transparent;text-decoration:none;transition:color .1s,background .1s}.icon-btn:hover{color:var(--text);background:var(--surface-raised)}.icon-btn:disabled{opacity:.25;cursor:not-allowed}.icon-btn.disabled{opacity:.25;pointer-events:none}.module-view-body{padding:28px 32px}.module-band{display:flex;align-items:center;gap:10px;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--border-soft)}.module-band-icon{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:8px;background:var(--surface-raised);border:1px solid var(--border);color:var(--text-muted)}.module-band p{font-size:12.5px;color:var(--text-muted);line-height:1.45}.module-lead{font-family:var(--font-report);font-size:17px;line-height:1.55;margin-bottom:26px;padding-left:12px;border-left:2px solid var(--accent)}.module-lead,.value-card-title{font-weight:600;color:var(--text)}.value-card-title{font-size:13.5px;margin-bottom:6px}.value-card-title+dl{margin-top:0}.value-cards{display:grid;grid-gap:8px;gap:8px}.value-card{border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);padding:12px 14px}.value-card dl{gap:8px}.value-card>p:first-child{font-weight:600}.module-section{margin-bottom:28px}.module-section h3{font-family:var(--font-data);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px}.module-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.module-section-head h3{margin-bottom:0}.section-edit{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-soft);opacity:0;transition:opacity .12s,color .12s}.module-section:hover .section-edit{opacity:1}.section-edit:hover{color:var(--text)}.section-editor{display:grid;grid-gap:8px;gap:8px}.section-editor textarea{width:100%;min-height:60px;resize:none;border:1px solid var(--premium);border-radius:8px;padding:10px 12px;font-size:14px;line-height:1.5;background:var(--surface-raised);color:var(--text);outline:none}.section-editor-actions{display:flex;align-items:center;gap:8px}.section-editor-hint{font-size:11px;color:var(--text-soft);margin-right:auto}.section-cancel{font-size:12px;color:var(--text-muted);padding:6px 10px;border-radius:6px}.section-cancel:hover{color:var(--text)}.section-save{font-size:12px;font-weight:600;color:var(--accent-contrast);background:var(--accent);padding:6px 12px;border-radius:6px}.section-save:disabled{opacity:.5;cursor:not-allowed}.module-section li,.module-section p{font-family:var(--font-report);font-size:14.5px;color:var(--text);line-height:1.65}.module-section ul{display:grid;grid-gap:6px;gap:6px;padding-left:18px}.module-section dl{display:grid;grid-gap:12px;gap:12px}.module-section dt{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.module-section dd{margin-top:3px;font-size:14px;line-height:1.55;color:var(--text)}.module-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:360px;color:var(--text-muted);text-align:center;padding:40px}.module-empty h3{color:var(--text);font-size:16px;margin-bottom:2px}.module-empty p{font-size:13.5px;max-width:300px;line-height:1.55}.module-empty button{margin-top:8px;height:34px;padding:0 16px;border-radius:8px;background:var(--surface-raised);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:600}.module-empty button:hover{border-color:#444}.module-empty-hint{color:var(--text-soft);font-size:12.5px;max-width:300px}.module-empty .module-empty-cta{display:inline-flex;align-items:center;gap:6px}.research-depth-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:4px;gap:4px;width:min(286px,100%);padding:3px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.module-empty .research-depth-control{margin-top:4px}.module-empty .research-depth-option,.research-depth-option{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;height:38px;margin-top:0;padding:0 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:12.5px;font-weight:600}.research-depth-option:hover{border-color:#444}.research-depth-option.active{background:var(--surface-raised);border-color:var(--border);color:var(--text)}.research-depth-option.locked:not(.active){opacity:.65}.research-depth-option small{font-family:var(--font-data);flex:0 0 auto;color:var(--text-soft);font-size:11px;font-weight:600}.research-depth-option.active small{color:var(--green)}.stale-banner{display:flex;align-items:center;gap:8px;margin:0 32px 20px;padding:9px 12px;border-radius:8px;background:var(--warn-soft);color:var(--warn);font-size:13px;border:1px solid rgba(232,160,32,.22)}.edit-box{border-top:1px solid var(--border-soft);padding:16px 32px;display:grid;grid-gap:8px;gap:8px}.edit-box label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);display:grid;grid-gap:7px;gap:7px}.edit-cost{font-family:var(--font-data);font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-soft)}.edit-box textarea{width:100%;min-height:64px;resize:none;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:13.5px;line-height:1.45;background:var(--surface-raised);color:var(--text);outline:none}.edit-box textarea:focus{border-color:#444}.edit-box button{height:32px;padding:0 14px;border-radius:7px;background:var(--surface-raised);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:600;width:-moz-fit-content;width:fit-content}.edit-box button:hover{border-color:#444}.overlay{position:fixed;inset:0;display:flex;justify-content:flex-end;background:rgba(0,0,0,.5);z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.overlay-center{justify-content:center;align-items:center}.side-sheet{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(400px,100%);height:100%;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow)}.side-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-soft)}.side-sheet-header h2{font-size:15px}.side-sheet-header p{font-size:11.5px;color:var(--text-muted);margin-top:2px}.source-list{display:grid;align-content:start;grid-gap:8px;gap:8px;min-height:0;overflow:auto;padding:16px}.source-item{border:1px solid var(--border);border-radius:8px;padding:12px;background:var(--surface-raised)}.source-item strong{font-size:12.5px;display:block;margin-bottom:2px}.source-item span{font-size:11.5px;color:var(--text-muted);display:block}.source-item p{font-size:13px;color:var(--text);margin:6px 0 4px;line-height:1.42}.source-item small{font-family:var(--font-data);font-size:11px;color:var(--text-soft)}.sheet-empty{display:grid;place-items:center;padding:40px 24px;color:var(--text-muted);font-size:13.5px;text-align:center}.upgrade-sheet{--upgrade-columns:3;width:-moz-fit-content;width:fit-content;max-width:calc(100% - 32px);height:auto;max-height:calc(100vh - 40px);border-radius:12px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden}.upgrade-sheet.plans-2{--upgrade-columns:2}.upgrade-sheet.plans-3{--upgrade-columns:3}.upgrade-sheet.plans-4{--upgrade-columns:4}.upgrade-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--border-soft)}.upgrade-header h2{font-size:17px}.upgrade-header p{font-size:13px;color:var(--text-muted);margin-top:3px}.upgrade-grid{display:grid;grid-template-columns:repeat(var(--upgrade-columns),minmax(150px,162px));grid-gap:10px;gap:10px;padding:16px}.upgrade-plan{position:relative;display:flex;flex-direction:column;gap:6px;min-height:184px;border:1px solid var(--border);border-radius:12px;color:var(--text);background:var(--surface-raised);padding:16px 14px 14px;text-align:left}.upgrade-plan.recommended{border:2px solid var(--accent);background:#141008;padding:15px 13px 13px}.upgrade-plan-badge{font-family:var(--font-data);position:absolute;top:-9px;left:14px;background:var(--accent);color:var(--accent-contrast);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:6px}.upgrade-plan-head{display:flex;align-items:center;gap:6px}.upgrade-plan-name{font-size:13px;font-weight:600;color:var(--text)}.plan-deep-badge{font-family:var(--font-data);display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;color:var(--premium);background:var(--premium-soft);padding:1px 6px;border-radius:5px}.upgrade-plan-price{display:flex;align-items:baseline;gap:5px}.upgrade-plan-price strong{font-size:26px;font-weight:700;color:var(--text)}.upgrade-plan-price span{font-size:12px;color:var(--text-muted)}.upgrade-plan-credits{font-family:var(--font-data);display:flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--green)}.upgrade-plan-caption{font-size:12px;color:var(--text-muted);line-height:1.4;flex:1 1}.upgrade-plan-cta{height:34px;border-radius:8px;border:1px solid var(--border);background:var(--surface-hover);color:var(--text);font-size:13px;font-weight:600}.upgrade-plan-cta:hover:not(:disabled){border-color:#444}.upgrade-plan-cta.primary{border:none;background:var(--accent);color:var(--accent-contrast);font-weight:700}.upgrade-plan-cta:disabled{opacity:.5;cursor:not-allowed}.topup-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 16px 16px}.topup-label{font-family:var(--font-data);font-size:11px;color:var(--text-muted)}.topup-options{display:flex;gap:6px;flex-wrap:wrap}.topup-pack{font-family:var(--font-data);font-size:12px;border:1px solid var(--border);border-radius:20px;padding:5px 12px;color:var(--text);background:transparent}.topup-pack:hover:not(:disabled){border-color:#444}.topup-pack:disabled{opacity:.5;cursor:not-allowed}.credits-pill{font-family:var(--font-data);display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:14px;border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font-size:12px;font-weight:600}.credits-pill:hover{border-color:#444}.credits-pill.low{color:var(--warn);border-color:rgba(232,160,32,.3)}.link-btn{background:none;border:none;color:var(--text-muted);font-size:12px;text-decoration:underline}.link-btn:hover{color:var(--text)}.mode-menu{position:relative}.mode-trigger{display:flex;align-items:center;gap:5px;height:26px;padding:0 9px;border:1px solid var(--border);border-radius:7px;font-size:12px;font-weight:600;color:var(--text)}.mode-trigger:hover:not(:disabled){border-color:#444}.mode-trigger:disabled{color:var(--text-muted);cursor:default}.mode-chevron{color:var(--text-soft)}.mode-dropdown{position:absolute;bottom:calc(100% + 6px);left:0;z-index:20;width:150px;padding:4px;background:var(--surface-raised);border:1px solid var(--border);border-radius:9px;box-shadow:var(--shadow);display:grid;grid-gap:2px;gap:2px}.mode-option{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:6px;text-align:left;font-size:12.5px;font-weight:600;color:var(--text)}.mode-option:hover{background:var(--surface-hover)}.mode-check{margin-left:auto;color:var(--green)}.memo-card{margin:4px 16px 8px;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);overflow:hidden}.memo-card-label{font-family:var(--font-data);display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);border-bottom:1px solid var(--border-soft)}.memo-one-liner{font-family:var(--font-report);padding:12px 14px 8px;font-size:14.5px;font-weight:600;color:var(--text);line-height:1.45}.memo-facts{padding:0 14px 12px;display:grid;grid-gap:2px;gap:2px}.memo-facts dt{font-family:var(--font-data);font-size:10px;font-weight:700;color:var(--text-soft);text-transform:uppercase;letter-spacing:.05em;margin-top:8px}.memo-facts dd{font-size:13px;color:var(--text-muted);line-height:1.4}.memo-done{display:flex;align-items:center;gap:6px;padding:10px 14px;border-top:1px solid var(--border-soft);color:var(--green);font-size:12.5px;font-weight:600}.diagnostic-view{display:flex;flex-direction:column}.diagnostic-hero{padding:48px 32px 40px;border-bottom:1px solid var(--border-soft)}.diagnostic-verdict{font-family:var(--font-ui);font-size:54px;font-weight:700;line-height:1;letter-spacing:0}.diagnostic-score{margin-top:10px;font-size:18px;font-weight:600;color:var(--text-muted)}.diagnostic-score span{font-family:var(--font-data);font-size:13px;font-weight:400;margin-left:1px}.verdict-go{background:var(--green-soft)}.verdict-caution{background:var(--warn-soft)}.verdict-no-go{background:var(--danger-soft)}.verdict-go .diagnostic-verdict{color:var(--green)}.verdict-caution .diagnostic-verdict{color:var(--warn)}.verdict-no-go .diagnostic-verdict{color:var(--danger)}.diagnostic-section{padding:24px 32px 0}.diagnostic-section:last-of-type{padding-bottom:24px}.diagnostic-section h3{font-family:var(--font-data);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:10px}.diagnostic-section p{font-family:var(--font-report);font-size:14px;color:var(--text);line-height:1.6}.diagnostic-checks,.diagnostic-risks{list-style:none;padding:0;display:grid;grid-gap:8px;gap:8px}.diagnostic-checks li,.diagnostic-risks li{font-size:14px;color:var(--text);line-height:1.55;padding-left:20px;position:relative}.diagnostic-checks li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}.diagnostic-risks li:before{content:"↗";position:absolute;left:0;color:var(--warn);font-weight:700}.diagnostic-research-depth{margin:24px 32px 0}.diagnostic-research-depth .research-depth-control{width:min(320px,100%)}.diagnostic-research-depth+.diagnostic-paywall{margin-top:12px}.diagnostic-paywall{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 32px 0;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised);text-align:left;color:var(--text);font-size:13.5px;line-height:1.45;cursor:pointer;transition:border-color .15s;width:calc(100% - 64px)}.diagnostic-paywall:hover{border-color:#444}.diagnostic-paywall-cta{flex-shrink:0;font-size:13px;font-weight:600;color:var(--green)}.diagnostic-competitors{display:flex;flex-direction:column;gap:8px}.diagnostic-competitor{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.diagnostic-competitor-header{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.diagnostic-competitor-name{font-size:13px;font-weight:600;color:var(--text)}.diagnostic-competitor-price{font-size:11.5px;color:var(--text-muted)}.diagnostic-competitor-positioning{font-size:12.5px;color:var(--text-muted);line-height:1.5}.diagnostic-competitor-weakness{font-size:12px;color:var(--warn);margin-top:4px;line-height:1.4}.diagnostic-watermark{padding:16px 32px 32px;font-size:11.5px;color:var(--text-soft);line-height:1.5}.auth-modal{border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.toast-error,.toast-notice{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:8px;max-width:min(520px,calc(100% - 32px));border:1px solid rgba(200,60,50,.3);border-radius:8px;color:#f87171;background:rgba(200,60,50,.12);padding:10px 14px;font-size:13px}.toast-notice{border-color:rgba(45,158,95,.35);color:#86efac;background:rgba(45,158,95,.12)}.module-back{display:none;width:30px;height:30px;place-items:center;border-radius:7px;color:var(--text-muted);flex:0 0 auto;margin-right:4px;transition:color .1s,background .1s}.module-back:hover{color:var(--text);background:var(--surface-raised)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:900px){.workspace-shell{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);height:100vh;height:100dvh;height:var(--app-height,100dvh)}.module-back{display:grid}.chat-panel,.module-view,.resize-handle{display:none}.workspace-shell.show-chat .chat-panel{display:grid}.workspace-shell.show-canvas .module-view{display:flex}.upgrade-sheet{width:calc(100% - 24px);max-width:420px;overflow-y:auto}.upgrade-grid{grid-template-columns:1fr}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist:"Geist","Geist Fallback"}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/3d165c286d94e27c-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/e54d16b9f2c4535b-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/7c21074d9bafed1b-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/916860560b9a2bc2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/591e43f23f51e5a5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/97ac91773d3121b2-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"Source Serif 4 Fallback";src:local("Times New Roman");ascent-override:87.87%;descent-override:28.41%;line-gap-override:0.00%;size-adjust:117.91%}.__className_25ee46{font-family:"Source Serif 4","Source Serif 4 Fallback";font-style:normal}.__variable_25ee46{--font-source-serif:"Source Serif 4","Source Serif 4 Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/704b853f32d191d5-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/656feb427634a431-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/991629005c80bdf1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/46e154b2fcbd6033-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/37786be940ec402b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_b4c22e{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_b4c22e{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}