@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;font-weight:400;color-scheme:dark;color:#e2e8f0;background-color:#0a0a0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh;background:linear-gradient(135deg,#0a0a0f,#1a1a2e,#16213e);background-attachment:fixed}#root{min-height:100vh;width:100%}a{font-weight:500;color:#00d9ff;text-decoration:inherit;transition:color .2s ease}a:hover{color:#a855f7;text-shadow:0 0 10px rgba(0,217,255,.5)}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#ffffff0d;color:#e2e8f0;cursor:pointer;transition:all .25s ease}button:hover{transform:translateY(-1px);background-color:#ffffff1a}button:focus,button:focus-visible{outline:2px solid #00d9ff;outline-offset:2px}h1,h2,h3,h4,h5,h6{color:#f1f5f9;line-height:1.2}input,select,textarea{font-family:inherit;background-color:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#e2e8f0}input::placeholder,textarea::placeholder{color:#64748b}.btn{border:none;background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer}:root{--bg-primary: #0a0a0f;--bg-secondary: #1a1a2e;--bg-tertiary: #16213e;--bg-card: rgba(255, 255, 255, .03);--bg-card-hover: rgba(255, 255, 255, .06);--bg-glass: rgba(255, 255, 255, .05);--accent-cyan: #00d9ff;--accent-purple: #a855f7;--accent-gradient: linear-gradient(135deg, #00d9ff 0%, #a855f7 100%);--glow-cyan: 0 0 20px rgba(0, 217, 255, .3);--glow-purple: 0 0 20px rgba(168, 85, 247, .3);--glow-mixed: 0 0 30px rgba(0, 217, 255, .2), 0 0 60px rgba(168, 85, 247, .1);--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--white: #ffffff;--border-subtle: rgba(255, 255, 255, .08);--border-light: rgba(255, 255, 255, .12);--border-glow: rgba(0, 217, 255, .3);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--shadow-glow: 0 0 40px rgba(0, 217, 255, .15);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--spacing-xs: 8px;--spacing-sm: 16px;--spacing-md: 24px;--spacing-lg: 32px;--spacing-xl: 48px}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-attachment:fixed;color:var(--text-primary);line-height:1.6;min-height:100vh}.app-wrapper{display:flex;flex-direction:column;min-height:100vh}.main-nav{background:#0a0a0fcc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:1rem 2rem;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;z-index:100}.nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:1rem}.nav-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.nav-brand a{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.5rem;font-weight:700;text-decoration:none;letter-spacing:-.5px}.nav-links{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.nav-link{color:var(--text-secondary);text-decoration:none;padding:.5rem 1rem;border-radius:var(--radius-sm);transition:all .3s ease;font-weight:500;font-size:.9rem;white-space:nowrap}.nav-link:hover{color:var(--accent-cyan);background:#00d9ff1a;text-shadow:0 0 10px rgba(0,217,255,.5)}.nav-auth{display:flex;align-items:center;gap:1rem}.user-greeting{color:var(--text-secondary);font-weight:500;font-size:.9rem}.container{max-width:1400px;margin:0 auto;padding:2rem;flex:1}.chat-footer{text-align:center;padding:2rem;color:var(--text-muted);border-top:1px solid var(--border-subtle);background:#0a0a0f99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-top:auto;flex-shrink:0}.btn{padding:12px 28px;border:none;border-radius:var(--radius-xl);cursor:pointer;font-weight:600;font-size:.95rem;transition:all .3s ease}.btn-primary{background:var(--accent-gradient);color:var(--bg-primary);box-shadow:var(--glow-cyan)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}.btn-secondary{background:var(--bg-glass);border:1px solid var(--border-light);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff1a;border-color:var(--accent-cyan);box-shadow:var(--glow-cyan)}.home-page{padding:4rem 2rem;max-width:1400px;margin:0 auto;text-align:center}.home-title{font-size:3.5rem;margin-bottom:1rem;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;line-height:1.1;letter-spacing:-1px}.home-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:4rem;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-xl)}.feature-card{padding:var(--spacing-lg);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;height:100%;text-align:left;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-gradient);opacity:0;transition:opacity .3s ease}.feature-card:hover{transform:translateY(-8px);background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:var(--shadow-glow),var(--shadow-lg)}.feature-card:hover:before{opacity:1}.feature-icon{font-size:3rem;margin-bottom:1rem;filter:drop-shadow(0 0 10px rgba(0,217,255,.3))}.feature-title{font-size:1.4rem;margin-bottom:.5rem;color:var(--text-primary);font-weight:600}.feature-desc{color:var(--text-secondary);line-height:1.7;font-size:.95rem}.accounts-page{max-width:800px;margin:0 auto}.accounts-header{text-align:center;margin-bottom:3rem}.accounts-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:1rem;border-radius:var(--radius-md);margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.close-error{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit}.link-account-section{background:var(--bg-card);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);margin-bottom:2rem}.plaid-info-card h2{margin-top:0;color:var(--accent-cyan);font-weight:700}.plaid-info-card ul{color:var(--text-secondary);line-height:1.8;padding-left:1.5rem;margin-bottom:2rem}.plaid-info-card li{margin-bottom:.5rem}.plaid-info-card li::marker{color:var(--accent-cyan)}.link-account-btn{width:100%;padding:14px;background:var(--accent-gradient);color:var(--bg-primary);border:none;border-radius:var(--radius-xl);font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:var(--glow-cyan)}.link-account-btn:hover{transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}.link-account-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.empty-state-icon{font-size:4rem;margin-bottom:1rem;filter:grayscale(.5)}.empty-state h3{color:var(--text-primary)}.empty-state p{color:var(--text-muted)}.success-banner{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#4ade80;padding:1rem;border-radius:var(--radius-md);margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.success-icon,.error-icon{margin-right:.5rem}.close-success{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit}.loading-hint{text-align:center;color:var(--text-muted);font-size:.9rem;margin-top:1rem}.loading-state{text-align:center;padding:3rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-subtle);border-top-color:var(--accent-cyan);border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:var(--bg-primary);border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem;vertical-align:middle}.linked-accounts-section{background:var(--bg-card);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.linked-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.linked-header h2{margin:0;color:var(--accent-cyan);font-weight:700}.institution-badge{background:#00d9ff1a;color:var(--accent-cyan);padding:.5rem 1rem;border-radius:var(--radius-xl);font-size:.9rem;font-weight:500;border:1px solid rgba(0,217,255,.2)}.total-balance-card{background:linear-gradient(135deg,#00d9ff1a,#a855f71a);border:1px solid rgba(0,217,255,.2);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;display:flex;flex-direction:column;align-items:center}.total-balance-card .balance-label{color:var(--text-secondary);font-size:.9rem;margin-bottom:.5rem}.total-balance-card .balance-amount{font-size:2rem;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.accounts-list{display:flex;flex-direction:column;gap:1rem}.account-card{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;transition:all .3s ease}.account-card:hover{border-color:var(--border-glow);box-shadow:var(--shadow-sm)}.account-icon{font-size:2rem;filter:drop-shadow(0 0 8px rgba(0,217,255,.3))}.account-info{flex:1;min-width:0}.account-info h3{margin:0 0 .25rem;color:var(--text-primary);font-size:1.1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-type{margin:0;color:var(--text-muted);font-size:.85rem}.account-balances{text-align:right;min-width:120px}.balance-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;gap:1rem}.balance-row .balance-label{color:var(--text-muted);font-size:.8rem}.balance-row .balance-value{color:var(--text-primary);font-weight:600;font-size:.95rem}.disconnect-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-subtle);text-align:center}.disconnect-btn{background:transparent;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:.75rem 1.5rem;border-radius:var(--radius-xl);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.disconnect-btn:hover{background:#ef44441a;border-color:#ef444480}.disconnect-btn:disabled{opacity:.5;cursor:not-allowed}.disconnect-hint{color:var(--text-muted);font-size:.8rem;margin-top:.75rem}.security-badges{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.security-badges .badge{background:var(--bg-glass);border:1px solid var(--border-subtle);padding:.5rem 1rem;border-radius:var(--radius-xl);font-size:.8rem;color:var(--text-secondary)}.conversation-section{width:100%;max-width:900px;margin:0 auto;background:var(--bg-card);padding:24px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.conversation-section h2{color:var(--accent-cyan);margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--border-subtle);font-weight:700}.canonical-income-card{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px 18px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.canonical-income-title{font-weight:600;color:var(--text-primary)}.canonical-income-row{display:grid;grid-template-columns:80px 1fr;gap:8px 16px;align-items:center}.canonical-income-label{font-size:.85rem;color:var(--text-secondary)}.canonical-income-value{font-size:1rem;font-weight:600;color:var(--text-primary)}.canonical-income-meta{grid-column:2 / -1;font-size:.75rem;color:var(--text-secondary);display:flex;gap:12px}.canonical-income-placeholder{font-size:.85rem;color:var(--text-secondary)}.canonical-income-value.muted{font-weight:500;color:var(--text-secondary)}.net-worth-card{background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:16px 18px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.net-worth-title{font-weight:600;color:var(--text-primary)}.net-worth-list{display:flex;flex-direction:column;gap:6px}.net-worth-row{display:grid;grid-template-columns:90px 1fr 1fr;gap:12px;font-size:.85rem;color:var(--text-secondary)}.net-worth-row span:nth-child(2){color:var(--text-primary);font-weight:600}.net-worth-row .positive{color:#4ade80}.net-worth-row .negative{color:#fca5a5}.net-worth-placeholder{font-size:.85rem;color:var(--text-secondary)}.connection-status{display:inline-block;padding:8px 16px;border-radius:var(--radius-xl);font-weight:600;font-size:.9rem;margin-bottom:15px}.status-connected{background:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.status-disconnected{background:#ef44441a;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.conversation-interface{display:flex;flex-direction:column;gap:20px}.conversation-messages{height:400px;overflow-y:auto;padding:20px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#0003;display:flex;flex-direction:column;gap:15px}.conversation-messages::-webkit-scrollbar{width:6px}.conversation-messages::-webkit-scrollbar-track{background:transparent}.conversation-messages::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}.message{padding:14px 18px;border-radius:var(--radius-lg);max-width:85%;word-wrap:break-word}.message-sender{font-weight:600;font-size:.85rem;margin-bottom:6px;opacity:.8}.user-message{background:linear-gradient(135deg,#00d9ff26,#a855f726);margin-left:auto;border-radius:18px 18px 4px;align-self:flex-end;border:1px solid rgba(0,217,255,.2)}.user-message .message-sender{color:var(--accent-cyan)}.assistant-message{background:var(--bg-glass);margin-right:auto;border-radius:18px 18px 18px 4px;align-self:flex-start;border:1px solid var(--border-subtle);border-left:3px solid var(--accent-purple)}.assistant-message .message-sender{color:var(--accent-purple)}.system-message{background:#fbbf241a;margin:0 auto;border-radius:8px;border:1px solid rgba(251,191,36,.3);max-width:90%}.system-message .message-sender{color:#fbbf24}.message-content{line-height:1.6;color:var(--text-primary)}.message-content p{margin:.5em 0}.message-content code{background:#0000004d;padding:2px 6px;border-radius:4px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.9em;color:var(--accent-cyan)}.message-content pre{background:#0006;padding:16px;border-radius:var(--radius-md);overflow-x:auto;margin:12px 0;border:1px solid var(--border-subtle)}.message-content pre code{background:transparent;padding:0;color:var(--text-primary)}.message-content table{width:100%;border-collapse:collapse;margin:12px 0;font-size:.9em;background:#0003;border-radius:var(--radius-md);overflow:hidden}.message-content thead{background:#0000004d}.message-content th{padding:10px 14px;text-align:left;font-weight:600;color:var(--accent-cyan);border-bottom:2px solid var(--border-subtle)}.message-content td{padding:10px 14px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary)}.message-content tr:last-child td{border-bottom:none}.message-content tr:hover{background:#ffffff08}.message-content tbody tr:nth-child(2n){background:#0000001a}.loading-indicator{padding:14px 18px;border-radius:18px 18px 18px 4px;background:var(--bg-glass);max-width:80%;margin-right:auto;border-left:3px solid var(--accent-purple);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.file-attachment-container{margin-bottom:12px}.attachment-previews{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.attachment-preview{position:relative;display:flex;flex-direction:column;align-items:center;background:var(--bg-glass);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px;width:100px}.attachment-thumbnail{width:80px;height:80px;object-fit:cover;border-radius:var(--radius-sm)}.pdf-preview{width:80px;height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#a855f71a;border-radius:var(--radius-sm);color:var(--accent-purple)}.pdf-icon{width:32px;height:32px}.pdf-label{font-size:.7rem;font-weight:600;margin-top:4px}.attachment-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#ef4444;color:#fff;border:none;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background-color .2s ease}.attachment-remove:hover{background:#dc2626;transform:scale(1.1)}.attachment-filename{font-size:.7rem;color:var(--text-secondary);margin-top:6px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:90px}.attachment-dropzone{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-glass);border:2px dashed var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease}.attachment-dropzone:hover:not(.disabled){border-color:var(--accent-cyan);background:#00d9ff0d}.attachment-dropzone.dragging{border-color:var(--accent-cyan);background:#00d9ff1a;box-shadow:var(--glow-cyan)}.attachment-dropzone.disabled{opacity:.5;cursor:not-allowed}.attachment-icon{width:20px;height:20px;color:var(--text-muted);flex-shrink:0}.attachment-dropzone:hover:not(.disabled) .attachment-icon{color:var(--accent-cyan)}.attachment-hint{font-size:.85rem;color:var(--text-muted)}.attachment-dropzone:hover:not(.disabled) .attachment-hint{color:var(--text-secondary)}.attachment-error{margin-top:8px;padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:#f87171;font-size:.85rem}.text-input-area{display:flex;gap:12px;padding:16px;background:var(--bg-glass);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);transition:border-color .3s ease,box-shadow .3s ease}.text-input-area:focus-within{border-color:var(--accent-cyan);box-shadow:var(--glow-cyan)}#text-input{flex:1;padding:12px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#0003;color:var(--text-primary);resize:vertical;min-height:44px;font-family:inherit;font-size:1rem;transition:all .3s ease}#text-input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00d9ff1a}#text-input::placeholder{color:var(--text-muted)}#sendBtn{padding:12px 24px;background:var(--accent-gradient);color:var(--bg-primary);border:none;border-radius:var(--radius-xl);cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:var(--glow-cyan)}#sendBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}#sendBtn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.input-error{padding:12px;background:#ef44441a;color:#fca5a5;border-radius:var(--radius-sm);font-size:.9rem;border-left:3px solid #ef4444}.ask-claude-layout{display:flex;align-items:flex-start;min-height:calc(100vh - 200px);gap:0}.conversation-sidebar{width:280px;background:#0a0a0f99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;padding:var(--spacing-sm);transition:width .3s ease;max-height:calc(100vh - 140px);overflow:hidden}.conversation-sidebar.collapsed{width:48px;padding:var(--spacing-xs);align-items:center}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-subtle)}.sidebar-header h3{margin:0;font-size:1.1rem;color:var(--text-primary);font-weight:600}.sidebar-toggle{background:none;border:none;cursor:pointer;padding:6px;border-radius:var(--radius-sm);color:var(--text-muted);transition:all .2s ease}.sidebar-toggle:hover{background:var(--bg-glass);color:var(--accent-cyan)}.toggle-icon{font-size:.9rem}.new-conversation-btn{width:100%;padding:12px 16px;background:var(--accent-gradient);color:var(--bg-primary);border:none;border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:var(--spacing-sm)}.new-conversation-btn:hover{transform:translateY(-2px);box-shadow:var(--glow-cyan)}.conversations-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px;max-height:500px}.conversations-list::-webkit-scrollbar{width:4px}.conversations-list::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.conversation-item{padding:12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;position:relative;background:var(--bg-glass);border:1px solid transparent}.conversation-item:hover{background:#00d9ff14;border-color:var(--border-glow)}.conversation-item.active{background:#00d9ff1f;border-color:var(--accent-cyan);border-left:3px solid var(--accent-cyan)}.conversation-title{font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:20px}.conversation-meta{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted)}.archive-btn{position:absolute;top:8px;right:8px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.1rem;padding:4px;border-radius:var(--radius-sm);opacity:0;transition:all .2s ease}.conversation-item:hover .archive-btn{opacity:1}.archive-btn:hover{background:#ef44441a;color:#fca5a5}.sidebar-loading,.sidebar-error,.sidebar-empty{padding:var(--spacing-md);text-align:center;color:var(--text-muted);font-size:.9rem}.sidebar-error{color:#fca5a5}.refresh-btn{width:100%;padding:8px 12px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:.85rem;cursor:pointer;transition:all .2s ease;margin-top:var(--spacing-xs)}.refresh-btn:hover:not(:disabled){background:var(--bg-glass);border-color:var(--accent-cyan);color:var(--accent-cyan)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.ask-claude-main{flex:1;display:flex;flex-direction:column;min-width:0;background:transparent}.form-page{max-width:800px;margin:0 auto;padding:2rem}.form-header{text-align:center;margin-bottom:2rem}.form-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.progress-bar{width:100%;height:8px;background:var(--bg-glass);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--accent-gradient);transition:width .3s ease}.form-container{background:var(--bg-card);border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--border-subtle);margin-bottom:2rem}.form-section h2{color:var(--text-primary);margin-bottom:1.5rem;border-bottom:1px solid var(--border-subtle);padding-bottom:.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:1rem;background:#0003;color:var(--text-primary);transition:all .3s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00d9ff1a}.form-navigation{display:flex;justify-content:space-between;margin-top:2rem}.nav-btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-xl);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.prev-btn{background:var(--bg-glass);color:var(--text-secondary);border:1px solid var(--border-subtle)}.prev-btn:hover{background:#ffffff1a;border-color:var(--border-light)}.next-btn,.submit-btn{background:var(--accent-gradient);color:var(--bg-primary);box-shadow:var(--glow-cyan)}.next-btn:hover,.submit-btn:hover{transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}.results-page{max-width:1000px;margin:0 auto;padding:2rem}.results-header{text-align:center;margin-bottom:3rem}.results-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.results-container{display:flex;flex-direction:column;gap:2rem;margin-bottom:3rem}.result-section h2{color:var(--text-primary);margin-bottom:1rem;border-bottom:1px solid var(--border-subtle);padding-bottom:.5rem}.result-card{background:var(--bg-card);padding:1.5rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);margin-bottom:1rem}.result-card h3{color:var(--text-primary);margin-bottom:.5rem}.next-steps{display:flex;flex-direction:column;gap:1rem}.step{display:flex;align-items:center;gap:1rem;background:var(--bg-glass);padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.step-number{background:var(--accent-gradient);color:var(--bg-primary);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.results-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}@media (max-width: 768px){.nav-container{flex-direction:column;gap:1rem}.nav-links{justify-content:center}.home-title{font-size:2.5rem}.features-grid{grid-template-columns:1fr}.ask-claude-layout{flex-direction:column}.conversation-sidebar{width:100%;height:auto;max-height:200px;border-right:none;border-bottom:1px solid var(--border-subtle)}}.progression-stepper{padding:0 1rem;flex:1;min-width:0}.stepper-mobile{display:none;text-align:center}.stepper-mobile-label{color:var(--text-secondary);font-size:.9rem;font-weight:500}.stepper-desktop{display:flex;align-items:center;justify-content:center;gap:0}.stepper-connector{flex:1;height:2px;max-width:40px;background:var(--border-subtle);transition:background .3s ease}.stepper-connector.connector-completed{background:var(--accent-gradient)}.stepper-step{display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;transition:all .3s ease;padding:4px 6px;border-radius:var(--radius-sm)}.stepper-step:hover{background:#00d9ff0d}.step-circle{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;transition:all .3s ease;background:var(--bg-glass);border:2px solid var(--border-subtle);color:var(--text-muted)}.step-number{line-height:1}.step-label{font-size:.7rem;color:var(--text-muted);white-space:nowrap;transition:color .3s ease;max-width:80px;overflow:hidden;text-overflow:ellipsis;text-align:center}.step-completed .step-circle{background:var(--accent-gradient);border-color:transparent;color:var(--bg-primary)}.step-completed .step-label{color:var(--text-secondary)}.step-check{width:14px;height:14px}.step-current .step-circle{border-color:var(--accent-cyan);box-shadow:var(--glow-cyan);color:var(--accent-cyan);background:#00d9ff1a}.step-current .step-label{color:var(--accent-cyan);font-weight:600}.conversation-page{max-width:900px;margin:0 auto}.conversation-page-header{text-align:center;margin-bottom:2rem}.conversation-page-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.conversation-voice-controls{display:flex;gap:1rem;align-items:center;justify-content:center;margin-bottom:1rem}.voice-btn{padding:12px 24px;border:none;border-radius:var(--radius-xl);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.voice-btn.start-btn{background:var(--accent-gradient);color:var(--bg-primary);box-shadow:var(--glow-cyan)}.voice-btn.start-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}.voice-btn.stop-btn{background:#ef444433;border:1px solid rgba(239,68,68,.4);color:#fca5a5}.voice-btn.stop-btn:hover:not(:disabled){background:#ef44444d}.voice-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.recording-indicator{display:flex;align-items:center;gap:.5rem;color:#f87171;font-weight:500;font-size:.9rem}.recording-dot{width:10px;height:10px;border-radius:50%;background:#ef4444;animation:pulse-recording 1s ease-in-out infinite}@keyframes pulse-recording{0%,to{opacity:1}50%{opacity:.3}}.conversation-text-input{display:flex;gap:12px;padding:16px;background:var(--bg-glass);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);transition:border-color .3s ease,box-shadow .3s ease}.conversation-text-input:focus-within{border-color:var(--accent-cyan);box-shadow:var(--glow-cyan)}.conversation-text-input input{flex:1;padding:12px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#0003;color:var(--text-primary);font-family:inherit;font-size:1rem;transition:all .3s ease}.conversation-text-input input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00d9ff1a}.conversation-text-input input::placeholder{color:var(--text-muted)}.conversation-send-btn{padding:12px 24px;background:var(--accent-gradient);color:var(--bg-primary);border:none;border-radius:var(--radius-xl);cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:var(--glow-cyan)}.conversation-send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--glow-mixed),var(--shadow-md)}.conversation-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.data-correction-page{max-width:800px;margin:0 auto}.data-correction-header{text-align:center;margin-bottom:2rem}.data-correction-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.data-correction-empty{text-align:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.data-correction-empty h3{color:var(--text-primary);margin-bottom:.5rem}.data-correction-empty p{color:var(--text-muted);margin-bottom:1.5rem}.data-correction-list{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:2rem;margin-bottom:2rem}.data-correction-item{display:flex;align-items:center;gap:1rem;padding:12px 0;border-bottom:1px solid var(--border-subtle)}.data-correction-item:last-child{border-bottom:none}.data-correction-label{flex:0 0 200px;font-weight:600;color:var(--text-secondary);font-size:.9rem}.data-correction-value{flex:1;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#0003;color:var(--text-primary);font-family:inherit;font-size:.95rem;transition:all .3s ease}.data-correction-value:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00d9ff1a}.data-correction-actions{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.data-correction-actions .btn{min-width:180px}.results-empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.results-empty-state h3{color:var(--text-primary);margin-bottom:.5rem}.results-empty-state p{color:var(--text-muted);margin-bottom:1.5rem}.results-recommendation{background:var(--bg-card);padding:2rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);margin-bottom:2rem}.results-recommendation h2{color:var(--accent-cyan);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.results-recommendation-content{color:var(--text-primary);line-height:1.7}.results-recommendation-content p{margin:.5em 0}.results-recommendation-content ul,.results-recommendation-content ol{padding-left:1.5rem;margin:.5em 0}.results-recommendation-content li{margin-bottom:.25em}.results-audio-section{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-subtle)}.results-audio-section h3{color:var(--text-secondary);font-size:.95rem;margin-bottom:.5rem}.results-audio-section audio{width:100%;border-radius:var(--radius-sm)}.results-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.highlight-card{background:var(--bg-card);padding:1.25rem;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);text-align:center}.highlight-label{color:var(--text-muted);font-size:.8rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.highlight-value{font-size:1.5rem;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.submitting-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);gap:1rem}.submitting-overlay p{color:var(--text-secondary);font-size:1rem}.more-tools-wrapper{position:relative}.more-tools-btn{color:var(--text-secondary);background:none;border:1px solid var(--border-subtle);padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-weight:500;font-size:.9rem;transition:all .3s ease;white-space:nowrap}.more-tools-btn:hover{color:var(--accent-cyan);border-color:var(--accent-cyan);background:#00d9ff0d}.more-tools-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px;min-width:180px;box-shadow:var(--shadow-lg);z-index:200;display:flex;flex-direction:column;gap:2px}.more-tools-dropdown a{color:var(--text-secondary);text-decoration:none;padding:8px 12px;border-radius:var(--radius-sm);font-size:.9rem;transition:all .2s ease;display:block}.more-tools-dropdown a:hover{color:var(--accent-cyan);background:#00d9ff1a}@media (max-width: 768px){.stepper-desktop{display:none}.stepper-mobile{display:block}.data-correction-item{flex-direction:column;align-items:stretch;gap:.5rem}.data-correction-label{flex:none}.data-correction-actions{flex-direction:column}.data-correction-actions .btn{min-width:auto;width:100%}.conversation-voice-controls{flex-wrap:wrap}.results-highlights{grid-template-columns:1fr 1fr}}.realtime-page{max-width:800px;margin:0 auto}.realtime-header{text-align:center;margin-bottom:2rem}.realtime-header h1{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.realtime-interface{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);padding:2rem;display:flex;flex-direction:column;align-items:center;gap:2rem}.connection-indicator{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--text-secondary)}.status-dot{width:12px;height:12px;border-radius:50%;background-color:var(--text-muted)}.status-dot.connected{background-color:#4ade80;box-shadow:0 0 12px #4ade80}.status-dot.connecting{background-color:#fbbf24;animation:pulse 1s infinite}.status-dot.failed{background-color:#f87171;box-shadow:0 0 8px #f8717180}.audio-visualizer{width:100%;height:100px;background:#0003;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle)}.controls{display:flex;gap:1rem}.control-btn{padding:.8rem 1.5rem;border-radius:var(--radius-xl);border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.btn-start{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 0 20px #22c55e4d}.btn-start:hover{transform:translateY(-2px);box-shadow:0 0 30px #22c55e80}.btn-stop{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 0 20px #ef44444d}.btn-stop:hover{transform:translateY(-2px);box-shadow:0 0 30px #ef444480}.conversation-log{width:100%;height:300px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:1rem;background:#0003;font-family:JetBrains Mono,Fira Code,monospace;font-size:.9rem;color:var(--text-primary)}.conversation-log::-webkit-scrollbar{width:6px}.conversation-log::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}.log-entry{margin-bottom:.5rem;line-height:1.4}.log-timestamp{color:var(--text-muted);margin-right:.5rem}.log-tag{font-weight:700;margin-right:.5rem;text-transform:uppercase;font-size:.8rem}.tag-info{color:var(--accent-cyan)}.tag-error{color:#f87171}.tag-user{color:#4ade80}.tag-assistant{color:var(--accent-purple)}.text-input-wrapper{width:100%;display:flex;gap:1rem}.text-input-wrapper input{flex:1;padding:.8rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:1rem;background:#0003;color:var(--text-primary);transition:all .3s ease}.text-input-wrapper input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00d9ff1a}.text-input-wrapper input::placeholder{color:var(--text-muted)}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.user-questions-section{max-width:900px;background:var(--bg-card, rgba(255, 255, 255, .03));padding:2.5rem;margin:2rem auto;border-radius:var(--radius-lg, 16px);border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.user-questions-section h2{font-size:2rem;font-weight:700;margin-bottom:.75rem;background:linear-gradient(135deg,#00d9ff,#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-questions-description{color:var(--text-secondary, #94a3b8);margin-bottom:2rem;font-size:1.05rem;line-height:1.7}.user-questions-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:1rem 1.25rem;border-radius:var(--radius-md, 12px);margin-bottom:1.5rem;font-size:.95rem}.user-questions-controls{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.user-questions-controls button{padding:12px 24px;border:none;border-radius:var(--radius-xl, 24px);cursor:pointer;font-weight:600;font-size:.95rem;transition:all .3s ease}.user-questions-controls button#startSessionBtn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#0a0a0f;box-shadow:0 0 20px #22c55e4d}.user-questions-controls button#startSessionBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #22c55e80}.user-questions-controls button#endSessionBtn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 0 20px #ef44444d}.user-questions-controls button#endSessionBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #ef444480}.user-questions-controls button:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.session-status{font-weight:600;padding:8px 16px;border-radius:var(--radius-xl, 24px);font-size:.9rem;background:#ffffff0d;border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));color:var(--text-secondary, #94a3b8)}.session-status.status-live,.session-status.status-connected{background:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.session-status.status-error{background:#ef44441a;border-color:#ef44444d;color:#fca5a5}.user-questions-audio{margin-bottom:1.5rem}.user-questions-form{margin-bottom:2rem}.user-questions-form label{display:block;margin-bottom:.75rem;color:var(--text-secondary, #94a3b8);font-weight:500;font-size:.95rem}.user-questions-input{display:flex;gap:12px}.user-questions-input input{flex:1;padding:12px 16px;border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));border-radius:var(--radius-md, 12px);font-size:1rem;background:#0003;color:var(--text-primary, #f1f5f9);transition:all .3s ease}.user-questions-input input:focus{outline:none;border-color:#00d9ff;box-shadow:0 0 0 3px #00d9ff1a}.user-questions-input input::placeholder{color:var(--text-muted, #64748b)}.user-questions-input input:disabled{opacity:.5;cursor:not-allowed}.user-questions-input button{padding:12px 24px;border:none;border-radius:var(--radius-xl, 24px);cursor:pointer;background:linear-gradient(135deg,#00d9ff,#a855f7);color:#0a0a0f;font-weight:600;font-size:.95rem;transition:all .3s ease;box-shadow:0 0 20px #00d9ff4d}.user-questions-input button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 30px #00d9ff66,0 0 60px #a855f733}.user-questions-input button:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.user-questions-log{border:1px solid var(--border-subtle, rgba(255, 255, 255, .08));border-radius:var(--radius-md, 12px);padding:1.25rem;background:#00000040;max-height:350px;overflow-y:auto;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.85rem;color:var(--text-primary, #f1f5f9)}.user-questions-log::-webkit-scrollbar{width:6px}.user-questions-log::-webkit-scrollbar-track{background:transparent}.user-questions-log::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.user-questions-log-entry{margin-bottom:.75rem;white-space:pre-wrap;line-height:1.5;padding:8px 12px;border-radius:var(--radius-sm, 8px);background:#ffffff05;border-left:3px solid var(--text-muted, #64748b)}.user-questions-log-entry.log-user{border-left-color:#00d9ff;background:#00d9ff0d}.user-questions-log-entry.log-assistant,.user-questions-log-entry.log-gemini{border-left-color:#a855f7;background:#a855f70d}.user-questions-log-entry.log-error{border-left-color:#f87171;background:#f871710d;color:#fca5a5}.user-questions-log-entry.log-info,.user-questions-log-entry.log-system{border-left-color:#fbbf24;background:#fbbf240d}@media (max-width: 768px){.user-questions-section{width:95%;padding:1.5rem;margin:1rem auto}.user-questions-section h2{font-size:1.5rem}.user-questions-controls{flex-direction:column;align-items:stretch}.user-questions-controls button{width:100%}.session-status{text-align:center}.user-questions-input{flex-direction:column}.user-questions-input button{width:100%}}
