@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Space+Mono:wght@400;700&display=swap";:root{--bg-deep: #0B0E14;--bg-surface: #12151C;--bg-elevated: #1A1E27;--bg-hover: #222733;--bg-active: #2A2F3B;--accent-gold: #C8A96E;--accent-gold-light: #D4B97E;--accent-gold-dim: rgba(200, 169, 110, .15);--accent-gold-glow: rgba(200, 169, 110, .25);--accent-teal: #4ECDC4;--accent-teal-dim: rgba(78, 205, 196, .12);--text-primary: #F2EDE8;--text-secondary: #9BA0A8;--text-muted: #6B7080;--text-inverse: #0B0E14;--success: #6BCB77;--success-dim: rgba(107, 203, 119, .12);--warning: #F0A500;--warning-dim: rgba(240, 165, 0, .12);--error: #E85D5D;--error-dim: rgba(232, 93, 93, .12);--info: #5B9BD5;--info-dim: rgba(91, 155, 213, .12);--sidebar-width: 320px;--header-height: 64px;--input-area-height: auto;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 18px;--radius-xl: 24px;--font-size-base: 15px;--font-size-sm: 13px;--font-size-xs: 11px;--font-size-lg: 17px;--font-size-xl: 22px;--font-size-2xl: 28px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--message-gap: 16px;--target-size: 44px;--font-display: "Playfair Display", Georgia, serif;--font-body: "Outfit", system-ui, sans-serif;--font-mono: "Space Mono", "Courier New", monospace;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}.density-relaxed{--font-size-base: 18px;--font-size-sm: 15px;--font-size-xs: 13px;--font-size-lg: 20px;--font-size-xl: 26px;--font-size-2xl: 34px;--spacing-xs: 6px;--spacing-sm: 12px;--spacing-md: 20px;--spacing-lg: 32px;--spacing-xl: 40px;--message-gap: 24px;--target-size: 52px}.density-compact{--font-size-base: 14px;--font-size-sm: 12px;--font-size-xs: 10px;--font-size-lg: 15px;--font-size-xl: 19px;--font-size-2xl: 24px;--spacing-xs: 2px;--spacing-sm: 6px;--spacing-md: 12px;--spacing-lg: 18px;--spacing-xl: 24px;--message-gap: 8px;--target-size: 40px}.chat-page{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;font-family:var(--font-body);font-size:var(--font-size-base);color:var(--text-primary);background:radial-gradient(ellipse at 15% 50%,rgba(200,169,110,.04) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(78,205,196,.025) 0%,transparent 40%),radial-gradient(ellipse at 50% 100%,rgba(91,155,213,.02) 0%,transparent 30%),var(--bg-deep);overflow:hidden;transition:font-size var(--duration-slow) var(--ease-out);line-height:1.55}.chat-page *,.chat-page *:before,.chat-page *:after{box-sizing:border-box}.skip-link{position:absolute;top:-100px;left:16px;z-index:9999;padding:12px 24px;background:var(--accent-gold);color:var(--text-inverse);font-weight:600;font-size:var(--font-size-base);border-radius:var(--radius-md);text-decoration:none;transition:top var(--duration-fast) var(--ease-out)}.skip-link:focus{top:16px;outline:3px solid var(--text-primary);outline-offset:2px}.chat-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;display:flex;flex-direction:column;background:#12151ce0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-right:1px solid rgba(200,169,110,.08);animation:slideInLeft var(--duration-slow) var(--ease-out) both;animation-delay:.1s;overflow:hidden}.sidebar-header{padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);border-bottom:1px solid rgba(200,169,110,.06)}.sidebar-brand{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.brand-mark{width:36px;height:36px;flex-shrink:0}.brand-name{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:600;letter-spacing:.08em;color:var(--accent-gold)}.sidebar-greeting{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.sidebar-user-name{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.sidebar-accounts{padding:var(--spacing-md) var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.sidebar-section-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:var(--spacing-xs)}.account-mini-card{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:#1a1e2799;border-radius:var(--radius-sm);border:1px solid rgba(200,169,110,.05);transition:all var(--duration-fast) var(--ease-out);cursor:pointer;min-height:var(--target-size)}.account-mini-card:hover{background:var(--bg-hover);border-color:#c8a96e1f}.account-mini-card:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.account-mini-name{font-size:var(--font-size-sm);color:var(--text-secondary)}.account-mini-number{font-size:var(--font-size-xs);color:var(--text-muted);font-family:var(--font-mono)}.account-mini-balance{font-family:var(--font-mono);font-size:var(--font-size-base);font-weight:700;color:var(--text-primary)}.account-mini-balance.negative{color:var(--error)}.account-mini-balance.blurred{filter:blur(8px);-webkit-user-select:none;user-select:none;transition:filter var(--duration-normal) var(--ease-out)}.account-mini-card:hover .account-mini-balance.blurred,.account-mini-card:focus-within .account-mini-balance.blurred{filter:blur(0)}.sidebar-conversations{flex:1;overflow-y:auto;padding:var(--spacing-sm) var(--spacing-md);scrollbar-width:thin;scrollbar-color:var(--bg-hover) transparent}.new-chat-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:calc(100% - var(--spacing-md));margin:var(--spacing-sm) auto var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);min-height:var(--target-size);background:var(--accent-gold-dim);border:1px dashed rgba(200,169,110,.3);border-radius:var(--radius-md);color:var(--accent-gold);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.new-chat-btn:hover{background:#c8a96e33;border-color:var(--accent-gold)}.new-chat-btn:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.conversation-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);min-height:var(--target-size);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);border:1px solid transparent;position:relative}.conversation-item:hover{background:var(--bg-hover)}.conversation-item:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.conversation-item.active{background:var(--bg-hover);border-color:#c8a96e1f}.conversation-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--accent-gold);border-radius:0 2px 2px 0}.conv-icon{width:32px;height:32px;border-radius:50%;background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.conv-details{flex:1;min-width:0}.conv-title{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-preview{font-size:var(--font-size-xs);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.conv-time{font-size:var(--font-size-xs);color:var(--text-muted)}.conv-unread{width:8px;height:8px;border-radius:50%;background:var(--accent-gold)}.sidebar-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid rgba(200,169,110,.06)}.density-toggle{display:flex;align-items:center;background:var(--bg-deep);border-radius:var(--radius-lg);padding:3px;gap:2px}.density-option{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-sm);min-height:36px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-muted);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.density-option:hover{color:var(--text-secondary)}.density-option:focus-visible{outline:2px solid var(--accent-gold);outline-offset:-2px}.density-option.active{background:var(--bg-elevated);color:var(--accent-gold);font-weight:600;box-shadow:0 2px 8px #0000004d}.density-label{font-size:var(--font-size-xs);color:var(--text-muted);text-align:center;margin-bottom:var(--spacing-xs)}.chat-main{flex:1;display:flex;flex-direction:column;height:100%;min-width:0;animation:fadeIn var(--duration-slow) var(--ease-out) both;animation-delay:.2s}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);height:var(--header-height);min-height:var(--header-height);border-bottom:1px solid rgba(200,169,110,.06);background:#12151c80;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:10}.chat-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.menu-toggle{display:none;align-items:center;justify-content:center;width:var(--target-size);height:var(--target-size);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);font-size:20px;transition:all var(--duration-fast) var(--ease-out)}.menu-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.menu-toggle:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.chat-title{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.chat-subtitle{font-size:var(--font-size-xs);color:var(--text-muted)}.chat-header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.security-badge{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--success-dim);border-radius:var(--radius-lg);font-size:var(--font-size-xs);color:var(--success);font-weight:500}.security-dot{width:6px;height:6px;border-radius:50%;background:var(--success);animation:pulse 2s infinite}.privacy-toggle{display:flex;align-items:center;justify-content:center;width:var(--target-size);height:var(--target-size);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);font-size:18px;transition:all var(--duration-fast) var(--ease-out)}.privacy-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.privacy-toggle:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.privacy-toggle.active{color:var(--accent-gold)}.chat-messages-container{flex:1;overflow-y:auto;padding:var(--spacing-lg) var(--spacing-xl);display:flex;flex-direction:column;gap:var(--message-gap);scroll-behavior:smooth;background-image:radial-gradient(circle at 1px 1px,rgba(200,169,110,.015) 1px,transparent 0);background-size:48px 48px;scrollbar-width:thin;scrollbar-color:var(--bg-hover) transparent}.chat-messages-container::-webkit-scrollbar{width:6px}.chat-messages-container::-webkit-scrollbar-track{background:transparent}.chat-messages-container::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:3px}.chat-messages-container::-webkit-scrollbar-thumb:hover{background:var(--bg-active)}.message{display:flex;gap:var(--spacing-sm);max-width:85%;animation:messageSlideIn var(--duration-normal) var(--ease-out) both}.message-user{align-self:flex-end;flex-direction:row-reverse}.message-bot{align-self:flex-start}.message-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px;margin-top:4px}.message-bot .message-avatar{background:var(--accent-gold-dim);border:1px solid rgba(200,169,110,.2)}.message-user .message-avatar{background:var(--bg-elevated);border:1px solid rgba(255,255,255,.08)}.message-body{display:flex;flex-direction:column;gap:var(--spacing-xs)}.message-bubble{padding:var(--spacing-md);border-radius:var(--radius-lg);line-height:1.6;word-wrap:break-word;overflow-wrap:break-word}.message-user .message-bubble{background:linear-gradient(135deg,#1c2233,#1a1e27);border:1px solid rgba(200,169,110,.1);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-sm) var(--radius-lg)}.message-bot .message-bubble{background:var(--bg-elevated);border:1px solid rgba(200,169,110,.06);border-left:3px solid var(--accent-gold);border-radius:var(--radius-sm) var(--radius-lg) var(--radius-lg) var(--radius-lg)}.message-time{font-size:var(--font-size-xs);color:var(--text-muted);padding:0 var(--spacing-sm)}.message-user .message-time{text-align:right}.fin-card{background:linear-gradient(135deg,#1a1e27f2,#12151cfa);border:1px solid rgba(200,169,110,.1);border-radius:var(--radius-md);padding:var(--spacing-lg);animation:cardSlideIn var(--duration-slow) var(--ease-out) both;position:relative;overflow:hidden}.fin-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-gold),rgba(200,169,110,.2),transparent)}.fin-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.fin-card-title{font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-gold)}.fin-card-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-gold-dim);font-size:14px}.balance-grid{display:grid;gap:var(--spacing-md)}.balance-account{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#0b0e1480;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.03);transition:all var(--duration-fast) var(--ease-out)}.balance-account:hover{border-color:#c8a96e1a}.balance-account-info{display:flex;flex-direction:column;gap:2px}.balance-account-name{font-size:var(--font-size-base);font-weight:500;color:var(--text-primary)}.balance-account-number{font-size:var(--font-size-xs);font-family:var(--font-mono);color:var(--text-muted)}.balance-amount{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);transition:filter var(--duration-normal) var(--ease-out)}.balance-amount.positive{color:var(--success)}.balance-amount.negative{color:var(--error)}.balance-amount.blurred{filter:blur(10px);-webkit-user-select:none;user-select:none}.balance-total{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:var(--accent-gold-dim);border-radius:var(--radius-sm);border:1px solid rgba(200,169,110,.15);margin-top:var(--spacing-sm)}.balance-total-label{font-size:var(--font-size-sm);font-weight:600;color:var(--accent-gold);text-transform:uppercase;letter-spacing:.06em}.balance-total-amount{font-family:var(--font-mono);font-size:var(--font-size-xl);font-weight:700;color:var(--accent-gold)}.transaction-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.transaction-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#0b0e1466;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.02);transition:all var(--duration-fast) var(--ease-out);min-height:var(--target-size)}.transaction-item:hover{background:#0b0e14b3;border-color:#c8a96e14}.transaction-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--bg-elevated);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.transaction-details{flex:1;min-width:0}.transaction-merchant{font-size:var(--font-size-base);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-category{font-size:var(--font-size-xs);color:var(--text-muted)}.transaction-right{text-align:right;flex-shrink:0}.transaction-amount{font-family:var(--font-mono);font-size:var(--font-size-base);font-weight:600}.transaction-amount.income{color:var(--success)}.transaction-amount.expense{color:var(--text-primary)}.transaction-date{font-size:var(--font-size-xs);color:var(--text-muted)}.spending-breakdown{display:flex;flex-direction:column;gap:var(--spacing-md)}.spending-row{display:flex;align-items:center;gap:var(--spacing-md)}.spending-label{width:120px;font-size:var(--font-size-sm);color:var(--text-secondary);flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spending-bar-track{flex:1;height:10px;background:#0b0e1480;border-radius:5px;overflow:hidden}.spending-bar-fill{height:100%;border-radius:5px;animation:barGrow .8s var(--ease-out) both;background:var(--bar-color, var(--accent-gold));min-width:4px}.spending-value{width:70px;text-align:right;font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);flex-shrink:0}.spending-total-row{display:flex;align-items:center;justify-content:space-between;padding-top:var(--spacing-md);border-top:1px solid rgba(200,169,110,.08);margin-top:var(--spacing-sm)}.spending-total-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.spending-total-value{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:700;color:var(--accent-gold)}.health-card-content{display:flex;align-items:center;gap:var(--spacing-xl)}.health-score-ring{width:100px;height:100px;flex-shrink:0;position:relative}.health-score-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.health-score-number{font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:700;color:var(--accent-gold);line-height:1}.health-score-label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.health-metrics{flex:1;display:flex;flex-direction:column;gap:var(--spacing-sm)}.health-metric{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm)}.health-metric-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.health-metric-name{flex:1;color:var(--text-secondary)}.health-metric-value{font-weight:600;color:var(--text-primary)}.transfer-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.transfer-accounts{display:flex;align-items:center;gap:var(--spacing-md)}.transfer-account-box{flex:1;padding:var(--spacing-md);background:#0b0e1480;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.04);text-align:center}.transfer-account-type{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--spacing-xs)}.transfer-account-name{font-size:var(--font-size-base);font-weight:500;color:var(--text-primary)}.transfer-arrow{font-size:20px;color:var(--accent-gold);flex-shrink:0}.transfer-amount-display{text-align:center;padding:var(--spacing-md)}.transfer-amount-value{font-family:var(--font-mono);font-size:var(--font-size-2xl);font-weight:700;color:var(--accent-gold)}.transfer-status{font-size:var(--font-size-sm);color:var(--success);margin-top:var(--spacing-xs)}.card-lock-display{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:#0b0e1480;border-radius:var(--radius-sm)}.card-lock-info{display:flex;align-items:center;gap:var(--spacing-md)}.card-visual{width:64px;height:40px;border-radius:6px;background:linear-gradient(135deg,var(--accent-gold),#8B7345);display:flex;align-items:center;justify-content:center;font-size:10px;font-family:var(--font-mono);color:var(--text-inverse);font-weight:700}.card-lock-status{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-base);font-weight:600}.card-lock-status.locked{color:var(--error)}.card-lock-status.unlocked{color:var(--success)}.quick-replies{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);padding:var(--spacing-sm) 0}.quick-reply-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);min-height:var(--target-size);background:#c8a96e14;border:1px solid rgba(200,169,110,.2);border-radius:var(--radius-lg);color:var(--accent-gold);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap}.quick-reply-btn:hover{background:#c8a96e26;border-color:var(--accent-gold);transform:translateY(-1px);box-shadow:0 4px 12px #c8a96e26}.quick-reply-btn:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.quick-reply-btn:active{transform:translateY(0)}.welcome-card{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);max-width:500px;margin:auto;animation:fadeIn var(--duration-slow) var(--ease-out) both;animation-delay:.4s}.welcome-icon{width:64px;height:64px;margin:0 auto var(--spacing-lg);border-radius:50%;background:var(--accent-gold-dim);border:1px solid rgba(200,169,110,.2);display:flex;align-items:center;justify-content:center;font-size:28px}.welcome-title{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.welcome-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-lg)}.chat-input-area{padding:var(--spacing-md) var(--spacing-xl) var(--spacing-lg);border-top:1px solid rgba(200,169,110,.06);background:#12151c99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:slideInUp var(--duration-slow) var(--ease-out) both;animation-delay:.5s}.quick-actions-bar{display:flex;gap:var(--spacing-sm);padding-bottom:var(--spacing-md);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.quick-actions-bar::-webkit-scrollbar{display:none}.quick-action-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);min-height:36px;background:#1a1e2799;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);color:var(--text-secondary);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;flex-shrink:0}.quick-action-btn:hover{background:#1a1e27e6;border-color:#c8a96e26;color:var(--text-primary)}.quick-action-btn:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.input-row{display:flex;align-items:flex-end;gap:var(--spacing-sm)}.input-wrapper{flex:1;position:relative}.chat-textarea{width:100%;min-height:var(--target-size);max-height:160px;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-elevated);border:1px solid rgba(200,169,110,.1);border-radius:var(--radius-lg);color:var(--text-primary);font-family:var(--font-body);font-size:var(--font-size-base);line-height:1.5;resize:none;outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.chat-textarea::placeholder{color:var(--text-muted)}.chat-textarea:focus{border-color:#c8a96e4d;box-shadow:0 0 0 3px #c8a96e14}.input-hint{position:absolute;bottom:-18px;right:var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-muted)}.send-btn{display:flex;align-items:center;justify-content:center;width:var(--target-size);height:var(--target-size);border:none;border-radius:var(--radius-md);background:var(--accent-gold);color:var(--text-inverse);cursor:pointer;font-size:18px;transition:all var(--duration-fast) var(--ease-out);flex-shrink:0}.send-btn:hover:not(:disabled){background:var(--accent-gold-light);transform:scale(1.05);box-shadow:0 4px 20px #c8a96e4d}.send-btn:active:not(:disabled){transform:scale(.95)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.send-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.attach-btn{display:flex;align-items:center;justify-content:center;width:var(--target-size);height:var(--target-size);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer;font-size:18px;transition:all var(--duration-fast) var(--ease-out);flex-shrink:0}.attach-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.attach-btn:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.typing-indicator{display:inline-flex;align-items:center;gap:5px;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-elevated);border-radius:var(--radius-lg) var(--radius-lg) var(--radius-lg) var(--radius-sm);border-left:3px solid var(--accent-gold);animation:fadeIn var(--duration-fast) var(--ease-out)}.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-gold);opacity:.5;animation:typingBounce 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}.proactive-alert{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--warning-dim);border:1px solid rgba(240,165,0,.2);border-radius:var(--radius-md);animation:slideInUp var(--duration-normal) var(--ease-spring)}.proactive-alert-icon{font-size:20px;flex-shrink:0;margin-top:2px}.proactive-alert-content{flex:1}.proactive-alert-title{font-size:var(--font-size-sm);font-weight:600;color:var(--warning);margin-bottom:var(--spacing-xs)}.proactive-alert-text{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}.proactive-alert-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.alert-action-btn{padding:var(--spacing-xs) var(--spacing-md);min-height:32px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:all var(--duration-fast) var(--ease-out);border:none}.alert-action-btn:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.alert-action-btn.primary{background:var(--warning);color:var(--text-inverse)}.alert-action-btn.primary:hover{opacity:.9}.alert-action-btn.secondary{background:transparent;border:1px solid rgba(240,165,0,.3);color:var(--warning)}.alert-action-btn.secondary:hover{background:#f0a5001a}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:99;animation:fadeIn var(--duration-fast) var(--ease-out)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-8px);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes barGrow{0%{width:0}to{width:var(--bar-width, 0%)}}@keyframes scoreStroke{0%{stroke-dashoffset:283}to{stroke-dashoffset:var(--score-offset, 283)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.stagger-7{animation-delay:.7s}.stagger-8{animation-delay:.8s}.bar-stagger-1{animation-delay:.2s}.bar-stagger-2{animation-delay:.35s}.bar-stagger-3{animation-delay:.5s}.bar-stagger-4{animation-delay:.65s}.bar-stagger-5{animation-delay:.8s}.bar-stagger-6{animation-delay:.95s}.score-ring-bg{fill:none;stroke:var(--bg-deep);stroke-width:8}.score-ring-fill{fill:none;stroke:var(--accent-gold);stroke-width:8;stroke-linecap:round;stroke-dasharray:283;stroke-dashoffset:var(--score-offset, 283);transform:rotate(-90deg);transform-origin:50% 50%;animation:scoreStroke 1.2s var(--ease-out) both;animation-delay:.3s}@media(prefers-reduced-motion:reduce){.chat-page,.chat-page *,.chat-page *:before,.chat-page *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.typing-dot{animation:none!important;opacity:.7}.spending-bar-fill{animation:none!important;width:var(--bar-width, 0%)!important}.score-ring-fill{animation:none!important;stroke-dashoffset:var(--score-offset, 283)!important}}@media(prefers-contrast:more){:root{--bg-elevated: #1F2330;--text-secondary: #B0B5BE;--text-muted: #8A8F98}.message-bubble,.fin-card,.conversation-item,.quick-reply-btn,.quick-action-btn,.chat-textarea{border-width:2px}.density-option.active{border:2px solid var(--accent-gold)}}@media(forced-colors:active){.message-bot .message-bubble{border-left:3px solid Highlight}.fin-card:before{background:Highlight}.send-btn{background:ButtonFace;color:ButtonText;border:2px solid ButtonText}.quick-reply-btn,.quick-action-btn{border:1px solid ButtonText;color:ButtonText}.accent-gold,.brand-name,.fin-card-title{color:Highlight}.skip-link:focus{outline:3px solid Highlight}.typing-dot{background:Highlight}.score-ring-fill{stroke:Highlight}}.chat-page button:focus-visible,.chat-page a:focus-visible,.chat-page textarea:focus-visible,.chat-page [role=button]:focus-visible,.chat-page [tabindex="0"]:focus-visible{outline:2px solid var(--accent-gold);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(max-width:1024px){:root{--sidebar-width: 280px}.chat-messages-container{padding:var(--spacing-md) var(--spacing-lg)}.chat-input-area{padding:var(--spacing-md) var(--spacing-lg) var(--spacing-md)}}@media(max-width:768px){.chat-sidebar{position:fixed;left:0;top:0;bottom:0;z-index:100;width:300px;transform:translate(-100%);transition:transform var(--duration-normal) var(--ease-out);animation:none}.chat-sidebar.open{transform:translate(0)}.sidebar-overlay.visible{display:block}.menu-toggle{display:flex}.message{max-width:95%}.chat-messages-container{padding:var(--spacing-md)}.chat-input-area{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}.health-card-content{flex-direction:column;align-items:center;text-align:center}.spending-label{width:90px}.transfer-accounts{flex-direction:column}.transfer-arrow{transform:rotate(90deg)}}@media(max-width:480px){.chat-sidebar{width:100%}.message{max-width:100%}.message-avatar{display:none}.quick-actions-bar{padding-bottom:var(--spacing-sm)}.welcome-card{padding:var(--spacing-lg) var(--spacing-md)}.fin-card{padding:var(--spacing-md)}.balance-total-amount{font-size:var(--font-size-lg)}}@media print{.chat-sidebar,.chat-input-area,.quick-actions-bar,.quick-replies,.typing-indicator,.send-btn,.attach-btn{display:none!important}.chat-page{position:static;background:#fff;color:#000}.chat-messages-container{overflow:visible}}
