@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=DM+Sans:wght@400;500;600&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--color-alabaster: #FAF9F6;--color-white: #FFFFFF;--color-charcoal: #1A1A1A;--color-teal: #2C5F5D;--color-teal-light: #3D7673;--color-teal-dark: #1F4947;--color-sage: #A4B8A0;--color-beige: #E8E3D8;--color-beige-dark: #D4CFC4;--color-coral: #D4A5A5;--color-gray-50: #F8F7F4;--color-gray-100: #F0EDE7;--color-gray-200: #E0DDD5;--color-gray-300: #C8C4BA;--color-gray-400: #A8A49A;--color-gray-500: #88847A;--color-gray-600: #6B675D;--color-gray-700: #4A4740;--color-gray-800: #2E2C27;--font-display: "Cormorant Garamond", serif;--font-body: "DM Sans", sans-serif;--font-mono: "JetBrains Mono", monospace;--shadow-xs: 0 1px 3px rgba(26, 26, 26, .04);--shadow-sm: 0 2px 8px rgba(26, 26, 26, .06);--shadow-md: 0 4px 20px rgba(26, 26, 26, .06);--shadow-lg: 0 8px 32px rgba(26, 26, 26, .08);--shadow-xl: 0 12px 48px rgba(26, 26, 26, .1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-elegant: .35s cubic-bezier(.25, .46, .45, .94);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--color-charcoal);background:var(--color-alabaster);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.02em}h1{font-size:2.25rem;font-weight:600}h2{font-size:1.75rem;font-weight:600}h3{font-size:1.375rem;font-weight:600}button{font-family:var(--font-body);cursor:pointer;border:none;background:none;transition:all var(--transition-base)}input,select,textarea{font-family:var(--font-body);font-size:15px}.app-layout{display:flex;min-height:100vh;background:var(--color-alabaster)}.sidebar{width:260px;background:var(--color-white);border-right:1px solid var(--color-gray-200);display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;z-index:100}.sidebar-header{padding:var(--space-10) var(--space-8);display:flex;align-items:center;gap:var(--space-4);border-bottom:1px solid var(--color-gray-200)}.sidebar-logo{width:36px;height:36px;flex-shrink:0}.sidebar-logo svg{width:100%;height:100%}.sidebar-brand{font-family:var(--font-display);font-size:1.5rem;font-weight:600;color:var(--color-charcoal);letter-spacing:-.02em}.sidebar-nav{padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);color:var(--color-gray-600);font-size:15px;font-weight:500;transition:all var(--transition-base);background:transparent;width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--color-gray-100);color:var(--color-teal)}.sidebar-nav-item.active{background:var(--color-teal);color:var(--color-white)}.sidebar-nav-item svg{flex-shrink:0}.app-content{flex:1;margin-left:260px;display:flex;flex-direction:column}.app-header{background:var(--color-white);border-bottom:1px solid var(--color-gray-200);padding:var(--space-8) var(--space-12);position:sticky;top:0;z-index:50}.header-content{max-width:1400px;margin:0 auto;width:100%;display:flex;justify-content:space-between;align-items:center;gap:var(--space-8)}.header-left{flex:0 0 auto}.header-page-title{font-size:2rem;font-weight:600;color:var(--color-charcoal);margin:0}.header-right{display:flex;align-items:center;gap:var(--space-6);margin-left:auto}.header-currency-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-gray-100);border-radius:var(--radius-full);color:var(--color-charcoal);font-weight:500;transition:all var(--transition-base)}.header-currency-btn:hover{background:var(--color-gray-200);transform:translateY(-1px)}.header-currency-symbol{font-family:var(--font-mono);font-size:16px;font-weight:600}.header-currency-code{font-size:14px;color:var(--color-gray-600)}.header-user{display:flex;align-items:center;gap:var(--space-4)}.header-user-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--color-teal);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.header-user-info{display:flex;flex-direction:column;gap:var(--space-1);align-items:flex-end}.header-user-email{font-size:14px;color:var(--color-charcoal);font-weight:500;text-align:right}.header-logout-btn{font-size:13px;color:var(--color-gray-600);text-decoration:none;transition:color var(--transition-fast);text-align:right}.header-logout-btn:hover{color:var(--color-teal)}.app-main{flex:1;padding:var(--space-12);background:var(--color-alabaster)}.main-container{max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-10);animation:fadeInUp .5s var(--transition-elegant) both}.dashboard-header-content{display:flex;flex-direction:column;gap:var(--space-3)}.dashboard-title{font-size:2.25rem;font-weight:600;color:var(--color-charcoal);margin:0}.sync-status{display:flex;align-items:center;gap:var(--space-3);color:var(--color-gray-600);font-size:14px}.sync-icon{display:flex;align-items:center;color:var(--color-teal)}.scan-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-8);background:var(--color-teal);color:var(--color-white);border-radius:var(--radius-lg);font-weight:500;font-size:15px;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.scan-btn:hover{background:var(--color-teal-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.scan-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--color-white);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.scan-settings-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-white);color:var(--color-teal);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);box-shadow:var(--shadow-sm);cursor:pointer}.scan-settings-btn:hover{background:var(--color-alabaster);color:var(--color-teal-dark);border-color:var(--color-teal);transform:translateY(-2px);box-shadow:var(--shadow-md)}.scan-settings-btn:hover svg{transform:rotate(45deg);transition:transform var(--transition-elegant)}.scan-settings-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.scan-settings-btn:disabled:hover svg{transform:none}.scan-settings-btn-active{background:var(--color-teal);color:var(--color-white);border-color:var(--color-teal);box-shadow:0 0 0 3px #2c5f5d1a}.scan-settings-btn-active:hover{background:var(--color-teal-dark);color:var(--color-white);border-color:var(--color-teal-dark);box-shadow:0 0 0 3px #2c5f5d26,var(--shadow-md)}.scan-settings-btn-active svg{animation:pulse-rotate 2s ease-in-out infinite}@keyframes pulse-rotate{0%,to{transform:rotate(0)}50%{transform:rotate(180deg)}}.scan-settings-btn-active:hover svg{animation:none;transform:rotate(45deg)}.reprocess-btn{display:flex;align-items:center;gap:10px;padding:12px 24px;background:var(--color-white);color:var(--color-sage);font-family:var(--font-sans);font-size:15px;font-weight:500;letter-spacing:.2px;border:1px solid var(--color-sage);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.reprocess-btn:hover{background:var(--color-sage);color:var(--color-white);border-color:var(--color-sage);transform:translateY(-2px);box-shadow:var(--shadow-md)}.reprocess-btn:hover svg{animation:spin-once .6s ease-in-out}@keyframes spin-once{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reprocess-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.reprocess-btn:disabled:hover{background:var(--color-white);color:var(--color-sage);transform:none}.reprocess-btn:disabled:hover svg{animation:none}.advanced-scan-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:540px;background:var(--color-white);border-radius:var(--radius-xl);box-shadow:0 20px 60px #1a1a1a26;z-index:10001;padding:var(--space-12);max-height:85vh;overflow-y:auto}.advanced-scan-info{display:flex;gap:var(--space-4);padding:var(--space-6);background:var(--color-alabaster);border-radius:var(--radius-md);margin-top:var(--space-6)}.info-icon{flex-shrink:0;display:flex;align-items:flex-start;color:var(--color-teal);padding-top:2px}.info-content{flex:1}.info-title{font-size:14px;font-weight:600;color:var(--color-charcoal);margin:0 0 var(--space-2) 0}.info-description{font-size:13px;line-height:1.5;color:var(--color-gray-600);margin:0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8);margin-bottom:var(--space-12);animation:fadeInUp .6s var(--transition-elegant) both;animation-delay:.1s}.stat-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-10);box-shadow:var(--shadow-md);display:flex;gap:var(--space-6);transition:all var(--transition-base)}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-card-primary{background:linear-gradient(135deg,var(--color-teal) 0%,var(--color-teal-dark) 100%);color:var(--color-white)}.stat-card-icon{width:56px;height:56px;background:#ffffff26;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-white)}.stat-card-icon-secondary{background:var(--color-teal);color:var(--color-white)}.stat-card-content{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.stat-card-label{font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;opacity:.85}.stat-card-value{font-family:var(--font-mono);font-size:2rem;font-weight:600;line-height:1;color:var(--color-white)}.stat-card-value-secondary{color:var(--color-charcoal)}.stat-card-meta{font-size:13px;opacity:.7}.stat-card .stat-card-label{color:#ffffffe6}.stat-card .stat-card-meta{color:#fffc}.stat-card:not(.stat-card-primary) .stat-card-label{color:var(--color-gray-600)}.stat-card:not(.stat-card-primary) .stat-card-meta{color:var(--color-gray-500)}.categories-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-10);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.categories-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.categories-title{font-size:1.125rem;font-weight:600;margin-bottom:var(--space-6);color:var(--color-charcoal)}.categories-list{display:flex;flex-direction:column;gap:var(--space-5)}.category-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.category-row-left{display:flex;align-items:center;gap:var(--space-3);flex:1}.category-name{font-size:14px;color:var(--color-gray-700);text-transform:capitalize}.category-row-right{display:flex;align-items:center;gap:var(--space-5)}.category-count{font-size:13px;color:var(--color-gray-500);min-width:30px;text-align:right}.category-amount{font-family:var(--font-mono);font-size:14px;font-weight:500;color:var(--color-charcoal);min-width:100px;text-align:right}.graph-section{margin-bottom:var(--space-12);animation:fadeInUp .7s var(--transition-elegant) both;animation-delay:.2s}.graph-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.graph-section-title{font-size:1.75rem;font-weight:600;color:var(--color-charcoal)}.graph-period-selector{display:flex;gap:var(--space-2);background:var(--color-white);padding:var(--space-2);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.period-btn{padding:var(--space-3) var(--space-5);background:transparent;color:var(--color-gray-600);border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:all var(--transition-base)}.period-btn:hover{background:var(--color-gray-100);color:var(--color-teal)}.period-btn.active{background:var(--color-teal);color:var(--color-white)}.spending-graph{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-10);box-shadow:var(--shadow-md)}.graph-header{margin-bottom:var(--space-8)}.graph-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-8)}.graph-stat-item{display:flex;flex-direction:column;gap:var(--space-2)}.graph-stat-label{font-size:13px;color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.graph-stat-value{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;color:var(--color-charcoal)}.graph-container{margin-top:var(--space-6)}.graph-tooltip-custom{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-lg);border:1px solid var(--color-gray-200)}.graph-tooltip-date{font-size:13px;color:var(--color-gray-600);margin-bottom:var(--space-2)}.graph-tooltip-value{font-family:var(--font-mono);font-size:1.125rem;font-weight:600;color:var(--color-teal);margin-bottom:var(--space-1)}.graph-tooltip-daily{font-size:13px;color:var(--color-gray-600)}.spending-graph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:var(--space-20);color:var(--color-gray-500)}.spending-graph-empty svg{color:var(--color-gray-400)}.transactions-section{animation:fadeInUp .8s var(--transition-elegant) both;animation-delay:.3s}.transactions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8)}.transactions-header-left{display:flex;align-items:baseline;gap:var(--space-4)}.transactions-title{font-size:1.75rem;font-weight:600;color:var(--color-charcoal)}.transactions-count{font-size:14px;color:var(--color-gray-600);font-family:var(--font-mono)}.add-transaction-btn{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-white);color:var(--color-teal);border:2px solid var(--color-teal);border-radius:var(--radius-lg);font-weight:500;font-size:14px;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.add-transaction-btn:hover{background:var(--color-teal);color:var(--color-white);transform:translateY(-2px);box-shadow:var(--shadow-md)}.transactions-controls{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm)}.search-bar{position:relative;margin-bottom:var(--space-5)}.search-icon{position:absolute;left:var(--space-5);top:50%;transform:translateY(-50%);color:var(--color-gray-500);pointer-events:none}.search-input{width:100%;padding:var(--space-4) var(--space-5) var(--space-4) var(--space-12);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);color:var(--color-charcoal);font-size:15px;transition:all var(--transition-base)}.search-input:focus{outline:none;border-color:var(--color-teal);background:var(--color-white);box-shadow:0 0 0 3px #2c5f5d1a}.search-input::placeholder{color:var(--color-gray-500)}.search-clear{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);color:var(--color-gray-500);padding:var(--space-2);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.search-clear:hover{background:var(--color-gray-200);color:var(--color-charcoal)}.filter-row{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-width:120px}.filter-label{font-size:11px;font-weight:500;color:var(--color-gray-700);text-transform:uppercase;letter-spacing:.05em}.filter-select,.date-input{padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);color:var(--color-charcoal);font-size:13px;transition:all var(--transition-base)}.filter-select:focus,.date-input:focus{outline:none;border-color:var(--color-teal);background:var(--color-white);box-shadow:0 0 0 3px #2c5f5d1a}.date-range-inputs{display:flex;align-items:center;gap:var(--space-2)}.date-separator{font-size:11px;color:var(--color-gray-600)}.filter-clear-all{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-coral);color:var(--color-white);border-radius:var(--radius-md);font-size:12px;font-weight:500;transition:all var(--transition-base)}.filter-clear-all:hover{background:#c89595;transform:translateY(-1px)}.transactions-list{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-8)}.transaction-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base);overflow:hidden;animation:fadeInUp .4s var(--transition-elegant) both}.transaction-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.transaction-card-main{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6) var(--space-8);cursor:pointer;gap:var(--space-6)}.transaction-card-left{display:flex;align-items:center;gap:var(--space-5);flex:1}.status-dot,.merchant-logo,.merchant-logo-small,.merchant-logo-large{flex-shrink:0}.merchant-logo{width:40px;height:40px}.merchant-logo-small{width:36px;height:36px}.merchant-logo-large{width:56px;height:56px}.merchant-logo img,.merchant-logo-small img,.merchant-logo-large img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-md)}.merchant-logo-fallback,.merchant-logo-small-fallback,.merchant-logo-large-fallback{width:100%;height:100%;background:var(--color-gray-200);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-weight:600;color:var(--color-gray-600);font-family:var(--font-display)}.merchant-logo-fallback{font-size:16px}.merchant-logo-small-fallback{font-size:14px}.merchant-logo-large-fallback{font-size:20px}.transaction-info{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.transaction-merchant{font-size:15px;font-weight:600;color:var(--color-charcoal)}.transaction-meta{font-size:13px;color:var(--color-gray-600);display:flex;align-items:center;gap:var(--space-2)}.transaction-meta-dot{color:var(--color-gray-400)}.transaction-category{text-transform:capitalize;color:var(--color-gray-600)}.transaction-card-right{display:flex;align-items:center;gap:var(--space-5)}.transaction-amount{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.transaction-currency{font-size:12px;color:var(--color-gray-600);font-weight:500}.transaction-value{font-family:var(--font-mono);font-size:1.125rem;font-weight:600;color:var(--color-charcoal)}.verification-badge{font-size:18px;display:flex;align-items:center}.transaction-confidence{font-family:var(--font-mono);font-size:12px;font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.transaction-confidence.high{background:#a4b8a033;color:var(--color-sage)}.transaction-confidence.medium{background:#e8e3d899;color:var(--color-gray-700)}.transaction-confidence.low{background:#d4a5a533;color:var(--color-coral)}.transaction-expand-btn{padding:var(--space-2);color:var(--color-gray-500);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.transaction-expand-btn:hover{background:var(--color-gray-100);color:var(--color-teal)}.transaction-card-expanded{border-top:1px solid var(--color-gray-200);padding:var(--space-8);background:var(--color-gray-50)}.transaction-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);margin-bottom:var(--space-8)}.transaction-detail-section{display:flex;flex-direction:column;gap:var(--space-5)}.transaction-detail-title{font-size:1rem;font-weight:600;color:var(--color-charcoal)}.transaction-detail-fields{display:flex;flex-direction:column;gap:var(--space-4)}.transaction-field{display:flex;flex-direction:column;gap:var(--space-1)}.transaction-field-label{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-600);font-weight:500}.transaction-field-value{font-size:14px;color:var(--color-charcoal);font-weight:500}.transaction-email-preview{background:var(--color-white);border-radius:var(--radius-md);padding:var(--space-5);border:1px solid var(--color-gray-200)}.email-header{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-gray-200)}.email-header-row{display:flex;gap:var(--space-3);font-size:13px}.email-label{font-weight:600;color:var(--color-gray-700);min-width:60px}.email-value{color:var(--color-gray-600);word-break:break-word}.email-body{font-size:13px;color:var(--color-gray-700);line-height:1.6}.email-snippet{max-height:200px;overflow-y:auto}.transaction-verification-actions{display:flex;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-gray-200)}.verification-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:all var(--transition-base)}.verification-btn-correct{background:var(--color-sage);color:var(--color-white)}.verification-btn-correct:hover:not(:disabled){background:#95a891;transform:translateY(-1px)}.verification-btn-flag{background:var(--color-beige);color:var(--color-gray-700)}.verification-btn-flag:hover:not(:disabled){background:var(--color-beige-dark);transform:translateY(-1px)}.verification-btn-false{background:var(--color-coral);color:var(--color-white)}.verification-btn-false:hover:not(:disabled){background:#c89595;transform:translateY(-1px)}.verification-btn:disabled{opacity:.5;cursor:not-allowed}.pagination{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-8);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.pagination-info{font-size:14px;color:var(--color-gray-600)}.pagination-controls{display:flex;gap:var(--space-2);align-items:center}.pagination-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-gray-100);color:var(--color-gray-700);border-radius:var(--radius-md);transition:all var(--transition-base)}.pagination-btn:hover:not(:disabled){background:var(--color-teal);color:var(--color-white)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{display:flex;gap:var(--space-2);margin:0 var(--space-3)}.pagination-page{min-width:36px;height:36px;padding:0 var(--space-3);display:flex;align-items:center;justify-content:center;background:var(--color-gray-100);color:var(--color-gray-700);border-radius:var(--radius-md);font-size:14px;font-weight:500;transition:all var(--transition-base)}.pagination-page:hover{background:var(--color-teal-light);color:var(--color-white)}.pagination-page.active{background:var(--color-teal);color:var(--color-white)}.pagination-ellipsis{color:var(--color-gray-500);padding:0 var(--space-2);display:flex;align-items:center}.pagination-size{display:flex;align-items:center;gap:var(--space-3);font-size:14px;color:var(--color-gray-600)}.pagination-size-select{padding:var(--space-2) var(--space-3);background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);color:var(--color-charcoal);font-size:14px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.empty-icon{color:var(--color-gray-400);margin-bottom:var(--space-6)}.empty-title{font-size:1.5rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-3)}.empty-description{font-size:15px;color:var(--color-gray-600);text-align:center;max-width:400px}.currency-overlay{position:fixed;inset:0;background:#1a1a1a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;animation:fadeIn .2s ease-out}.currency-panel,.add-transaction-modal{position:fixed;right:0;top:0;height:100vh;width:400px;background:var(--color-white);box-shadow:var(--shadow-xl);z-index:1001;display:flex;flex-direction:column;animation:slideInRight .3s var(--transition-elegant)}.add-transaction-modal{width:500px}.currency-panel-header,.add-transaction-header{padding:var(--space-8);border-bottom:1px solid var(--color-gray-200);display:flex;justify-content:space-between;align-items:flex-start}.add-transaction-header{flex-direction:column;gap:var(--space-2)}.currency-panel-header h3,.add-transaction-header h3{font-size:1.5rem;font-weight:600;color:var(--color-charcoal)}.add-transaction-subtitle{font-size:14px;color:var(--color-gray-600);margin-bottom:var(--space-4)}.currency-close{position:absolute;right:var(--space-6);top:var(--space-6);padding:var(--space-2);color:var(--color-gray-600);border-radius:var(--radius-md);transition:all var(--transition-fast)}.currency-close:hover{background:var(--color-gray-100);color:var(--color-charcoal)}.currency-list{flex:1;overflow-y:auto;padding:var(--space-6)}.currency-option{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5);border-radius:var(--radius-md);transition:all var(--transition-base);background:transparent;width:100%;text-align:left}.currency-option:hover{background:var(--color-gray-100)}.currency-option.active{background:var(--color-teal);color:var(--color-white)}.currency-symbol{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;width:40px;text-align:center}.currency-details{flex:1}.currency-code{font-size:15px;font-weight:600;margin-bottom:var(--space-1)}.currency-name{font-size:13px;color:var(--color-gray-600)}.currency-option.active .currency-name{color:#fffc}.currency-check{color:var(--color-white)}.add-transaction-form{flex:1;overflow-y:auto;padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-6)}.form-row{display:flex;gap:var(--space-5)}.form-field{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.form-field-full{flex:1 1 100%}.form-field label{font-size:13px;font-weight:600;color:var(--color-gray-700);text-transform:uppercase;letter-spacing:.05em}.form-field input,.form-field select,.form-field textarea{padding:var(--space-4);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);color:var(--color-charcoal);font-size:15px;transition:all var(--transition-base)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-teal);background:var(--color-white);box-shadow:0 0 0 3px #2c5f5d1a}.form-field textarea{resize:vertical;font-family:var(--font-body);line-height:1.6}.add-transaction-actions{display:flex;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-gray-200)}.btn-cancel{flex:1;padding:var(--space-4) var(--space-6);background:var(--color-gray-100);color:var(--color-gray-700);border-radius:var(--radius-md);font-weight:500;transition:all var(--transition-base)}.btn-cancel:hover:not(:disabled){background:var(--color-gray-200)}.btn-submit{flex:2;display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-teal);color:var(--color-white);border-radius:var(--radius-md);font-weight:500;transition:all var(--transition-base)}.btn-submit:hover:not(:disabled){background:var(--color-teal-dark);transform:translateY(-1px)}.btn-submit:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed}.settings-container{max-width:900px;margin:0 auto;animation:fadeInUp .5s var(--transition-elegant) both}.settings-section{margin-bottom:var(--space-12)}.settings-section-title{font-size:1.75rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-6)}.settings-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-10);box-shadow:var(--shadow-md);margin-bottom:var(--space-6)}.settings-description{font-size:15px;color:var(--color-gray-600);line-height:1.7;margin-bottom:var(--space-8)}.settings-help-box{background:var(--color-gray-50);border:1px solid var(--color-gray-200)}.settings-help-title{font-size:1rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-4)}.settings-help-steps{list-style:decimal;padding-left:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);color:var(--color-gray-700);font-size:14px;line-height:1.6}.settings-help-steps code{background:var(--color-white);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;color:var(--color-teal);border:1px solid var(--color-gray-200)}.settings-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.settings-label{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-700)}.settings-value{font-size:15px;color:var(--color-charcoal);font-family:var(--font-mono);font-weight:500}.settings-input{padding:var(--space-4);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);color:var(--color-charcoal);font-size:15px;transition:all var(--transition-base)}.settings-input:focus{outline:none;border-color:var(--color-teal);background:var(--color-white);box-shadow:0 0 0 3px #2c5f5d1a}.settings-hint{font-size:13px;color:var(--color-gray-600);line-height:1.5}.settings-btn{padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);font-weight:500;font-size:15px;transition:all var(--transition-base)}.settings-btn-primary{background:var(--color-teal);color:var(--color-white)}.settings-btn-primary:hover:not(:disabled){background:var(--color-teal-dark);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.settings-btn-danger{background:var(--color-coral);color:var(--color-white)}.settings-btn-danger:hover:not(:disabled){background:#c89595;transform:translateY(-1px)}.settings-btn:disabled{opacity:.5;cursor:not-allowed}.whatsapp-linked{display:flex;justify-content:space-between;align-items:center;gap:var(--space-6)}.whatsapp-status{display:flex;align-items:center;gap:var(--space-5)}.whatsapp-status-icon{width:48px;height:48px;background:var(--color-sage);color:var(--color-white);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.whatsapp-status-text{display:flex;flex-direction:column;gap:var(--space-1)}.whatsapp-status-label{font-size:13px;color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.whatsapp-status-number{font-family:var(--font-mono);font-size:15px;color:var(--color-charcoal);font-weight:600}.whatsapp-link-form{display:flex;flex-direction:column;gap:var(--space-6)}.settings-error{padding:var(--space-4) var(--space-6);background:#d4a5a526;border:1px solid var(--color-coral);border-radius:var(--radius-md);color:#a04040;font-size:14px;margin-top:var(--space-5)}.settings-success{padding:var(--space-4) var(--space-6);background:#a4b8a026;border:1px solid var(--color-sage);border-radius:var(--radius-md);color:#4a6b47;font-size:14px;margin-top:var(--space-5)}.settings-loading{padding:var(--space-10);text-align:center;color:var(--color-gray-600)}.settings-instructions{background:var(--color-gray-50);border:1px solid var(--color-gray-200)}.settings-instructions-title{font-size:1.25rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-5)}.settings-instructions-subtitle{font-size:1rem;font-weight:600;color:var(--color-charcoal);margin-top:var(--space-6);margin-bottom:var(--space-4)}.settings-instructions-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.settings-instructions-list li{display:flex;gap:var(--space-3);color:var(--color-gray-700);font-size:14px;line-height:1.6}.settings-instructions-list code{background:var(--color-white);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;color:var(--color-teal);border:1px solid var(--color-gray-200);font-weight:500}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-alabaster) 0%,var(--color-gray-100) 100%);padding:var(--space-8)}.auth-content{max-width:480px;width:100%;animation:fadeInUp .6s var(--transition-elegant) both}.auth-branding{text-align:center;margin-bottom:var(--space-12)}.brand-icon{width:72px;height:72px;margin:0 auto var(--space-6)}.brand-name{font-family:var(--font-display);font-size:2.5rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-3);letter-spacing:-.02em}.brand-tagline{font-size:1.125rem;color:var(--color-gray-600)}.auth-card{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-12);box-shadow:var(--shadow-xl)}.auth-title{font-size:1.75rem;font-weight:600;color:var(--color-charcoal);margin-bottom:var(--space-4);text-align:center}.auth-description{font-size:15px;color:var(--color-gray-600);line-height:1.7;text-align:center;margin-bottom:var(--space-10)}.auth-button{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:var(--color-white);border:2px solid var(--color-gray-300);border-radius:var(--radius-lg);color:var(--color-charcoal);font-weight:600;font-size:15px;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.auth-button:hover{border-color:var(--color-teal);transform:translateY(-2px);box-shadow:var(--shadow-md)}.google-icon{width:24px;height:24px}.auth-footer{margin-top:var(--space-8);text-align:center;font-size:13px;color:var(--color-gray-600);padding-top:var(--space-8);border-top:1px solid var(--color-gray-200)}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-alabaster);gap:var(--space-6)}.loading-spinner{width:48px;height:48px;border:3px solid var(--color-gray-300);border-top-color:var(--color-teal);border-radius:50%;animation:spin .8s linear infinite}.loading-text{font-size:15px;color:var(--color-gray-600)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@media(max-width:1200px){.stats-grid{grid-template-columns:1fr 1fr}.categories-card{grid-column:1 / -1}}@media(max-width:768px){.sidebar{width:70px}.sidebar-brand,.sidebar-nav-item span{display:none}.sidebar-header,.sidebar-nav-item{justify-content:center}.app-content{margin-left:70px}.app-header{padding:var(--space-6) var(--space-6)}.app-main{padding:var(--space-6)}.stats-grid,.transaction-details-grid{grid-template-columns:1fr}.filter-row{flex-direction:column}.filter-group,.currency-panel,.add-transaction-modal{width:100%}.pagination{flex-direction:column;gap:var(--space-5)}.pagination-pages{order:-1}}@media(max-width:480px){.header-user-info{display:none}.transaction-card-main{flex-direction:column;align-items:flex-start;gap:var(--space-5)}.transaction-card-right{width:100%;justify-content:space-between}}
