body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.dialog-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.dialog-box{animation:slideUp .3s ease;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;padding:2rem;width:90%}.alert-box{text-align:center}.alert-icon{font-size:3rem;margin-bottom:1rem}.alert-icon.success{color:#28a745}.alert-icon.error{color:#dc3545}.alert-icon.warning{color:#ffc107}.alert-icon.info{color:#17a2b8}.alert-message{color:#333;font-size:1.1rem;margin-bottom:1.5rem}.confirm-title{color:#333;font-size:1.3rem;margin-bottom:1rem}.confirm-message{color:#666;font-size:1rem;margin-bottom:1rem}.confirm-details{background:#f8f9fa;border-radius:8px;color:#495057;font-size:.9rem;margin-bottom:1.5rem;padding:1rem}.dialog-buttons{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.dialog-button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.dialog-button.primary{background:#667eea;color:#fff}.dialog-button.primary:hover{background:#5568d3;transform:translateY(-2px)}.dialog-button.secondary{background:#e9ecef;color:#495057}.dialog-button.secondary:hover{background:#dee2e6}.period-editor{max-width:400px}.period-inputs{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.input-group{gap:.5rem}.input-group label{color:#495057;font-size:.9rem;font-weight:500}.period-input{border:1px solid #dee2e6;border-radius:8px;font-size:1rem;padding:.75rem}.period-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}@media (max-width:768px){.dialog-box{padding:1.5rem;width:95%}.dialog-buttons{flex-direction:column-reverse}.dialog-button{width:100%}}.period-display{background:#e7f3ff;border-radius:8px;justify-content:space-between;margin:.5rem 0;padding:.75rem}.period-display,.period-info{align-items:center;display:flex}.period-info{gap:.5rem}.period-label{color:#495057;font-size:.9rem;font-weight:500}.period-dates{color:#667eea;font-size:1rem;font-weight:600}.period-edit-btn{background:#fff;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:1rem;padding:.4rem .8rem;transition:all .2s}.period-edit-btn:hover{background:#f8f9fa;border-color:#667eea;transform:scale(1.1)}.results-preview-detailed{background:#d4edda;border:2px solid #28a745;border-radius:8px;margin-top:1rem;padding:1rem}.preview-header{color:#155724;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.preview-body{display:flex;flex-direction:column;gap:.75rem}.preview-balance{align-items:center;background:#fff;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.balance-label{color:#495057;font-weight:500}.balance-amount{color:#28a745;font-size:1.3rem;font-weight:700}.preview-additional{background:#ffffff80;border-radius:6px;display:flex;flex-direction:column;font-size:.9rem;gap:.5rem;padding:.5rem}.additional-item{display:flex;justify-content:space-between}.additional-label{color:#6c757d}.additional-value{color:#495057;font-weight:600}.file-item{align-items:center;background:#fff;border-radius:4px;display:flex;font-size:.9rem;justify-content:space-between;margin:.25rem 0;padding:.5rem}.file-success{color:#28a745;font-weight:700}.file-balance{color:#dc3545;font-weight:700}.editor-overlay{align-items:flex-end;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;bottom:0;display:flex;left:0;overflow:hidden;padding:0;position:fixed;right:0;top:0;z-index:1000}.editor-container{animation:slideUp .3s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:24px 24px 0 0;box-shadow:0 -4px 24px #0003;display:flex;flex-direction:column;max-height:95vh;max-width:100%;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.editor-header{background:#fff;border-bottom:1px solid #e5e7eb;border-radius:24px 24px 0 0;flex-shrink:0;padding:1rem .875rem .75rem}.header-content{margin:0 auto;max-width:1200px}.editor-title{align-items:center;color:#111827;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;line-height:1.3;margin:0}.title-icon{font-size:1.25rem}.editor-subtitle{color:#6b7280;font-size:.8125rem;line-height:1.4;margin:.375rem 0 0}.editor-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:hidden;overflow-y:auto;padding:.75rem}.editor-content::-webkit-scrollbar{width:8px}.editor-content::-webkit-scrollbar-track{background:#0000}.editor-content::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}.account-card{border-radius:10px;box-shadow:0 2px 8px #00000014;margin:0 auto 1rem;max-width:1200px;overflow:hidden}.account-header{align-items:center;color:#fff;display:flex;font-size:.9375rem;font-weight:700;gap:.625rem;padding:.875rem 1rem}.account-header.checking,.account-header.savings{background:#1a8080}.account-icon{font-size:1.25rem}.account-title{font-size:1rem}.account-body{background:#f9fafb;padding:1rem}.section{margin-bottom:1.5rem}.section:last-child{margin-bottom:0}.section-header{flex-wrap:wrap;gap:.625rem;justify-content:space-between;margin-bottom:.75rem}.section-header,.section-title{align-items:center;display:flex}.section-title{color:#9ca3af;font-size:.75rem;font-weight:700;gap:.5rem;letter-spacing:.05em;margin:0}.count-badge{align-items:center;background:#9ca3af;border-radius:12px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;justify-content:center;min-width:1.5rem;padding:.125rem .5rem}.balance-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr}.input-group{display:flex;flex-direction:column;gap:.375rem;min-width:0}.input-label{color:#374151;font-size:.75rem;font-weight:700;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.mobile-only{display:block}.input-wrapper{align-items:center;display:flex;min-width:0;position:relative}.currency-symbol{color:#374151;font-size:1rem;font-weight:600;left:.875rem;line-height:1;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:10}.input-modern{-webkit-appearance:none;appearance:none;border:2px solid #e5e7eb;color:#111827;font-weight:500;min-width:0;padding:.75rem .875rem;transition:all .2s ease}.currency-input{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;padding-left:2rem;text-align:right}.input-modern:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.input-modern::placeholder{color:#9ca3af;font-weight:400}.add-btn{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.8125rem;font-weight:600;gap:.375rem;min-height:40px;padding:.5rem .875rem;transition:all .2s ease;white-space:nowrap}.add-btn.deposits{background:#10b981}.add-btn.deposits:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.add-btn.deposits:active{transform:translateY(0)}.add-btn.withdrawals{background:#ef4444}.add-btn.withdrawals:hover{background:#dc2626;box-shadow:0 4px 12px #ef44444d;transform:translateY(-1px)}.add-btn.withdrawals:active{transform:translateY(0)}.add-btn:not(.deposits):not(.withdrawals){background:#3b82f6}.add-btn:not(.deposits):not(.withdrawals):hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.btn-icon{font-size:1rem;line-height:1}.btn-text{display:none}.transactions-list{display:flex;flex-direction:column;gap:.625rem}.transaction-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:.75rem;transition:all .2s ease}.transaction-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000d}.transaction-grid{grid-gap:.625rem;align-items:start;display:grid;gap:.625rem;grid-template-columns:1fr;min-width:0}.transaction-description{grid-column:1;min-width:0}.delete-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1.375rem;font-weight:700;justify-content:center;justify-self:stretch;line-height:1;min-height:40px;padding:.625rem;transition:all .2s ease}.delete-btn:hover{background:#dc2626;transform:scale(1.05)}.delete-btn:active{transform:scale(.95)}.delete-icon{display:block;line-height:1}.editor-footer{background:#fff;border-top:1px solid #e5e7eb;box-shadow:0 -2px 8px #0000000d;display:flex;flex-shrink:0;gap:.625rem;padding:.75rem}.editor-footer .btn-primary,.editor-footer .btn-secondary{-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:.9375rem;font-weight:600;gap:.375rem;justify-content:center;min-height:48px;padding:.875rem .75rem;transition:all .2s ease}.btn-secondary{background:#f9fafb;border:2px solid #e5e7eb;color:#374151}.btn-secondary:hover{background:#fff;border-color:#d1d5db}.btn-secondary:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{box-shadow:0 6px 16px #3b82f666}.btn-primary:active{transform:translateY(0)}@media (min-width:768px){.editor-overlay{align-items:center;padding:2rem}.editor-container{border-radius:16px;margin:0 auto;max-height:90vh;max-width:900px}.editor-header{border-radius:16px 16px 0 0;padding:2rem 2rem 1.5rem}.editor-title{font-size:1.5rem}.editor-subtitle{font-size:.9375rem}.editor-content{padding:1.5rem 2rem}.account-header{padding:1.25rem 1.5rem}.account-body{padding:1.5rem}.balance-grid{grid-template-columns:repeat(2,1fr)}.section-title{font-size:.8125rem}.mobile-only{display:none}.transaction-grid{align-items:center;gap:1rem;grid-template-columns:110px 1fr 130px 52px}.transaction-description{grid-column:auto}.delete-btn{justify-self:auto;padding:.875rem;width:52px}.btn-text{display:inline}.editor-footer{gap:1rem;padding:1.5rem 2rem}.editor-footer .btn-primary,.editor-footer .btn-secondary{flex:initial;min-width:140px}}@media (min-width:1024px){.editor-container{max-width:1200px}.editor-header{padding:2.5rem 2.5rem 2rem}.editor-content{padding:2rem 2.5rem}.account-body{padding:2rem}.balance-grid{gap:1.5rem;grid-template-columns:repeat(2,1fr)}.transaction-grid{gap:1.25rem}.editor-footer{padding:2rem 2.5rem}.editor-content::-webkit-scrollbar{width:10px}}@media (prefers-color-scheme:dark){.editor-overlay{background:#000000d9}.editor-container,.editor-header{background:#1f2937}.editor-header{border-bottom-color:#374151}.editor-title{color:#f9fafb}.editor-subtitle{color:#9ca3af}.account-card{box-shadow:0 2px 8px #0000004d}.account-body{background:#111827}.input-modern{background:#1f2937;border-color:#374151;color:#f9fafb}.input-modern:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa26}.transaction-card{background:#1f2937;border-color:#374151}.transaction-card:hover{border-color:#4b5563}.editor-footer{background:#1f2937;border-top-color:#374151}.btn-secondary{background:#111827;border-color:#374151;color:#9ca3af}.btn-secondary:hover{background:#1f2937;border-color:#4b5563}.currency-symbol,.input-label{color:#9ca3af}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus-visible,input:focus-visible{outline:3px solid #3b82f6;outline-offset:2px}.loader-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020f0fd9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loader-content{align-items:center;display:flex;flex-direction:column;gap:3rem;position:relative}.loader{height:100px;perspective:1000px;position:relative;transform-style:preserve-3d;width:200px}.loader--reflect{margin-top:0}.loader--reflect:after{background:linear-gradient(0deg,#f7f9fc,#f7f9fc 20%,#f7f9fc4d);content:"";height:110%;left:-25%;position:absolute;top:0;width:150%}.bar{animation:bar 3s cubic-bezier(.81,.04,.4,.7) infinite;background-color:#0d3d3d;bottom:0;height:100px;left:0;position:absolute;transform:scaleY(0);transform-style:preserve-3d;width:20px}.bar:nth-child(2){animation-delay:50ms;background-color:#115050;left:20px}.bar:nth-child(3){animation-delay:.1s;background-color:#156363;left:40px}.bar:nth-child(4){animation-delay:.15s;background-color:#1a8080;left:60px}.bar:nth-child(5){animation-delay:.2s;background-color:#1e8f8f;left:80px}.bar:nth-child(6){animation-delay:.25s;background-color:#2a9d8f;left:100px}.bar:nth-child(7){animation-delay:.3s;background-color:#28b898;left:120px}.bar:nth-child(8){animation-delay:.35s;background-color:#27c88c;left:140px}.bar:nth-child(9){animation-delay:.4s;background-color:#26de81;left:160px}.bar:nth-child(10){animation-delay:.45s;background-color:#4fc3f7;left:180px}.loader--reflect .bar{animation-name:bar-reflect}@keyframes bar{0%{transform:rotate(-180deg) rotateX(-1turn)}75%,to{transform:rotate(0) rotateX(0)}}@keyframes bar-reflect{0%{transform:rotate(180deg) rotateX(1turn)}75%,to{transform:rotate(0) rotateX(0)}}.loader-message{animation:pulse 2s ease-in-out infinite;color:#fff;font-size:1.125rem;font-weight:600;margin:0;text-align:center;text-shadow:0 2px 4px #0000004d}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-dark:#0d3d3d;--primary-teal:#1a8080;--primary-teal-light:#2a9d8f;--accent-blue:#4fc3f7;--accent-green:#26de81;--accent-yellow:#fed330;--accent-red:#fc5c65;--bg-main:#f7f9fc;--bg-card:#fff;--text-primary:#2d3748;--text-secondary:#718096;--text-light:#a0aec0;--border-light:#e2e8f0;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 4px 16px #0000001a;--s:200px;--c1:#e6e6e6;--c2:#d3dada;--c3:#dfdfdf}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:repeating-conic-gradient(from 30deg,#0000 90deg 120deg,#dfdfdf 0deg 180deg) 100px 57.7px,repeating-conic-gradient(from 30deg,#e6e6e6 0deg 60deg,#d3dada 0deg 120deg,#dfdfdf 0deg 180deg);background:repeating-conic-gradient(from 30deg,#0000 90deg 120deg,var(--c3) 0deg 180deg) calc(var(--s)*.5) calc(var(--s)*.5*.577),repeating-conic-gradient(from 30deg,var(--c1) 0deg 60deg,var(--c2) 0deg 120deg,var(--c3) 0deg 180deg);background-attachment:fixed;background-size:200px 115.4px;background-size:var(--s) calc(var(--s)*.577);color:#2d3748;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.App,body{position:relative}.App{display:flex;min-height:100vh;z-index:1}.app-sidebar{background:#0d3d3d;background:var(--primary-dark);box-shadow:0 4px 16px #0000001a;box-shadow:var(--shadow-lg);color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:240px;z-index:100}.sidebar-logo{border-bottom:1px solid #ffffff1a;padding:2rem 1.5rem}.sidebar-logo h1{color:#4fc3f7;color:var(--accent-blue);color:#dbd6d6;font-size:1.5rem;font-weight:700;margin:0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1.5rem 0}.nav-item{align-items:center;border-left:3px solid #0000;color:#ffffffb3;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:1rem;padding:.875rem 1.5rem;transition:all .2s}.nav-item:hover{background:#ffffff0d;color:#fff}.nav-item.active{background:#4fc3f71a;border-left-color:#ffffffb3;color:#fff}.nav-icon{height:20px;opacity:.8;width:20px}.sidebar-footer{border-top:1px solid #ffffff1a;padding:1.5rem}.help-section{background:#ffffff0d;border-radius:8px;font-size:.85rem;padding:1rem}.help-section p{color:#fff9;margin:.5rem 0}.contact-link{color:#4fc3f7;color:var(--accent-blue);font-weight:500;text-decoration:none}.logout-btn{background:none;border:1px solid #fff3;border-radius:6px;color:#ffffffb3;cursor:pointer;font-size:.9rem;margin-top:1rem;padding:.75rem;transition:all .2s;width:100%}.logout-btn:hover{background:#ffffff0d;color:#fff}.app-content{display:flex;flex:1 1;flex-direction:column;margin-left:240px;min-height:100vh}.app-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light);box-shadow:0 1px 3px #0000000d;box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;padding:1.25rem 2rem}.header-welcome h2{color:#2d3748;color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.header-subtitle{color:#718096;color:var(--text-secondary);font-size:.875rem;margin-top:.25rem}.header-actions{align-items:center;display:flex;gap:1rem}.header-icon-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:50%;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s;width:40px}.header-icon-btn:hover{background:#f7f9fc;background:var(--bg-main);border-color:#1a8080;border-color:var(--primary-teal)}.user-avatar{align-items:center;background:linear-gradient(135deg,#1a8080,#4fc3f7);background:linear-gradient(135deg,var(--primary-teal),var(--accent-blue));border-radius:50%;color:#fff;display:flex;font-size:.9rem;font-weight:600;height:40px;justify-content:center;width:40px}.app-main{flex:1 1;max-width:1400px;padding:2rem;width:100%}.card{background:#fff;border:none;border-radius:10px;box-shadow:inset 0 -3em 3em #0000001a,0 0 0 2px #bebebe,.3em .3em 1em #0000004d;margin-bottom:1.5rem;min-height:300px;padding:1.5rem;transition:border-radius .5s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease}.card:hover{border-radius:15px;box-shadow:inset 0 -3em 3em #00000026,0 0 0 2px #1a8080,.4em .4em 1.5em #0006;box-shadow:0 4px 16px #0000001a;box-shadow:var(--shadow-lg)}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.25rem}.card-title{color:#718096;color:var(--text-secondary);font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.card-menu{color:#a0aec0;color:var(--text-light);cursor:pointer;font-size:1.25rem}.stat-display{align-items:baseline;display:flex;gap:.5rem;margin-bottom:.75rem}.stat-value{color:#2d3748;color:var(--text-primary);font-size:2rem;font-weight:700}.stat-change{border-radius:4px;font-size:.875rem;font-weight:600;padding:.25rem .5rem}.stat-change.positive{background:#26de811a;color:#26de81;color:var(--accent-green)}.stat-change.negative{background:#fc5c651a;color:#fc5c65;color:var(--accent-red)}.net-worth-card{background:linear-gradient(135deg,#1a8080,#0d3d3d);background:linear-gradient(135deg,var(--primary-teal) 0,var(--primary-dark) 100%);color:#fff}.big-number{font-size:2.5rem;font-weight:700;margin:1rem 0}.breakdown{grid-gap:1rem;border-top:1px solid #fff3;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:1.5rem;padding-top:1.5rem}.breakdown-item{display:flex;flex-direction:column;gap:.5rem}.breakdown-label{font-size:.875rem;opacity:.8}.breakdown-value{font-size:1.25rem;font-weight:700}.cards-row{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:1.5rem}.mini-card{background:#fff;border:none;border-radius:10px;box-shadow:inset 0 -3em 3em #0000001a,0 0 0 2px #bebebe,.3em .3em 1em #0000004d;padding:1.25rem;transition:border-radius .5s cubic-bezier(.175,.885,.32,1.275),transform .2s ease,box-shadow .3s ease}.mini-card:hover{box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-md);transform:translateY(-2px)}.mini-card-icon{align-items:center;border-radius:12px;display:flex;font-size:1.5rem;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.icon-blue{background:#4fc3f71a;color:#4fc3f7;color:var(--accent-blue)}.icon-green{background:#26de811a;color:#26de81;color:var(--accent-green)}.icon-yellow{background:#fed3301a;color:#fed330;color:var(--accent-yellow)}.icon-red{background:#fc5c651a;color:#fc5c65;color:var(--accent-red)}.amount{color:#2d3748;color:var(--text-primary);font-size:1.5rem;font-weight:700;margin:.5rem 0}.status-badge{border-radius:20px;display:inline-block;font-size:.8125rem;font-weight:600;padding:.375rem .875rem}.status-pending{background:#fff9e6;color:#c79700}.status-completed{background:#e6f7f0;color:#00a854}.status-failed{background:#ffe6e6;color:#d9363e}.chart-container{height:280px;padding:1rem 0;position:relative}.chart-line{stroke:#1a8080;stroke:var(--primary-teal);stroke-width:3;fill:none}.chart-area{fill:url(#gradient);opacity:.2}.chart-dot{fill:#1a8080;fill:var(--primary-teal);stroke:#fff;stroke-width:3}.chart-tooltip{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:8px;box-shadow:0 4px 16px #0000001a;box-shadow:var(--shadow-lg);font-size:.875rem;padding:.75rem;pointer-events:none;position:absolute}.transactions-table-modern{border-collapse:initial;border-spacing:0;width:100%}.transactions-table-modern thead{background:#f7f9fc;background:var(--bg-main)}.transactions-table-modern th{border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--border-light);color:#718096;color:var(--text-secondary);font-size:.8125rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.transactions-table-modern td{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-light);font-size:.9375rem;padding:1rem}.transactions-table-modern tr:hover{background:#f7f9fc;background:var(--bg-main)}.transaction-name{align-items:center;display:flex;gap:.75rem}.transaction-avatar{align-items:center;border-radius:50%;display:flex;font-size:.875rem;font-weight:600;height:36px;justify-content:center;width:36px}.transaction-details{display:flex;flex-direction:column}.transaction-title{color:#2d3748;color:var(--text-primary);font-weight:600}.transaction-time{color:#a0aec0;color:var(--text-light);font-size:.8125rem;margin-top:.125rem}.donut-chart{height:180px;margin:0 auto;position:relative;width:180px}.donut-segment{cursor:pointer;transition:all .3s}.donut-segment:hover{opacity:.8;transform:scale(1.05)}.donut-center{left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.donut-value{color:#2d3748;color:var(--text-primary);font-size:1.5rem;font-weight:700}.donut-label{color:#718096;color:var(--text-secondary);font-size:.75rem;margin-top:.25rem}.progress-bar{background:#f7f9fc;background:var(--bg-main);height:8px;overflow:hidden}.progress-bar,.progress-fill{border-radius:4px;position:relative}.progress-fill{background:linear-gradient(90deg,#1a8080,#4fc3f7);background:linear-gradient(90deg,var(--primary-teal),var(--accent-blue));height:100%;transition:width .5s ease}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.btn-primary{background:#1a8080;background:var(--primary-teal);border:none;border-radius:8px;box-shadow:0 2px 8px #1a808033;color:#fff;cursor:pointer;font-size:.9375rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-primary:hover{background:#2a9d8f;background:var(--primary-teal-light);box-shadow:0 4px 12px #1a80804d;transform:translateY(-2px)}.btn-secondary{cursor:pointer;font-weight:600;padding:.75rem 1.5rem}.btn-secondary,.input-modern{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-light);border-radius:8px;color:#2d3748;color:var(--text-primary);font-size:.9375rem;transition:all .2s}.input-modern{padding:.875rem 1rem;width:100%}.input-modern:focus{border-color:#1a8080;border-color:var(--primary-teal);box-shadow:0 0 0 3px #1a80801a;outline:none}.input-group{margin-bottom:1.25rem}.input-label{color:#2d3748;color:var(--text-primary);display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.app-footer{background:#fff;background:var(--bg-card);border-top:1px solid #e2e8f0;border-top:1px solid var(--border-light);color:#718096;color:var(--text-secondary);font-size:.875rem;margin-top:auto;padding:1.5rem;text-align:center}.mobile-menu-toggle{background:#1a8080;background:var(--primary-teal);border:none;border-radius:8px;box-shadow:0 2px 8px #00000014;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:none;font-size:1.25rem;left:1rem;padding:.5rem 1rem;position:fixed;top:1rem;z-index:101}.btn-secondary:hover{background:#f7f9fc;background:var(--bg-main);border-color:#1a8080;border-color:var(--primary-teal);transform:translateY(-1px)}.upload-container{--transition:350ms;--folder-W:120px;--folder-H:80px;align-items:center;background:linear-gradient(135deg,#1a8080,#2a9d8f);background:linear-gradient(135deg,var(--primary-teal),var(--primary-teal-light));border-radius:15px;box-shadow:0 15px 30px #1a808033;cursor:pointer;display:flex;flex-direction:column;height:calc(var(--folder-H)*1.7);justify-content:flex-end;margin-top:80px;padding:10px;position:relative;transition:all .3s ease}.upload-container:hover{box-shadow:0 20px 40px #1a80804d}.upload-folder{animation:float 2.5s ease-in-out infinite;left:calc(50% - 60px);pointer-events:none;position:absolute;top:-20px;transition:transform var(--transition) ease}.upload-folder:hover{transform:scale(1.05)}.upload-folder .back-side,.upload-folder .front-side{position:absolute;transform-origin:bottom center;transition:transform var(--transition)}.upload-folder .back-side:after,.upload-folder .back-side:before{background-color:#fff;border-radius:15px;content:"";display:block;height:var(--folder-H);opacity:.5;position:absolute;transform-origin:bottom center;transition:transform .35s;width:var(--folder-W);z-index:0}.upload-container:hover .back-side:before{transform:rotateX(-5deg) skewX(5deg)}.upload-container:hover .back-side:after{transform:rotateX(-15deg) skewX(12deg)}.upload-folder .front-side{z-index:1}.upload-container:hover .front-side{transform:rotateX(-40deg) skewX(15deg)}.upload-folder .tip{background:linear-gradient(135deg,#26de81,#2a9d8f);background:linear-gradient(135deg,var(--accent-green),var(--primary-teal-light));border-radius:12px 12px 0 0;box-shadow:0 5px 15px #0003;height:20px;position:absolute;top:-10px;width:80px;z-index:2}.upload-folder .cover{background:linear-gradient(135deg,#26de81,#1a8080);background:linear-gradient(135deg,var(--accent-green),var(--primary-teal));border-radius:10px;box-shadow:0 15px 30px #0000004d;height:var(--folder-H);width:var(--folder-W)}.custom-file-upload{background:#fff3;border:none;border-radius:10px;box-shadow:0 10px 20px #0000001a;color:#fff;cursor:pointer;display:inline-block;font-size:.95em;font-weight:600;padding:10px 20px;position:relative;text-align:center;transition:background var(--transition) ease;width:100%}.custom-file-upload:hover{background:#ffffff4d}.custom-file-upload input[type=file]{display:none}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-20px)}to{transform:translateY(0)}}@media (max-width:768px){.mobile-menu-toggle{display:block!important}}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:2fr 1fr;margin-bottom:1.5rem}.data-manager-container{margin:0 auto;max-width:1400px;padding:0 1rem}.data-manager-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}@media (max-width:768px){.app-header{padding:1rem 1rem 1rem 3.5rem}.header-welcome h2{font-size:1rem}.header-welcome{margin-left:1rem}.header-actions{gap:.5rem}.header-icon-btn{font-size:.875rem;height:32px;width:32px}.user-avatar{font-size:.8rem;height:32px;width:32px}.data-manager-container{max-width:100%;padding:0 .5rem}.dashboard-grid,.data-manager-grid{grid-template-columns:1fr}.app-main{padding:1rem}.app-main,.dashboard{max-width:100vw;width:100%}.card{max-width:100%;overflow-x:auto}.dashboard-grid{grid-template-columns:1fr!important}}@media (max-width:1024px){.app-sidebar{width:200px}.app-content{margin-left:200px}}@media (max-width:768px){.app-sidebar{transform:translateX(-100%);transition:transform .3s}.app-sidebar.open{transform:translateX(0)}.app-content{margin-left:0}.app-main{padding:1rem}.cards-row{grid-template-columns:1fr}.big-number{font-size:2rem}.breakdown{grid-template-columns:1fr}.header-subtitle{display:none}}.skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f7f9fc,#e9ecef 50%,#f7f9fc);background:linear-gradient(90deg,var(--bg-main) 0,#e9ecef 50%,var(--bg-main) 100%);background-size:200% 100%;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{color:#a0aec0;color:var(--text-light);padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.3}