@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;--bg-glass: rgba(18, 21, 28, .88);--bg-glass-subtle: rgba(18, 21, 28, .5);--bg-glass-input: rgba(18, 21, 28, .6);--bg-card-start: rgba(26, 30, 39, .95);--bg-card-end: rgba(18, 21, 28, .98);--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}.theme-light{--bg-deep: #F5F3EF;--bg-surface: #FFFFFF;--bg-elevated: #FFFFFF;--bg-hover: #F0EDE8;--bg-active: #E8E4DD;--accent-gold: #A68B4B;--accent-gold-light: #BFA362;--accent-gold-dim: rgba(166, 139, 75, .1);--accent-gold-glow: rgba(166, 139, 75, .18);--accent-teal: #2BA89E;--accent-teal-dim: rgba(43, 168, 158, .08);--text-primary: #1A1A1A;--text-secondary: #5C5C5C;--text-muted: #8C8C8C;--text-inverse: #FFFFFF;--success: #2E8B3D;--success-dim: rgba(46, 139, 61, .08);--warning: #C68A00;--warning-dim: rgba(198, 138, 0, .08);--error: #C43C3C;--error-dim: rgba(196, 60, 60, .08);--info: #3A7BBF;--info-dim: rgba(58, 123, 191, .08);--bg-glass: rgba(255, 255, 255, .92);--bg-glass-subtle: rgba(255, 255, 255, .85);--bg-glass-input: rgba(255, 255, 255, .8);--bg-card-start: rgba(255, 255, 255, .98);--bg-card-end: rgba(245, 243, 239, .98)}.theme-evening{--bg-deep: #0E1525;--bg-surface: #141C30;--bg-elevated: #1A2440;--bg-hover: #1E2A48;--bg-active: #243050;--accent-gold: #C8A96E;--accent-gold-light: #D4B97E;--accent-teal: #4ECDC4;--text-primary: #E4E0DB;--text-secondary: #9BA4B8;--text-muted: #6B7590;--text-inverse: #0E1525;--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);--accent-gold-dim: rgba(200, 169, 110, .14);--accent-gold-glow: rgba(200, 169, 110, .24);--accent-teal-dim: rgba(78, 205, 196, .11);--bg-glass: rgba(20, 28, 48, .9);--bg-glass-subtle: rgba(20, 28, 48, .55);--bg-glass-input: rgba(20, 28, 48, .62);--bg-card-start: rgba(26, 36, 64, .95);--bg-card-end: rgba(20, 28, 48, .98)}.theme-dusk{--bg-deep: #1A1324;--bg-surface: #221A30;--bg-elevated: #2A223C;--bg-hover: #322844;--bg-active: #3A304C;--accent-gold: #D4AD6A;--accent-gold-light: #DFC07E;--accent-teal: #4ECDC4;--text-primary: #E4DDE8;--text-secondary: #A8A0B8;--text-muted: #7E7490;--text-inverse: #1A1324;--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);--accent-gold-dim: rgba(212, 173, 106, .14);--accent-gold-glow: rgba(212, 173, 106, .24);--accent-teal-dim: rgba(78, 205, 196, .11);--bg-glass: rgba(34, 26, 48, .9);--bg-glass-subtle: rgba(34, 26, 48, .58);--bg-glass-input: rgba(34, 26, 48, .64);--bg-card-start: rgba(42, 34, 60, .95);--bg-card-end: rgba(34, 26, 48, .98)}.theme-twilight{--bg-deep: #221A10;--bg-surface: #2C2216;--bg-elevated: #36291C;--bg-hover: #3E3022;--bg-active: #463828;--accent-gold: #D4A84E;--accent-gold-light: #E0BA68;--accent-teal: #4ECDC4;--text-primary: #F0E8DC;--text-secondary: #B8A890;--text-muted: #8A7A64;--text-inverse: #221A10;--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);--accent-gold-dim: rgba(212, 168, 78, .16);--accent-gold-glow: rgba(212, 168, 78, .28);--accent-teal-dim: rgba(78, 205, 196, .11);--bg-glass: rgba(44, 34, 22, .9);--bg-glass-subtle: rgba(44, 34, 22, .58);--bg-glass-input: rgba(44, 34, 22, .64);--bg-card-start: rgba(54, 41, 28, .95);--bg-card-end: rgba(44, 34, 22, .98)}.theme-dawn{--bg-deep: #C4AFA0;--bg-surface: #D0BAA8;--bg-elevated: #D6C0AE;--bg-hover: #BEA898;--bg-active: #B8A292;--accent-gold: #9E7A3C;--accent-gold-light: #B08E4E;--accent-teal: #2E9E94;--text-primary: #1C1410;--text-secondary: #3E302A;--text-muted: #6E5C52;--text-inverse: #F5F0EC;--success: #2E8B3D;--success-dim: rgba(46, 139, 61, .1);--warning: #C68A00;--warning-dim: rgba(198, 138, 0, .1);--error: #C43C3C;--error-dim: rgba(196, 60, 60, .1);--info: #3A7BBF;--info-dim: rgba(58, 123, 191, .1);--accent-gold-dim: rgba(158, 122, 60, .14);--accent-gold-glow: rgba(158, 122, 60, .22);--accent-teal-dim: rgba(46, 158, 148, .1);--bg-glass: rgba(208, 186, 168, .92);--bg-glass-subtle: rgba(208, 186, 168, .75);--bg-glass-input: rgba(208, 186, 168, .78);--bg-card-start: rgba(214, 192, 174, .96);--bg-card-end: rgba(208, 186, 168, .98)}.theme-morning{--bg-deep: #E2D5C8;--bg-surface: #EBE0D4;--bg-elevated: #EFE5DA;--bg-hover: #DDD0C2;--bg-active: #D8C8B8;--accent-gold: #8E6E30;--accent-gold-light: #A58240;--accent-teal: #288880;--text-primary: #1A1612;--text-secondary: #4A4038;--text-muted: #7A6E62;--text-inverse: #FAF8F6;--success: #2E8B3D;--success-dim: rgba(46, 139, 61, .09);--warning: #C68A00;--warning-dim: rgba(198, 138, 0, .09);--error: #C43C3C;--error-dim: rgba(196, 60, 60, .09);--info: #3A7BBF;--info-dim: rgba(58, 123, 191, .09);--accent-gold-dim: rgba(142, 110, 48, .12);--accent-gold-glow: rgba(142, 110, 48, .2);--accent-teal-dim: rgba(40, 136, 128, .09);--bg-glass: rgba(235, 224, 212, .92);--bg-glass-subtle: rgba(235, 224, 212, .8);--bg-glass-input: rgba(235, 224, 212, .82);--bg-card-start: rgba(239, 229, 218, .96);--bg-card-end: rgba(235, 224, 212, .98)}.chat-page.theme-evening{background:radial-gradient(ellipse at 15% 50%,rgba(100,130,200,.06) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(78,205,196,.03) 0%,transparent 40%),var(--bg-deep)}.chat-page.theme-dusk{background:radial-gradient(ellipse at 15% 50%,rgba(160,100,180,.06) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(200,169,110,.04) 0%,transparent 40%),var(--bg-deep)}.chat-page.theme-twilight{background:radial-gradient(ellipse at 15% 50%,rgba(212,168,78,.08) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(200,120,60,.05) 0%,transparent 40%),var(--bg-deep)}.chat-page.theme-dawn{background:radial-gradient(ellipse at 15% 50%,rgba(180,120,80,.08) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(200,140,100,.06) 0%,transparent 40%),var(--bg-deep)}.chat-page.theme-morning{background:radial-gradient(ellipse at 15% 50%,rgba(142,110,48,.05) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(40,136,128,.04) 0%,transparent 40%),var(--bg-deep)}.chat-page.theme-light{background:radial-gradient(ellipse at 15% 50%,rgba(166,139,75,.04) 0%,transparent 50%),radial-gradient(ellipse at 85% 20%,rgba(43,168,158,.03) 0%,transparent 40%),var(--bg-deep)}.theme-light .chat-sidebar{border-right:1px solid rgba(166,139,75,.12)}.theme-light .sidebar-header{border-bottom:1px solid rgba(166,139,75,.1)}.theme-light .new-chat-btn{background:#a68b4b0f;border-color:#a68b4b40}.theme-light .new-chat-btn:hover{background:#a68b4b1f}.theme-light .conversation-item:hover{background:var(--bg-hover)}.theme-light .conversation-item.active{background:var(--bg-hover);border-color:#a68b4b26}.theme-light .conv-icon{background:var(--bg-hover)}.theme-light .sidebar-footer{border-top:1px solid rgba(166,139,75,.1)}.theme-light .density-toggle{background:var(--bg-hover)}.theme-light .density-option.active{background:var(--bg-elevated);box-shadow:0 2px 8px #00000014}.theme-light .chat-header{border-bottom:1px solid rgba(166,139,75,.1)}.theme-light .chat-messages-container{background-image:radial-gradient(circle at 1px 1px,rgba(166,139,75,.03) 1px,transparent 0)}.theme-light .chat-messages-container::-webkit-scrollbar-thumb{background:#d5d0c8}.theme-light .chat-messages-container::-webkit-scrollbar-thumb:hover{background:#c5c0b8}.theme-light .message-user .message-bubble{background:linear-gradient(135deg,#ede9e0,#f5f3ef);border:1px solid rgba(166,139,75,.15)}.theme-light .message-bot .message-bubble{background:var(--bg-elevated);border:1px solid rgba(166,139,75,.1);border-left:3px solid var(--accent-gold);box-shadow:0 1px 4px #0000000a}.theme-light .message-bot .message-avatar{background:var(--accent-gold-dim);border-color:#a68b4b33}.theme-light .message-user .message-avatar{background:var(--bg-hover);border-color:#00000014}.theme-light .fin-card{border:1px solid rgba(166,139,75,.12);box-shadow:0 2px 8px #0000000a}.theme-light .fin-card:before{background:linear-gradient(90deg,var(--accent-gold),rgba(166,139,75,.2),transparent)}.theme-light .balance-account{background:#f5f3efb3;border-color:#0000000a}.theme-light .balance-account:hover{border-color:#a68b4b26}.theme-light .balance-total{background:var(--accent-gold-dim);border-color:#a68b4b2e}.theme-light .transaction-item{background:#f5f3ef80;border-color:#00000008}.theme-light .transaction-item:hover{background:#f5f3efe6;border-color:#a68b4b1a}.theme-light .transaction-icon{background:var(--bg-hover)}.theme-light .spending-bar-track{background:#0000000d}.theme-light .spending-total-row{border-top-color:#a68b4b1f}.theme-light .score-ring-bg{stroke:var(--bg-hover)}.theme-light .transfer-account-box{background:#f5f3efb3;border-color:#0000000d}.theme-light .card-lock-display{background:#f5f3efb3}.theme-light .card-visual{color:var(--text-inverse)}.theme-light .quick-reply-btn{background:#a68b4b0f;border-color:#a68b4b33}.theme-light .quick-reply-btn:hover{background:#a68b4b1f;box-shadow:0 4px 12px #a68b4b1a}.theme-light .chat-input-area{border-top:1px solid rgba(166,139,75,.1)}.theme-light .quick-action-btn{background:#f5f3efcc;border-color:#0000000f}.theme-light .quick-action-btn:hover{background:var(--bg-elevated);border-color:#a68b4b33}.theme-light .chat-textarea{background:var(--bg-elevated);border-color:#a68b4b26;box-shadow:0 1px 3px #0000000a}.theme-light .chat-textarea:focus{border-color:#a68b4b66;box-shadow:0 0 0 3px #a68b4b14}.theme-light .typing-indicator{background:var(--bg-elevated);box-shadow:0 1px 4px #0000000a}.theme-light .proactive-alert{background:var(--warning-dim);border-color:#c68a0033}.theme-light .sidebar-overlay{background:#0000004d}.theme-light .welcome-icon{background:var(--accent-gold-dim);border-color:#a68b4b33}:is(.theme-dawn,.theme-morning) .chat-sidebar{border-right:1px solid rgba(0,0,0,.08)}:is(.theme-dawn,.theme-morning) .sidebar-header{border-bottom:1px solid rgba(0,0,0,.06)}:is(.theme-dawn,.theme-morning) .new-chat-btn{background:var(--accent-gold-dim);border-color:#9e7a3c40}:is(.theme-dawn,.theme-morning) .new-chat-btn:hover{background:#9e7a3c1f}:is(.theme-dawn,.theme-morning) .conversation-item.active{border-color:#9e7a3c26}:is(.theme-dawn,.theme-morning) .conv-icon{background:var(--bg-hover)}:is(.theme-dawn,.theme-morning) .sidebar-footer{border-top:1px solid rgba(0,0,0,.06)}:is(.theme-dawn,.theme-morning) .density-toggle{background:var(--bg-hover)}:is(.theme-dawn,.theme-morning) .density-option.active{background:var(--bg-elevated);box-shadow:0 2px 8px #00000014}:is(.theme-dawn,.theme-morning) .chat-header{border-bottom:1px solid rgba(0,0,0,.06)}:is(.theme-dawn,.theme-morning) .chat-messages-container{background-image:radial-gradient(circle at 1px 1px,rgba(0,0,0,.02) 1px,transparent 0)}:is(.theme-dawn,.theme-morning) .message-user .message-bubble{background:linear-gradient(135deg,var(--bg-hover),var(--bg-deep));border:1px solid rgba(0,0,0,.08)}:is(.theme-dawn,.theme-morning) .message-bot .message-bubble{background:var(--bg-elevated);border:1px solid rgba(0,0,0,.06);border-left:3px solid var(--accent-gold);box-shadow:0 1px 4px #0000000a}:is(.theme-dawn,.theme-morning) .message-bot .message-avatar{background:var(--accent-gold-dim);border-color:#9e7a3c33}:is(.theme-dawn,.theme-morning) .message-user .message-avatar{background:var(--bg-hover);border-color:#00000014}:is(.theme-dawn,.theme-morning) .fin-card{border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 8px #0000000a}:is(.theme-dawn,.theme-morning) .fin-card:before{background:linear-gradient(90deg,var(--accent-gold),rgba(158,122,60,.2),transparent)}:is(.theme-dawn,.theme-morning) .balance-account{background:#0000000a;border-color:#0000000a}:is(.theme-dawn,.theme-morning) .balance-account:hover{border-color:#9e7a3c26}:is(.theme-dawn,.theme-morning) .balance-total{background:var(--accent-gold-dim);border-color:#9e7a3c2e}:is(.theme-dawn,.theme-morning) .transaction-item{background:#00000008;border-color:#00000008}:is(.theme-dawn,.theme-morning) .transaction-item:hover{background:#0000000f;border-color:#9e7a3c1a}:is(.theme-dawn,.theme-morning) .transaction-icon{background:var(--bg-hover)}:is(.theme-dawn,.theme-morning) .spending-bar-track{background:#0000000f}:is(.theme-dawn,.theme-morning) .spending-total-row{border-top-color:#00000014}:is(.theme-dawn,.theme-morning) .score-ring-bg{stroke:var(--bg-hover)}:is(.theme-dawn,.theme-morning) .transfer-account-box{background:#0000000a;border-color:#0000000d}:is(.theme-dawn,.theme-morning) .card-lock-display{background:#0000000a}:is(.theme-dawn,.theme-morning) .quick-reply-btn{background:var(--accent-gold-dim);border-color:#9e7a3c33}:is(.theme-dawn,.theme-morning) .quick-reply-btn:hover{background:#9e7a3c1f;box-shadow:0 4px 12px #9e7a3c1a}:is(.theme-dawn,.theme-morning) .chat-input-area{border-top:1px solid rgba(0,0,0,.06)}:is(.theme-dawn,.theme-morning) .quick-action-btn{background:#0000000a;border-color:#0000000f}:is(.theme-dawn,.theme-morning) .quick-action-btn:hover{background:var(--bg-elevated);border-color:#9e7a3c33}:is(.theme-dawn,.theme-morning) .chat-textarea{background:var(--bg-elevated);border-color:#9e7a3c26;box-shadow:0 1px 3px #0000000a}:is(.theme-dawn,.theme-morning) .chat-textarea:focus{border-color:#9e7a3c66;box-shadow:0 0 0 3px #9e7a3c14}:is(.theme-dawn,.theme-morning) .typing-indicator{background:var(--bg-elevated);box-shadow:0 1px 4px #0000000a}:is(.theme-dawn,.theme-morning) .proactive-alert{background:var(--warning-dim);border-color:#c68a0033}:is(.theme-dawn,.theme-morning) .sidebar-overlay{background:#0000004d}:is(.theme-dawn,.theme-morning) .welcome-icon{background:var(--accent-gold-dim);border-color:#9e7a3c33}.celestial-arc-container{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0 0}.celestial-arc-wrapper{position:relative;width:100%;max-width:260px;aspect-ratio:260 / 125;cursor:pointer;-webkit-user-select:none;user-select:none}.celestial-arc-svg{width:100%;height:100%;display:block;overflow:visible}.celestial-thumb{position:absolute;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;transform:translate(-50%,-50%);transition:left .35s var(--ease-spring),top .35s var(--ease-spring),background .4s ease,box-shadow .4s ease;pointer-events:none;z-index:2}.celestial-thumb-moon{background:radial-gradient(circle at 40% 35%,#e8e4f0,#88a);border:2px solid rgba(200,200,255,.5);box-shadow:0 0 8px #b4b4dc80,0 0 20px #b4b4dc33,0 2px 4px #0000004d}.celestial-thumb-twilight{background:radial-gradient(circle at 40% 35%,#fff0d0,#c8a060);border:2px solid rgba(255,220,150,.5);box-shadow:0 0 10px #c8a96e99,0 0 24px #c8a96e4d,0 2px 4px #0000004d}.celestial-thumb-sun{background:radial-gradient(circle at 35% 35%,#fff8e0,#e0a830);border:2px solid rgba(255,230,130,.6);box-shadow:0 0 12px #f0be3cb3,0 0 28px #f0be3c4d,0 2px 4px #0003}.celestial-endpoint{position:absolute;bottom:4px;font-size:16px;line-height:1;pointer-events:none;transition:transform .3s var(--ease-spring),filter .4s ease}.celestial-endpoint-moon{left:2px;filter:drop-shadow(0 0 4px rgba(200,200,255,.4))}.celestial-endpoint-sun{right:2px;filter:drop-shadow(0 0 4px rgba(255,200,80,.4))}.celestial-arc-wrapper:hover .celestial-endpoint-moon{transform:rotate(-12deg) scale(1.1)}.celestial-arc-wrapper:hover .celestial-endpoint-sun{transform:rotate(12deg) scale(1.1)}.celestial-arc-label{font-family:var(--font-display);font-style:italic;font-size:13px;font-weight:500;color:var(--accent-gold);letter-spacing:.04em;text-shadow:0 0 12px var(--accent-gold-dim);text-align:center;transition:color .4s ease,text-shadow .4s ease}.chat-page,.chat-sidebar,.chat-header,.chat-main,.chat-input-area,.sidebar-footer,.message-bubble,.chat-textarea,.density-toggle,.density-option{transition:background-color .5s ease,background .5s ease,color .4s ease,border-color .4s ease,box-shadow .4s ease}.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:var(--bg-glass);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-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{border-top:1px solid rgba(200,169,110,.06)}.settings-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-sm) var(--spacing-lg);min-height:var(--target-size);background:transparent;border:none;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.settings-toggle:hover{background:var(--bg-hover)}.settings-toggle:focus-visible{outline:2px solid var(--accent-gold);outline-offset:-2px}.settings-toggle-label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.settings-toggle-chevron{font-size:18px;font-weight:600;color:var(--text-muted);transform:rotate(-90deg);transition:transform var(--duration-normal) var(--ease-spring);line-height:1}.settings-toggle-chevron.open{transform:rotate(90deg)}.settings-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--duration-normal) var(--ease-out);overflow:hidden}.settings-panel.open{grid-template-rows:1fr}.settings-panel-inner{min-height:0;overflow:hidden;padding:0 var(--spacing-lg);transition:padding var(--duration-normal) var(--ease-out)}.settings-panel.open .settings-panel-inner{padding:var(--spacing-xs) var(--spacing-lg) var(--spacing-md)}.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:var(--bg-glass-subtle);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,var(--bg-card-start),var(--bg-card-end));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:var(--bg-glass-input);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)}}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;background:var(--bg-deep);animation:fadeIn var(--duration-fast) var(--ease-out)}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.loading-spinner{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center}.loading-spinner .brand-mark{width:36px;height:36px;animation:loadingPulse 2s ease-in-out infinite}.loading-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.loading-ring-bg{fill:none;stroke:#c8a96e1a;stroke-width:4}.loading-ring-arc{fill:none;stroke:var(--accent-gold);stroke-width:4;stroke-linecap:round;stroke-dasharray:264;stroke-dashoffset:198;transform-origin:50% 50%;animation:loadingSpin 1.2s linear infinite}.loading-text{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:500;color:var(--text-primary);letter-spacing:.02em}.loading-dots{display:flex;align-items:center;gap:6px}.loading-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-gold);animation:loadingBounce 1.4s ease-in-out infinite}.loading-dot:nth-child(2){animation-delay:.15s}.loading-dot:nth-child(3){animation-delay:.3s}@keyframes loadingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loadingPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes loadingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}@media(prefers-reduced-motion:reduce){.loading-ring-arc{animation:none!important;stroke-dashoffset:198}.loading-spinner .brand-mark{animation:none!important}.loading-dot{animation:none!important;opacity:.7}}@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}}
