.dashboard-shell{min-height:100vh;box-sizing:border-box;max-width:1100px;margin:0 auto;padding:clamp(1rem,4vw,2rem);padding-bottom:clamp(2rem,8vw,4rem)}.dashboard-header{display:flex;flex-direction:column;align-items:stretch;gap:clamp(1rem,3vw,1.35rem);padding:clamp(1.35rem,4vw,1.75rem) clamp(1.25rem,4vw,1.75rem);border-radius:18px;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#9a7209,#c9a227 22%,#e8c547 45%,#f0d878,#e8c547 55%,#c9a227 78%,#9a7209) border-box;background-clip:padding-box,border-box;background-origin:padding-box,border-box;box-shadow:0 4px 28px #0f172a12,0 0 0 1px #c9a2271f;margin-bottom:clamp(1.25rem,4vw,2rem)}.dashboard-header-body{display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(.75rem,2.5vw,1.1rem)}.dashboard-logo-wrap{display:flex;justify-content:center;align-items:center;width:100%;line-height:0}.dashboard-logo{width:clamp(200px,55vw,300px);max-width:100%;height:auto;max-height:88px;object-fit:contain;object-position:center}.dashboard-title-wrap{width:100%;min-width:0}.dashboard-title{margin:0;font-size:clamp(1.15rem,3.5vw,1.55rem);font-weight:400;color:#000;line-height:1.25;letter-spacing:-.02em;text-wrap:balance}.dashboard-greeting-prefix{font-weight:100;color:#4b5563}.dashboard-greeting-name{font-weight:700;color:#000}.dashboard-subtitle{margin:.4rem 0 0;font-size:clamp(.8125rem,2vw,.9375rem);color:#4b5563;font-weight:100;letter-spacing:.02em}.dashboard-header-stats{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem 1.75rem;margin:.85rem 0 0;padding:.65rem 1rem;border-radius:12px;background:#0f172a0a}.dashboard-header-stat{display:inline-flex;align-items:baseline;gap:.35rem;font-size:clamp(.9rem,2.2vw,1rem)}.dashboard-header-stat-label{color:#4b5563;font-weight:400}.dashboard-header-stat-value{color:#000;font-weight:700;font-variant-numeric:tabular-nums}.dashboard-header-actions{display:flex;align-items:center;gap:.75rem;width:100%!important;max-width:100%;align-self:stretch;justify-content:center;flex-wrap:wrap}@media (min-width: 600px){.dashboard-header-actions{width:auto!important;align-self:center;justify-content:center;flex-wrap:nowrap}}.dashboard-profile-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;padding:0;background:#f0f4f8;border:2px solid #e2e8f0;border-radius:50%;color:#0f172a;font-weight:500;font-size:1rem;cursor:pointer;transition:all .2s ease;flex-shrink:0}.dashboard-profile-icon:hover:not(:disabled){background:#e2e8f0;border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a1f}.dashboard-profile-icon:active:not(:disabled){transform:scale(.95)}.dashboard-profile-icon svg{width:20px;height:20px;stroke-width:2}.dashboard-last-updated{font-size:11px;color:#94a3b8;margin-top:4px}.dashboard-logout{flex:1;min-width:180px;padding:.85rem 1.25rem!important;min-height:48px;background:#ff5252!important;border-radius:999px;font-weight:700;font-size:.9375rem;letter-spacing:.02em;box-shadow:0 2px 10px #ff525247;transition:background .2s ease,transform .15s ease,box-shadow .2s ease}@media (min-width: 600px){.dashboard-logout{flex:0 1 auto;min-width:11rem;max-width:min(100%,20rem);padding-left:2.25rem!important;padding-right:2.25rem!important}}.dashboard-logout:hover:not(:disabled){background:#ef4444!important;box-shadow:0 4px 14px #ef444459}.dashboard-logout:active:not(:disabled){transform:scale(.99)}.dashboard-lead{margin:0 0 clamp(1.25rem,4vw,2rem);font-size:clamp(.95rem,2.2vw,1.05rem);font-weight:300;color:#4b5563;line-height:1.55;max-width:42rem}.dashboard-body-grid{display:grid;gap:clamp(1.25rem,4vw,1.75rem);grid-template-columns:1fr}@media (min-width: 768px){.dashboard-body-grid.has-accounts{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);align-items:start}}.dashboard-cta{border:2px dashed #cbd5e1;border-radius:16px;padding:clamp(1.5rem,5vw,2.25rem);text-align:center;background:#fff;box-shadow:0 2px 12px #0f172a0a}.dashboard-cta-icon{width:48px;height:48px;margin:0 auto 1rem;border-radius:12px;background:#0f172a0f;display:flex;align-items:center;justify-content:center;color:#0f172a}.dashboard-cta h2{margin:0 0 .5rem;font-size:clamp(1.1rem,2.8vw,1.35rem);font-weight:700;color:#000}.dashboard-cta p{margin:0 0 1.25rem;color:#4b5563;font-size:clamp(.9rem,2vw,.95rem);font-weight:300;line-height:1.5}.dashboard-cta-btn{width:100%;max-width:280px;margin:0 auto;display:block;min-height:48px;padding:.85rem 1.5rem!important;border-radius:12px;background:#0f172a!important;font-weight:700;transition:background .2s ease,box-shadow .2s ease}.dashboard-cta-btn:hover:not(:disabled){background:#1e293b!important;box-shadow:0 8px 24px #0f172a33}.dashboard-cta-btn:disabled{opacity:.75}.dashboard-empty{text-align:center;padding:clamp(.5rem,2vw,1rem) 0 0}.dashboard-empty .dashboard-cta{max-width:560px;margin:0 auto}.dashboard-accounts-section{min-width:0}.dashboard-section-title{margin:0 0 1rem;font-size:clamp(1.05rem,2.5vw,1.2rem);font-weight:700;color:#000}.dashboard-account-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 480px){.dashboard-account-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}.dashboard-account-card{border:1px solid #e5e7eb;padding:1.15rem 1.25rem;border-radius:14px;background:#fff;box-shadow:0 4px 16px #0f172a0f;transition:box-shadow .2s ease,border-color .2s ease}.dashboard-account-card:hover{box-shadow:0 8px 28px #0f172a1a;border-color:#cbd5e1}.dashboard-account-name{margin:0 0 .35rem;font-size:1.05rem;font-weight:700;color:#0f172a}.dashboard-account-meta{margin:0;font-size:.85rem;font-weight:300;color:#4b5563;line-height:1.45}.dashboard-account-balance{margin:.85rem 0 0;font-size:1.15rem;font-weight:700;color:#0f172a}.dashboard-balance-label{font-weight:300;font-size:.8rem;color:#4b5563;margin-right:.25rem}.dashboard-error{margin-bottom:1rem}.dashboard-balance-btn{all:unset;color:#000;font-weight:700;font-variant-numeric:tabular-nums;font-size:inherit;line-height:inherit;display:inline-flex;align-items:center;gap:2px}.dashboard-balance-btn--active{cursor:pointer;border-bottom:1px dashed #94a3b8;transition:border-color .15s,color .15s}.dashboard-balance-btn--active:hover{color:#8b1a1a;border-bottom-color:#8b1a1a}.dashboard-account-synced{margin:.45rem 0 0;font-size:.78rem;color:#94a3b8;font-weight:300}.bh-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem;animation:bh-fade-in .18s ease}@keyframes bh-fade-in{0%{opacity:0}to{opacity:1}}.bh-modal{background:#fff;border-radius:20px;width:100%;max-width:640px;padding:clamp(1.25rem,4vw,2rem);box-shadow:0 24px 60px #0f172a38;animation:bh-slide-up .22s cubic-bezier(.33,1,.68,1)}@keyframes bh-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.bh-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.bh-modal-title{margin:0;font-size:clamp(1.1rem,3vw,1.3rem);font-weight:700;color:#0f172a}.bh-close{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:#64748b;transition:background .15s,color .15s}.bh-close:hover{background:#f1f5f9;color:#0f172a}.bh-modal-sub{margin:0 0 1.5rem;font-size:.875rem;color:#64748b;font-weight:300}.bh-loading{text-align:center;padding:2.5rem 0;color:#94a3b8;font-size:.9rem}.dashboard-chart-section{margin-top:clamp(1.5rem,4vw,2.5rem);padding:clamp(1.25rem,4vw,1.75rem);background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 12px #0f172a0a}.dashboard-chart-sub{margin:.2rem 0 1.25rem;font-size:.875rem;color:#64748b;font-weight:300}.balance-chart-wrap{width:100%}.balance-chart-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.5rem 1rem;color:#94a3b8;font-size:.875rem}.chart-legend{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-bottom:1rem}.chart-legend-item{display:flex;align-items:center;gap:.4rem;font-size:.8125rem;color:#374151}.chart-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dashboard-conn-warning{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem;padding:.9rem 1.25rem;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;font-size:.9rem;color:#92400e}.dashboard-conn-reconnect{all:unset;cursor:pointer;padding:.45rem 1.1rem;background:#f97316;color:#fff;border-radius:8px;font-size:.85rem;font-weight:600;white-space:nowrap;transition:background .15s}.dashboard-conn-reconnect:hover:not(:disabled){background:#ea6c0a}.dashboard-conn-reconnect:disabled{opacity:.65}body{font-family:Montserrat,system-ui,-apple-system,sans-serif;font-weight:400;background:#f8f9fa;margin:0;-webkit-font-smoothing:antialiased}input,button,textarea,select{font-family:inherit}.container{max-width:900px;margin:auto;padding:40px}.container h1,.container h2{font-weight:700}.card{background:#fff;padding:30px;border-radius:16px;box-shadow:0 10px 25px #00000014}input{width:100%;padding:14px;margin:10px 0;border-radius:10px;border:1px solid #ddd}button{width:100%;padding:14px;border:none;border-radius:10px;background:#0f172a;color:#fff;font-weight:700;cursor:pointer}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:100%;box-shadow:0 20px 50px #0003;position:relative;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:28px;line-height:1;color:#64748b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:color .2s,background .2s}.modal-close:hover{color:#0f172a;background:#f1f5f9}.modal-title{font-size:22px;font-weight:700;color:#0f172a;margin:0 0 12px}.modal-subtitle{color:#64748b;font-size:15px;font-weight:300;margin:0 0 20px;line-height:1.5}.modal-requirements{margin:0 0 24px;padding-left:20px;color:#334155;line-height:2}.modal-requirements li{margin-bottom:4px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.modal-btn{padding:12px 20px;border-radius:10px;font-weight:600;font-size:15px;cursor:pointer;border:none;transition:opacity .2s}.modal-btn:hover{opacity:.9}.modal-btn-cancel{background:#e2e8f0;color:#475569}.modal-btn-cancel:hover{background:#cbd5e1}.modal-btn-primary{background:#0f172a;color:#fff;font-weight:700}.dashboard-box{border:2px dashed #cbd5e1;padding:60px;border-radius:16px;text-align:center;margin-top:30px}.account-card{background:#fff;padding:20px;border-radius:12px;margin-top:15px;box-shadow:0 6px 15px #0000000d}.auth-container{max-width:400px;margin:50px auto;padding:20px}.auth-card{background:#fff;padding:40px 30px;border-radius:16px;box-shadow:0 10px 25px #00000014;text-align:center}.auth-logo{height:64px;width:auto;object-fit:contain;margin-bottom:20px}.auth-title{font-size:28px;font-weight:700;margin-bottom:30px;color:#0f172a}.auth-form{text-align:left;margin-bottom:20px}.auth-input{width:100%;padding:16px;margin-bottom:16px;border-radius:10px;border:1px solid #ddd;font-size:16px;box-sizing:border-box}.auth-input:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}.password-input-container{position:relative;margin-bottom:16px}.password-toggle{position:absolute;right:16px;top:50%;transform:translateY(-50%);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:#0f172a}.password-toggle svg{width:20px;height:20px}.auth-button{width:100%;padding:16px;border:none;border-radius:10px;background:#0f172a;color:#fff;font-weight:700;font-size:16px;cursor:pointer;margin-bottom:20px;transition:background-color .2s}.auth-button:hover{background:#1e293b}.auth-button:disabled{background:#94a3b8;cursor:not-allowed}.error-message{color:#ef4444;font-size:14px;font-weight:400;margin-bottom:16px;background:#fef2f2;padding:12px;border-radius:8px;border:1px solid #fecaca}.divider{display:flex;align-items:center;margin:30px 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.divider-text{padding:0 16px;color:#64748b;font-size:14px;font-weight:300}.social-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}.social-button{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;font-weight:500;cursor:pointer;transition:all .2s}.social-button:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.facebook-button{background:#1877f2;color:#fff;border-color:#1877f2}.facebook-button:hover{background:#166fe5}.google-button{background:#fff;color:#0f172a;border-color:#e2e8f0}.google-button:hover{background:#f8fafc;border-color:#cbd5e1}.social-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.social-icon svg{width:24px;height:24px;flex-shrink:0}.facebook-button .social-icon{color:#fff}.auth-switch{text-align:center;color:#64748b;font-size:14px;font-weight:300}.auth-link{color:#0f172a;text-decoration:none;font-weight:500}.auth-link:hover{text-decoration:underline}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:9999!important;padding:20px;box-sizing:border-box}.modal-content{background:#fff!important;padding:32px!important;border-radius:16px!important;max-width:500px!important;width:100%!important;max-height:90vh!important;overflow-y:auto!important;position:relative!important;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a!important;margin:0!important}.modal-close{position:absolute!important;top:16px!important;right:16px!important;background:none!important;border:none!important;font-size:24px!important;cursor:pointer!important;color:#64748b!important;width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;padding:0!important;margin:0!important}.modal-close:hover{background:#f1f5f9!important;color:#0f172a!important}.modal-title{font-size:24px!important;font-weight:700!important;margin-bottom:8px!important;color:#0f172a!important}.modal-subtitle{color:#64748b!important;font-weight:300!important;margin-bottom:24px!important;font-size:14px!important}.card-form{display:flex!important;flex-direction:column!important;gap:20px!important;margin:0!important;padding:0!important}.form-group{display:flex!important;flex-direction:column!important;gap:8px!important;margin:0!important;padding:0!important}.form-group label{font-weight:500!important;color:#374151!important;font-size:14px!important;margin:0!important;padding:0!important}.card-input{padding:12px 16px!important;border:1px solid #d1d5db!important;border-radius:8px!important;font-size:16px!important;transition:border-color .2s,box-shadow .2s!important;width:100%!important;box-sizing:border-box!important;margin:0!important}.card-input:focus{outline:none!important;border-color:#0f172a!important;box-shadow:0 0 0 3px #0f172a1a!important}.card-input::placeholder{color:#9ca3af!important}.form-row{display:flex!important;gap:16px!important;margin:0!important;padding:0!important}.form-row .form-group{flex:1!important}.modal-actions{display:flex!important;gap:12px!important;margin-top:24px!important;justify-content:flex-end!important;padding:0!important}.modal-btn{padding:12px 24px!important;border-radius:8px!important;font-weight:500!important;cursor:pointer!important;transition:all .2s!important;border:none!important;font-size:14px!important;margin:0!important}.modal-btn-cancel{background:#f3f4f6!important;color:#374151!important}.modal-btn-cancel:hover{background:#e5e7eb!important}.modal-btn-primary{background:#0f172a!important;color:#fff!important;font-weight:700!important}.modal-btn-primary:hover{background:#1e293b!important}.zakati-auth-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:12000;padding:16px}.zakati-auth-modal{width:100%;max-width:440px;background:#fff;border-radius:12px;padding:22px;border:1px solid #e2e8f0;box-shadow:0 12px 28px #0f172a29}.zakati-auth-modal-title{margin:0 0 10px;color:#0f172a;font-size:32px;line-height:1.2;font-weight:700;font-family:Montserrat,system-ui,-apple-system,sans-serif}.zakati-auth-modal-text{margin:0 0 10px;color:#334155;font-size:17px;line-height:1.45;font-weight:500;font-family:Montserrat,system-ui,-apple-system,sans-serif}.zakati-auth-modal-text-light{color:#64748b}.zakati-auth-modal-actions{margin-top:16px;display:flex;gap:12px}.zakati-auth-modal-btn{flex:1;height:44px;border-radius:8px;font-size:16px;font-weight:600;font-family:Montserrat,system-ui,-apple-system,sans-serif;cursor:pointer}.zakati-auth-modal-btn-secondary{border:1px solid #cbd5e1;background:#fff;color:#334155}.zakati-auth-modal-btn-primary{border:1px solid #0f172a;background:#0f172a;color:#fff}.zakati-auth-modal-btn:disabled{opacity:.8;cursor:not-allowed}.zakati-auth-modal-btn-primary:hover{background:#1e293b}.zakati-auth-modal-btn-secondary:hover{background:#f8fafc}.zakati-auth-extra-form{display:flex;flex-direction:column;gap:12px;margin-top:12px}.zakati-auth-extra-input{margin-bottom:0}.zakati-auth-extra-textarea{width:100%;min-height:96px;padding:14px 16px;border-radius:10px;border:1px solid #ddd;font-size:16px;font-family:Montserrat,system-ui,-apple-system,sans-serif;box-sizing:border-box;resize:vertical}.zakati-auth-extra-textarea:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 2px #0f172a1a}
