.fin-widget{--navy-900: #041958;--navy-800: #061b4e;--primary: #4466f2;--secondary: #1ea6ec;--cyan: #01adee;--success: #22af47;--warning: #ff9f40;--danger: #e5484d;--bg-app: #f4f5f8;--bg-surface: #ffffff;--bg-tint: #eef1fc;--border: #e5e7eb;--text-secondary: #5a5f82;--text-muted: #9aa3b5;--shadow-raised: 0 20px 50px rgba(4, 25, 88, .22);--shadow-launcher: 0 10px 24px rgba(68, 102, 242, .38);--radius-md: 16px;--radius-lg: 20px;--radius-pill: 999px;position:fixed;right:20px;bottom:20px;z-index:2000;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:Tahoma,Geneva,Verdana,sans-serif;font-size:14px;line-height:1.45;color:var(--navy-900);text-align:left;letter-spacing:normal}.fin-widget *,.fin-widget *:before,.fin-widget *:after{box-sizing:border-box;font-family:inherit}.fin-widget button{font:inherit;text-transform:none;letter-spacing:normal;min-width:0}.fin-icon-btn{border:none;background:transparent;padding:0;margin:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:inherit}.fin-icon-btn svg{width:18px;height:18px}.fin-icon-btn:disabled{opacity:.45;cursor:default}.fin-launcher{width:56px;height:56px;border:none;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--primary),var(--cyan));color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-launcher);padding:0;flex-shrink:0;overflow:hidden;transition:transform .15s ease}.fin-launcher:hover{transform:scale(1.05)}.fin-launcher svg{width:24px;height:24px}.fin-launcher video{width:100%;height:100%;object-fit:cover;pointer-events:none}.fin-panel{position:relative;width:360px;max-width:calc(100vw - 40px);height:560px;max-height:calc(100vh - 120px);background:var(--bg-app);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);display:flex;flex-direction:column;overflow:hidden;transform-origin:bottom right;animation:fin-panel-in .2s cubic-bezier(.2,.8,.2,1);transition:width .22s cubic-bezier(.2,.8,.2,1),height .22s cubic-bezier(.2,.8,.2,1)}.fin-panel.hidden{display:none}.fin-panel.expanded{width:720px;height:1040px}@keyframes fin-panel-in{0%{opacity:0;transform:scale(.9) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.fin-header{flex-shrink:0;padding:16px;display:flex;align-items:center;gap:10px;background:radial-gradient(circle at 20% 10%,rgba(68,102,242,.35),transparent 45%),radial-gradient(circle at 85% 90%,rgba(1,173,238,.28),transparent 45%),linear-gradient(160deg,var(--navy-800) 0%,var(--navy-900) 55%,#020c30 100%)}.fin-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--cyan));box-shadow:0 2px 10px #0000002e;flex-shrink:0;overflow:hidden}.fin-avatar video{width:100%;height:100%;object-fit:cover;pointer-events:none}.fin-header-text{flex:1;min-width:0}.fin-header-text h4{margin:0;font-size:.92rem;color:#fff;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fin-header-text .fin-subtitle{display:block;font-size:.72rem;color:#ffffffad;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fin-header .fin-icon-btn{color:#ffffffb3;flex-shrink:0}.fin-header .fin-icon-btn:hover:not(:disabled){color:#fff}.fin-header .fin-icon-btn.active{color:var(--cyan)}.fin-header .fin-header-dev svg,.fin-header .fin-header-new svg{width:16px;height:16px}.fin-toolbar{flex-shrink:0;display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--bg-surface);border-bottom:1px solid var(--border)}.fin-toolbar-label{font-size:.72rem;color:var(--text-muted);flex-shrink:0}.fin-model-toggle{flex:1;display:flex;align-items:center;height:28px;background:var(--bg-tint);border-radius:var(--radius-pill);padding:2px;gap:2px}.fin-model-toggle button{flex:1;height:100%;border:none;background:transparent;border-radius:var(--radius-pill);font-size:.68rem;font-weight:600;color:var(--text-secondary);cursor:pointer;padding:0}.fin-model-toggle button.active{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.fin-model-toggle button:disabled{cursor:default}.fin-messages{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:14px 12px;display:flex;flex-direction:column;gap:12px}.fin-row{display:flex;align-items:flex-end;gap:8px;min-width:0;max-width:100%}.fin-row.from-user{justify-content:flex-end}.fin-col{display:flex;flex-direction:column;gap:4px;max-width:80%;min-width:0}.fin-panel.expanded .fin-col{max-width:88%}.fin-bubble{padding:.6rem .85rem;border-radius:var(--radius-md);font-size:.84rem;line-height:1.5;box-shadow:0 2px 10px #0419580f;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.fin-bubble p,.fin-bubble ul,.fin-bubble h4{margin:0 0 .5em}.fin-bubble>*:last-child{margin-bottom:0}.fin-bubble h4{font-size:.87rem;font-weight:700}.fin-bubble ul{padding-left:1.1em}.fin-bubble-user{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;border-bottom-right-radius:4px;white-space:pre-wrap}.fin-bubble-model{background:var(--bg-surface);border:1px solid var(--border);color:var(--navy-900);border-bottom-left-radius:4px}.fin-bubble-error{background:#fff4f4;border:1px solid #f7c9cb;color:#8f1d22;border-bottom-left-radius:4px}.fin-bubble-loading{display:flex;align-items:center}.fin-status{align-self:flex-start;font-size:.72rem;color:var(--text-secondary);padding:0 6px}.fin-status:before{content:"•";margin-right:6px;color:var(--primary)}.fin-notice{font-size:.76rem;color:var(--text-secondary);background:var(--bg-tint);border-radius:12px;padding:8px 10px}.fin-notice.warning{background:#fff6ea;color:#8a4b00}.fin-typing span{display:inline-block;width:5px;height:5px;margin-right:3px;border-radius:50%;background:var(--text-muted);animation:fin-typing 1.1s infinite ease-in-out}.fin-typing span:nth-child(2){animation-delay:.15s}.fin-typing span:nth-child(3){animation-delay:.3s}@keyframes fin-typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.fin-meta{display:flex;flex-wrap:wrap;gap:4px;padding:0 4px}.fin-meta-chip{font-size:.62rem;font-family:ui-monospace,Consolas,monospace;color:var(--text-muted);background:var(--bg-tint);border-radius:var(--radius-pill);padding:.12rem .5rem}.fin-file-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.fin-file-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%;font-size:.7rem;color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-pill);padding:.15rem .55rem}.fin-file-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fin-file-chip svg{width:12px;height:12px;flex-shrink:0}.fin-file-chip .fin-icon-btn{color:var(--text-muted)}.fin-file-chip .fin-icon-btn:hover{color:var(--danger)}.fin-proposal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px;box-shadow:0 2px 10px #0419580f;font-size:.8rem}.fin-proposal-head{display:flex;align-items:center;gap:6px;margin-bottom:6px}.fin-proposal-head strong{flex:1;font-size:.86rem}.fin-badge{font-size:.66rem;font-weight:700;border-radius:var(--radius-pill);padding:.12rem .55rem;color:#fff;white-space:nowrap}.fin-badge.ok{background:var(--success)}.fin-badge.err{background:var(--danger)}.fin-badge.warn{background:var(--warning)}.fin-issue{border-radius:8px;padding:5px 8px;margin-top:4px;font-size:.74rem;line-height:1.4}.fin-issue.err{background:#fff4f4;color:#8f1d22}.fin-issue.warn{background:#fff6ea;color:#8a4b00}.fin-impact{margin-top:8px}.fin-impact-title{font-size:.68rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.fin-impact-row{display:flex;justify-content:space-between;gap:8px;padding:2px 0;border-bottom:1px dashed var(--border)}.fin-impact-row:last-child{border-bottom:none}.fin-num{font-variant-numeric:tabular-nums;white-space:nowrap}.fin-delta-up{color:var(--success);margin-left:6px}.fin-delta-down{color:var(--danger);margin-left:6px}.fin-change{margin-top:8px;border-top:1px solid var(--border);padding-top:6px}.fin-change summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:6px;font-size:.78rem}.fin-change summary::-webkit-details-marker{display:none}.fin-change summary:before{content:"▸";color:var(--text-muted);transition:transform .15s ease}.fin-change[open] summary:before{transform:rotate(90deg)}.fin-kind{font-size:.64rem;font-weight:700;border-radius:var(--radius-pill);padding:.08rem .5rem;color:#fff}.fin-kind.Added{background:var(--success)}.fin-kind.Modified{background:var(--warning)}.fin-kind.Deleted{background:var(--danger)}.fin-entry{margin:6px 0 2px 14px}.fin-entry-title{font-size:.68rem;color:var(--text-muted);margin-bottom:2px}.fin-line{display:grid;grid-template-columns:92px 1fr auto;gap:6px;font-size:.72rem}.fin-line span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.fin-debit{color:var(--danger)}.fin-credit{color:var(--success)}.fin-savebar{flex-shrink:0;padding:10px 12px;background:var(--bg-surface);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.fin-savebar input{width:100%;padding:.5rem .8rem;border:1px solid var(--border);border-radius:var(--radius-pill);font-size:.8rem;background:var(--bg-app);color:var(--navy-900);outline:none}.fin-savebar input:focus{border-color:var(--primary);background:var(--bg-surface)}.fin-save-btn{width:100%;height:36px;border:none;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--success),#3ccf6a);color:#fff;font-weight:700;font-size:.82rem;cursor:pointer}.fin-save-btn:disabled{background:var(--text-muted);cursor:default}.fin-hint{font-size:.66rem;color:var(--text-muted)}.fin-error-text{font-size:.74rem;color:#8f1d22}.fin-attachments{flex-shrink:0;display:flex;flex-wrap:wrap;gap:4px;padding:8px 12px 0;background:var(--bg-surface);border-top:1px solid var(--border)}.fin-attachments .fin-file-chip{background:var(--bg-tint);border-color:transparent;max-width:48%}.fin-composer{flex-shrink:0;display:flex;align-items:flex-end;gap:8px;padding:10px 12px;background:var(--bg-surface);border-top:1px solid var(--border)}.fin-attachments+.fin-composer{border-top:none}.fin-composer textarea{flex:1;min-height:38px;max-height:140px;resize:none;padding:.55rem .9rem;border:1px solid var(--border);border-radius:19px;font-size:.84rem;line-height:1.4;background:var(--bg-app);color:var(--navy-900);outline:none;margin:0}.fin-composer textarea:focus{border-color:var(--primary);background:var(--bg-surface)}.fin-composer textarea:disabled{opacity:.6}.fin-attach-btn{width:38px;height:38px;flex-shrink:0;border-radius:50%;color:var(--text-secondary);background:var(--bg-tint)}.fin-attach-btn:hover:not(:disabled){color:var(--primary)}.fin-send-btn{width:38px;height:38px;flex-shrink:0;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff}.fin-send-btn:disabled{opacity:.5}.fin-drop-overlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#041958d1;color:#fff;font-weight:600;font-size:.9rem;border:2px dashed var(--cyan);border-radius:var(--radius-lg);pointer-events:none}.fin-drop-overlay svg{width:34px;height:34px}.fin-drop-overlay small{font-weight:400;font-size:.72rem;opacity:.8}@media(max-width:480px){.fin-widget{right:12px;bottom:12px}.fin-panel,.fin-panel.expanded{width:calc(100vw - 24px);height:calc(100vh - 140px)}}.fin-steps{align-self:stretch;background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:8px 10px;font-size:.74rem;color:var(--text-secondary)}.fin-steps.live{border-color:#4466f273;box-shadow:0 0 0 3px #4466f214}.fin-steps-head{display:flex;align-items:center;gap:6px;font-weight:700;color:var(--navy-900);margin-bottom:4px}.fin-steps-head>svg{width:13px;height:13px;color:var(--success)}.fin-steps-head>span:not(.fin-spinner){flex:1}.fin-steps-toggle{font-size:.68rem;font-weight:600;color:var(--primary);white-space:nowrap}.fin-step{display:flex;gap:6px;align-items:flex-start;padding:2px 0;line-height:1.4}.fin-step-icon{flex-shrink:0;width:13px;height:13px;margin-top:2px;color:var(--success);display:inline-flex}.fin-step-icon svg{width:13px;height:13px}.fin-step.progress .fin-step-icon{color:var(--primary)}.fin-step.progress .fin-step-text{font-style:italic;color:var(--navy-900)}.fin-step.current .fin-step-text{color:var(--navy-900);font-weight:600}.fin-step-text{min-width:0;overflow-wrap:anywhere}.fin-step-more{color:var(--text-muted);padding-left:19px}.fin-entry-chips{display:inline-flex;flex-wrap:wrap;gap:3px;margin-left:6px;vertical-align:middle}.fin-entry-chip{border:1px solid rgba(68,102,242,.35);background:var(--bg-tint);color:var(--primary);border-radius:var(--radius-pill);padding:0 .45rem;font-size:.66rem;font-weight:700;line-height:1.5;cursor:pointer;white-space:nowrap}.fin-entry-chip:hover{background:var(--primary);color:#fff}.fin-change summary .fin-entry-chip{margin-left:auto}.fin-entry-more{font-size:.66rem;color:var(--text-muted)}.fin-spinner{width:13px;height:13px;border:2px solid rgba(68,102,242,.25);border-top-color:var(--primary);border-radius:50%;animation:fin-spin .8s linear infinite;flex-shrink:0}.fin-spinner.small{width:11px;height:11px}@keyframes fin-spin{to{transform:rotate(360deg)}}.fin-question{flex-shrink:0;max-height:55%;overflow-y:auto;padding:10px 12px 8px;background:var(--bg-surface);border-top:2px solid var(--primary);display:flex;flex-direction:column;gap:8px;animation:fin-question-in .18s ease-out}@keyframes fin-question-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.fin-question+.fin-composer{border-top:none}.fin-question-tabs{display:flex;flex-wrap:wrap;gap:4px}.fin-widget .fin-question-tab{border:1px solid var(--border);background:var(--bg-app);color:var(--text-secondary);border-radius:var(--radius-pill);padding:.1rem .6rem;font-size:.7rem;font-weight:700;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fin-widget .fin-question-tab.active{border-color:var(--primary);background:var(--bg-tint);color:var(--primary)}.fin-widget .fin-question-tab.done:not(.active){color:var(--success)}.fin-question-text{font-size:.84rem;font-weight:700;color:var(--navy-900);overflow-wrap:anywhere}.fin-question-hint{font-weight:400;color:var(--text-muted);font-size:.74rem}.fin-question-tag{display:inline-block;margin-right:6px;padding:0 .45rem;border-radius:var(--radius-pill);background:var(--bg-tint);color:var(--primary);font-size:.66rem;font-weight:700;vertical-align:1px}.fin-question-options{display:flex;flex-direction:column;gap:5px}.fin-widget .fin-option{display:flex;align-items:flex-start;gap:8px;width:100%;padding:.4rem .6rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-surface);color:var(--navy-900);font-size:.8rem;text-align:left;cursor:pointer;transition:border-color .12s,background .12s}.fin-widget button.fin-option:hover:not(:disabled){border-color:var(--primary)}.fin-widget .fin-option.selected{border-color:var(--primary);background:var(--bg-tint)}.fin-widget .fin-option:disabled{cursor:default;opacity:.6}.fin-widget .fin-option-key{flex-shrink:0;width:20px;height:20px;border-radius:6px;border:none;background:var(--bg-app);color:var(--text-secondary);font-size:.72rem;font-weight:700;line-height:20px;text-align:center;padding:0;cursor:pointer}.fin-widget .fin-option.selected .fin-option-key{background:var(--primary);color:#fff}.fin-option-body{display:flex;flex-direction:column;min-width:0}.fin-option-label{font-weight:600;overflow-wrap:anywhere}.fin-option-badge{margin-left:6px;padding:0 .4rem;border-radius:var(--radius-pill);background:#22af4724;color:var(--success);font-size:.64rem;font-weight:700;vertical-align:1px}.fin-option-desc{color:var(--text-secondary);font-size:.74rem;overflow-wrap:anywhere}.fin-widget .fin-option-other{align-items:center;cursor:default}.fin-widget .fin-option-other input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--navy-900);font-size:.8rem;padding:0;margin:0}.fin-question-actions{display:flex;align-items:center;gap:6px}.fin-question-progress{flex:1;font-size:.7rem;color:var(--text-muted)}.fin-widget .fin-question-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:var(--radius-pill);padding:.25rem .8rem;font-size:.76rem;font-weight:700;cursor:pointer;white-space:nowrap}.fin-widget .fin-question-btn.primary{border-color:var(--primary);background:var(--primary);color:#fff}.fin-widget .fin-question-btn:disabled{opacity:.5;cursor:default}.fin-question-bubble>div+div{margin-top:4px}.fin-question-state{margin-top:6px;font-size:.7rem;color:var(--text-muted)}.fin-muted{color:var(--text-muted);font-weight:400}:root,[data-theme=dark]{color-scheme:dark;--app-bg: #0b1220;--app-bg-2: #0f172a;--app-text: #ffffff;--app-surface-rgb: 11, 18, 32;--app-contrast-rgb: 255, 255, 255;--app-inset-bg: rgba(0, 0, 0, .2);--app-heading-from: #ffffff;--app-paper-glow: radial-gradient(1200px 600px at 20% -20%, rgba(12,80,172,.45) 0%, rgba(11,18,32,0) 60%);--app-blue-soft: #90caf9;--app-blue: #64b5f6;--app-cyan: #61dafb;--app-green: #00e676;--app-green-soft: #81c784;--app-green-2: #66bb6a;--app-pink: #f48fb1;--app-red: #ef5350;--app-red-soft: #ef9a9a;--app-red-strong: #ff1744;--app-orange: #ffb74d;--app-amber: #ffb300;--app-purple: #ce93d8;--app-surface-30: rgba(11, 18, 32, .3);--app-surface-40: rgba(11, 18, 32, .4);--app-surface-45: rgba(11, 18, 32, .45);--app-surface-60: rgba(11, 18, 32, .6);--app-surface-65: rgba(11, 18, 32, .65);--app-surface-80: rgba(11, 18, 32, .8);--app-line-10: rgba(61, 122, 214, .1);--app-line-15: rgba(61, 122, 214, .15);--app-line-18: rgba(61, 122, 214, .18);--app-line-20: rgba(61, 122, 214, .2);--app-line-25: rgba(61, 122, 214, .25);--app-line-30: rgba(61, 122, 214, .3);--app-card-shadow: none;--app-card-fill: rgba(255, 255, 255, .02);--app-on-brand-disabled: rgba(255, 255, 255, .3);--app-brand-disabled-opacity: 1}[data-theme=light]{color-scheme:light;--app-bg: #f5f7fb;--app-bg-2: #eef2f8;--app-text: #0f1e36;--app-surface-rgb: 255, 255, 255;--app-contrast-rgb: 15, 30, 54;--app-inset-bg: #f3f6fa;--app-heading-from: #0f1e36;--app-paper-glow: none;--app-blue-soft: #1565c0;--app-blue: #1976d2;--app-cyan: #0277bd;--app-green: #2e7d32;--app-green-soft: #388e3c;--app-green-2: #2e7d32;--app-pink: #c2185b;--app-red: #d32f2f;--app-red-soft: #c62828;--app-red-strong: #d50000;--app-orange: #e65100;--app-amber: #b26a00;--app-purple: #7b1fa2;--app-surface-30: #ffffff;--app-surface-40: #ffffff;--app-surface-45: rgba(255, 255, 255, .92);--app-surface-60: #ffffff;--app-surface-65: rgba(255, 255, 255, .88);--app-surface-80: #ffffff;--app-line-10: #e6ebf2;--app-line-15: #e1e7ef;--app-line-18: #e1e7ef;--app-line-20: #d8e0ea;--app-line-25: #d8e0ea;--app-line-30: #c9d4e3;--app-card-shadow: 0 1px 2px rgba(15, 30, 54, .04), 0 4px 14px rgba(15, 30, 54, .05);--app-card-fill: #ffffff;--app-on-brand-disabled: rgba(255, 255, 255, .9);--app-brand-disabled-opacity: .5}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--app-text);background-color:var(--app-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100%}body{margin:0;padding:0;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;background-color:var(--app-bg);color:var(--app-text);width:100vw;overflow:hidden}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}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}
