:root{color:#071432;background:#f4f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{border:0;cursor:pointer}.login-page{align-items:center;background:linear-gradient(135deg,#061225,#0d4e33);display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid #e2eaf2;border-radius:8px;box-shadow:0 26px 80px #03102647;max-width:430px;padding:32px;width:100%}.brand-lock,.brand-mark{align-items:center;background:linear-gradient(135deg,#19b95f,#0a8b44);border-radius:8px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}h1,h2,h3,p{margin-top:0}.login-panel h1,.topbar h2,.panel h2,.friend-card h3{letter-spacing:0;margin-bottom:0}.login-panel p{color:#53627a}.stack{display:grid;gap:14px}.auth-switch{background:#edf4f0;border-radius:8px;display:grid;gap:6px;grid-template-columns:1fr 1fr;margin:18px 0;padding:5px}.auth-switch button{background:transparent;border-radius:7px;color:#314056;font-weight:800;min-height:38px}.auth-switch button.active{background:#0aa44f;color:#fff}label{color:#4f5f77;display:grid;font-size:.86rem;font-weight:700;gap:6px}input,select{background:#fff;border:1px solid #d8e2ed;border-radius:8px;color:#071432;min-height:42px;padding:9px 11px;width:100%}.primary,.secondary,.ghost,.top-actions button,.sidebar nav button,.panel-head button,.tabs button{align-items:center;border-radius:8px;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:40px;padding:9px 12px}.primary{background:#0aa44f;color:#fff}.secondary{background:#edf3f8;border:1px solid #d9e4ef;color:#273850}.secondary.danger{background:#fff0ef;border-color:#f1b9b2;color:#b9352b}.ghost{background:#ffffff14;color:#e8f3ff;width:100%}.error{background:#fff0ef;border:1px solid #f1b9b2;border-radius:8px;color:#9a2e23;margin:0;padding:10px 12px}.banner{margin-bottom:16px}.loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#061225,#061b33 54%,#041426);color:#fff;display:flex;flex-direction:column;gap:16px;overflow:hidden;padding:18px 14px;position:sticky;top:0;height:100vh}.sidebar-main{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.brand{align-items:center;display:flex;gap:12px;padding:2px 8px 16px;position:relative}.brand-mark{flex:0 0 auto}.brand-home{align-items:center;background:transparent;color:inherit;display:flex;gap:12px;min-width:0;padding:0;text-align:left}.brand-home:hover h1{color:#63e99b}.brand h1{font-size:1.22rem;margin:0}.brand p,.quick-summary span,.profile-chip small{color:#9eb0c6;display:block;font-size:.82rem;margin:0}.sidebar nav{display:grid;flex:1 1 auto;gap:5px;overflow-y:auto;overscroll-behavior:contain;padding:0 4px 18px 0;scrollbar-width:thin}.nav-group{display:grid;gap:4px}.nav-group+.nav-group{border-top:1px solid rgba(255,255,255,.08);margin-top:8px;padding-top:11px}.nav-group-label{color:#71869e;font-size:.63rem;font-weight:900;letter-spacing:.1em;padding:0 10px 3px;text-transform:uppercase}.sidebar nav .nav-group-toggle{background:transparent;border-radius:8px;color:#8fa2b9;font-size:.68rem;font-weight:900;letter-spacing:.075em;min-height:34px;padding:7px 9px;text-transform:uppercase}.sidebar nav .nav-group-toggle:hover{background:#ffffff0e;color:#dce8f5}.nav-group.has-active .nav-group-toggle{color:#41d887}.nav-group-toggle span{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.nav-group-chevron{margin-left:auto;transition:transform .16s ease}.sidebar nav button{background:transparent;color:#e3ecf8;justify-content:flex-start;min-height:38px;padding:8px 10px;width:100%}.sidebar nav button:hover,.sidebar nav button.active{background:linear-gradient(90deg,#12aa55,#069240);color:#fff}.sidebar-footer{border-top:1px solid rgba(255,255,255,.1);display:grid;flex:0 0 auto;gap:12px;padding-top:16px}.quick-summary{border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:14px}.quick-summary p{color:#f4f8ff;font-size:.8rem;font-weight:900;margin-bottom:12px;text-transform:uppercase}.quick-summary strong{color:#25e171;display:block;font-size:.92rem;line-height:1.35;margin:5px 0 14px;overflow-wrap:anywhere}.quick-exchange-rates{border-top:1px solid rgba(255,255,255,.09);display:grid;gap:8px;margin-top:7px;padding-top:10px}.quick-exchange-rates div{align-items:center;display:flex;gap:8px;justify-content:space-between}.quick-exchange-rates div span{color:#9eb0c6;font-size:.72rem;white-space:nowrap}.quick-exchange-rates div strong{color:#dce9f7;font-size:.76rem;margin:0;text-align:right}.nav-backdrop,.sidebar-close{display:none}.sidebar-collapse{align-items:center;background:#fff;border:1px solid #d8e3ee;border-radius:50%;box-shadow:0 4px 12px #020c1b33;color:#17304b;display:inline-flex;height:28px;justify-content:center;position:absolute;right:-28px;top:13px;width:28px;z-index:90}.content{min-width:0;padding:24px 26px 34px}.topbar{align-items:center;background:#ffffffe6;border-bottom:1px solid #e6edf5;display:flex;gap:16px;justify-content:space-between;margin:-24px -26px 24px;padding:18px 26px;position:sticky;top:0;z-index:2}.title-line,.top-actions,.profile-chip{align-items:center;display:flex;gap:14px}.title-line h2{font-size:1.35rem}.top-actions{flex-wrap:nowrap;justify-content:flex-end}.header-tools{flex:0 1 auto}.top-actions button,.currency-select,.panel-head button,.tabs button{background:#fff;border:1px solid #dfe8f2;color:#071432}.currency-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:8px;cursor:pointer;font:inherit;font-size:.88rem;font-weight:800;min-height:38px;padding:8px 25px 8px 10px;min-width:96px;width:96px}.currency-select-wrap{position:relative;width:96px}.currency-select-wrap>svg{color:#263a54;pointer-events:none;position:absolute;right:9px;top:50%;transform:translateY(-50%)}.dark .currency-select-wrap>svg{color:#d8e5f3}.month-button{font-size:.86rem;min-width:92px;padding-left:9px;padding-right:9px;white-space:nowrap}.refresh-button:disabled{cursor:wait;opacity:.65}.spinning{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.icon-button{min-height:38px;padding:8px;width:42px}.notification-center,.notification-trigger{position:relative}.notification-trigger.active{border-color:#0aa44f;color:#0aa44f}.notification-badge{align-items:center;background:#ef3d3d;border:2px solid #fff;border-radius:999px;color:#fff;display:flex;font-size:.62rem;font-weight:900;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:-6px;top:-7px}.notification-panel{background:#fff;border:1px solid #dfe8f2;border-radius:10px;box-shadow:0 22px 60px #04122a33;color:#071432;overflow:hidden;position:absolute;right:0;top:calc(100% + 10px);width:min(380px,calc(100vw - 28px));z-index:20}.notification-panel *{box-sizing:border-box;min-width:0}.notification-head{align-items:center;border-bottom:1px solid #e5edf5;display:flex;justify-content:space-between;padding:14px 16px;gap:12px}.notification-head div,.notification-item>span:last-child{display:grid}.notification-head span,.notification-item small{color:#6c7c92;font-size:.75rem}.notification-head button,.notification-footer{background:transparent;color:#078d43;font-size:.78rem;padding:4px}.notification-list{max-height:360px;overflow-y:auto}.notification-item{align-items:start;background:#fff;border-bottom:1px solid #edf2f7;color:#17243a;display:grid;gap:10px;grid-template-columns:8px 1fr;padding:12px 16px;text-align:left;width:100%}.notification-item strong,.notification-item small{overflow-wrap:anywhere}.notification-item:hover,.notification-item.unread{background:#f1fbf5}.notification-dot{background:transparent;border-radius:50%;height:8px;margin-top:6px;width:8px}.notification-item.unread .notification-dot{background:#0aa44f}.notification-empty{color:#6c7c92;margin:0;padding:24px 16px;text-align:center}.notification-footer{border-top:1px solid #e5edf5;min-height:42px;width:100%}.app-shell,.app-shell .topbar,.app-shell .metric,.app-shell .panel,.app-shell .modal-card,.app-shell input,.app-shell select{transition:background-color .18s ease,border-color .18s ease,color .18s ease}.app-shell.dark{background:#08111f;color:#e5edf7;color-scheme:dark}.dark .content{background:#08111f}.dark .topbar{background:#0a1524f0;border-bottom-color:#26364a}.dark .top-actions button,.dark .currency-select,.dark .panel-head button,.dark .tabs button,.dark input,.dark select,.dark textarea{background:#111d2d;border-color:#304159;color:#e5edf7}.dark .metric,.dark .panel,.dark .friend-card,.dark .action-tile,.dark .modal-card,.dark .notification-panel,.dark .table-wrap,.dark .budget-card,.dark .loan-card,.dark .settings-card,.dark .account-detail,.dark .recurring-card{background:#0f1b2b;border-color:#27384d;box-shadow:0 12px 30px #0000003d;color:#e5edf7}.dark .metric span,.dark .metric strong,.dark .panel h2,.dark .friend-card h3,.dark .category-legend div,.dark table,.dark th,.dark td,.dark label,.dark .payment-row,.dark .client-row,.dark .account-row,.dark .loan-card,.dark .budget-card{color:#e5edf7}.dark .tabs,.dark .empty,.dark .account-row,.dark .payment-row,.dark .client-row,.dark .loan-payment-summary,.dark .budget-card-grid,.dark .loan-amounts{background:#121f30;border-color:#2b3d53}.dark .tabs button:hover,.dark .notification-item:hover,.dark .notification-item.unread{background:#173126;color:#f0f7f3}.dark .notification-panel,.dark .notification-item{background:#0f1b2b;border-color:#27384d;color:#e5edf7}.dark .notification-head,.dark .notification-footer{border-color:#27384d}.dark .notification-head span,.dark .notification-item small,.dark .notification-empty,.dark .profile-chip small,.dark .panel p,.dark .friend-card p{color:#9fb0c4}.dark .notification-badge{border-color:#0f1b2b}.dark .profile-chip span{background:#20354e;color:#dcecff}.dark thead,.dark th{background:#142337}.dark td,.dark th{border-color:#27384d}.dark .recharts-text{fill:#aebed0}.dark .recharts-cartesian-grid line{stroke:#304159}.dark .recharts-default-tooltip{background:#0f1b2b!important;border-color:#304159!important;color:#e5edf7!important}.dark .settings-account-groups section,.dark .settings-account-section,.dark .settings-account-chips span,.dark .selected-balance,.dark .loan-amounts div,.dark .loan-payment-summary,.dark .budget-card-grid div,.dark .payment-row,.dark .compact-row,.dark .account-row,.dark .client-row,.dark .account-picker,.dark .form-message{background:#121f30;border-color:#2b3d53;color:#e5edf7}.dark .settings-account-groups h3,.dark .settings-account-section h4,.dark .settings-account-chips span,.dark .selected-balance strong,.dark .loan-card h3,.dark .loan-amounts strong,.dark .loan-payment-summary strong,.dark .budget-card-grid strong,.dark .payment-row strong,.dark .client-row strong{color:#e5edf7}.dark .settings-account-groups h3,.dark .settings-account-section,.dark .settings-account-groups section{border-color:#2b3d53}.dark .settings-empty,.dark .selected-balance span,.dark .loan-card p,.dark .loan-amounts span,.dark .loan-payment-summary span,.dark .budget-card-grid span,.dark .payment-row span,.dark .payment-amount span:not(.paid-badge){color:#9fb0c4}.dark .mini-actions button,.dark .row-actions button,.dark .secondary{background:#152438;border-color:#344a64;color:#dcecff}.dark .payment-row:hover{background:#16263a;border-color:#3b526d}.dark .payment-row.paid-row{background:#10271f;border-color:#25513d}.dark tbody tr:hover,.dark tbody tr.selected{background:#16263a}.menu-button{display:none}.profile-chip span{align-items:center;background:#d8e8ff;border-radius:50%;color:#123c69;display:flex;font-weight:900;height:34px;justify-content:center;width:34px}.profile-chip strong{display:block;font-size:.9rem}.metric-grid{display:grid;gap:16px;margin-bottom:18px}.metric-grid.six,.metric-grid.summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid.currency-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.metric,.panel,.friend-card,.action-tile{background:#fff;border:1px solid #e4ebf3;border-radius:8px;box-shadow:0 10px 28px #0714320f}.metric{display:grid;gap:9px;min-height:150px;padding:20px}.summary-metrics .metric{border-top:3px solid #15ad59;min-height:158px}.summary-metrics .metric:nth-child(2){border-top-color:#357fdb}.summary-metrics .metric:nth-child(3){border-top-color:#ef4c4c}.currency-metrics .metric{min-height:138px}.metric:hover{box-shadow:0 16px 36px #0714321a;transform:translateY(-2px)}.metric{transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}.metric-icon,.round-icon{align-items:center;border-radius:8px;display:inline-flex;height:42px;justify-content:center;width:42px}.metric-icon.green,.color-0{background:#d9f7e4;color:#0aa44f}.metric-icon.blue,.color-1{background:#e3efff;color:#2878db}.metric-icon.red,.color-2{background:#ffe6e6;color:#ef3d3d}.metric-icon.amber,.color-3{background:#fff2d6;color:#e59300}.metric-icon.purple,.color-4{background:#efe4ff;color:#864ee8}.metric-icon.orange{background:#fff0de;color:#f27d12}.metric span{color:#30425c;font-size:.88rem;font-weight:800}.metric strong{color:#061225;font-size:1.15rem;overflow-wrap:anywhere}.metric small{color:#0aa44f;font-weight:700}.dashboard-main,.dashboard-lower{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.dashboard-transactions-fab{align-items:center;background:#0aa44f;border:2px solid #fff;border-radius:50%;bottom:28px;box-shadow:0 12px 28px #065c2d52;color:#fff;display:inline-flex;height:58px;justify-content:center;position:fixed;right:28px;transition:background .14s ease,box-shadow .14s ease,transform .14s ease;width:58px;z-index:10}.dashboard-transactions-fab:hover{background:#078b42;box-shadow:0 15px 34px #065c2d66;transform:translateY(-2px)}.dashboard-transactions-fab:focus-visible{outline:3px solid rgba(47,125,225,.45);outline-offset:3px}.dashboard-transactions-fab svg{height:28px;stroke-width:2.5;width:28px}.analytics-page{display:grid;gap:18px}.report-comparison-header{align-items:center;background:linear-gradient(125deg,#07172a,#0a3b2a);border-radius:14px;color:#fff;display:flex;gap:24px;justify-content:space-between;margin-bottom:18px;overflow:hidden;padding:24px 28px;position:relative}.report-comparison-header:after{background:radial-gradient(circle,rgba(37,225,113,.2),transparent 68%);content:"";height:220px;position:absolute;right:-60px;top:-90px;width:220px}.report-comparison-header h2{font-size:1.45rem;margin:7px 0 5px}.report-comparison-header p{color:#b9c8d8;margin:0}.ai-report-badge{background:#25e17124;border:1px solid rgba(74,232,137,.32);border-radius:999px;color:#63e99b;display:inline-flex;font-size:.72rem;font-weight:900;letter-spacing:.06em;padding:5px 9px;text-transform:uppercase}.report-health-score{align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:12px;display:grid;flex:0 0 auto;justify-items:center;min-width:116px;padding:13px;position:relative;z-index:1}.report-header-actions{align-items:center;display:flex;flex:0 0 auto;gap:12px;position:relative;z-index:2}.report-download-button{background:#fff;border-radius:9px;color:#087c3d;font-size:.82rem;font-weight:900;min-height:42px;padding:10px 14px}.report-download-button:hover{background:#eafaf1;transform:translateY(-1px)}.report-download-button:disabled{cursor:wait;opacity:.72;transform:none}.report-health-score strong{color:#64e99c;font-size:1.8rem;line-height:1}.report-health-score.warning strong{color:#ffb65c}.report-health-score.neutral strong{color:#7fc1ff}.report-health-score span{color:#b9c8d8;font-size:.72rem;margin-top:5px}.report-metrics{margin-bottom:18px}.professional-report-page{display:grid;gap:18px}.professional-report-page .report-comparison-header,.professional-report-page .report-metrics{margin-bottom:0}.report-mode-switch{align-items:center;background:#e9eff5;border-radius:12px;display:flex;gap:4px;padding:4px;width:fit-content}.report-mode-switch button{background:transparent;border-radius:9px;color:#617188;font-size:.8rem;font-weight:800;padding:9px 15px}.report-mode-switch button.active{background:#fff;box-shadow:0 3px 10px #0714321a;color:#079849}.dark .report-mode-switch{background:#18283b}.dark .report-mode-switch button.active{background:#26384e;color:#58d68d}.report-filter-bar{align-items:end;display:flex;justify-content:space-between;padding:15px 18px}.report-filter-summary{align-items:flex-end;display:grid;justify-items:end}.report-filter-summary span{color:#74849a;font-size:.7rem;font-weight:800;text-transform:uppercase}.report-filter-summary strong{color:#071432;font-size:1rem}.report-filter-summary small{color:#d33f3f;font-size:.74rem;margin-top:4px}.report-date-rule{color:#74849a;flex:1 1 220px;font-size:.72rem;line-height:1.45;margin:0 10px;max-width:300px}.report-date-comparison{align-items:end;display:flex;flex-wrap:wrap;gap:12px}.report-date-comparison fieldset{border:1px solid #dce6ef;border-radius:10px;display:flex;gap:9px;margin:0;padding:8px 10px 10px}.report-date-inputs{display:flex;gap:9px}.mobile-range-picker{display:none}.report-date-comparison legend{color:#52647c;font-size:.72rem;font-weight:900;padding:0 5px}.report-date-comparison label{min-width:138px}.report-date-comparison input{min-height:38px}.report-compare-divider{align-items:center;background:#e9f8ef;border-radius:50%;color:#0a9147;display:flex;font-size:.7rem;font-weight:900;height:31px;justify-content:center;margin-bottom:5px;width:31px}.report-compare-button{margin-bottom:1px;min-height:42px;white-space:nowrap}.dark .report-date-comparison fieldset{border-color:#304159}.dark .report-date-comparison legend{color:#aebed0}.report-stat-strip{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.report-export-coverage{background:linear-gradient(100deg,#eefaf3,#f5f9fd);border:1px solid #d5e9de;border-radius:11px;display:grid;gap:1px;grid-template-columns:1.4fr .6fr;overflow:hidden}.report-export-coverage>div{display:grid;gap:3px;padding:13px 16px}.report-export-coverage>div+div{border-left:1px solid #d5e9de}.report-export-coverage span{color:#0a9147;font-size:.66rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.report-export-coverage strong{color:#20314a;font-size:.78rem;line-height:1.45}.dark .report-export-coverage{background:#10271f;border-color:#25513d}.dark .report-export-coverage>div+div{border-color:#25513d}.dark .report-export-coverage strong{color:#d8e6df}.report-stat-strip article{background:#fff;border:1px solid #dfe7f0;border-radius:11px;box-shadow:0 1px 2px #0714260a;display:grid;gap:4px;padding:15px 17px}.report-stat-strip span,.report-stat-strip small{color:#718198;font-size:.76rem}.report-stat-strip strong{color:#071432;font-size:1.05rem;overflow-wrap:anywhere}.report-feature-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}.report-feature-grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.report-commitment-stats{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.report-commitment-stats article{background:#f7fafc;border:1px solid #e2eaf2;border-radius:10px;display:grid;gap:7px;padding:16px}.report-commitment-stats span{color:#718198;font-size:.76rem}.report-commitment-stats strong{color:#071432;font-size:1rem;overflow-wrap:anywhere}.dark .report-filter-summary strong,.dark .report-stat-strip strong,.dark .report-commitment-stats strong{color:#e5edf7}.dark .report-stat-strip article,.dark .report-commitment-stats article{background:#121f30;border-color:#2b3d53}.ai-report-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.ai-analysis-pulse{background:linear-gradient(120deg,#07172a,#0b3428);border-radius:11px;display:grid;gap:1px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px;overflow:hidden}.ai-analysis-pulse article{background:#ffffff09;display:grid;gap:3px;padding:16px 18px}.ai-analysis-pulse span,.ai-analysis-pulse small{color:#9eb2c7;font-size:.72rem}.ai-analysis-pulse strong{color:#5ce396;font-size:1.25rem}.ai-report-grid article{background:#f8fafc;border:1px solid #e2eaf2;border-left:4px solid #91a2b8;border-radius:10px;padding:16px}.ai-report-grid article.positive{background:#f1fbf5;border-color:#bee8cf;border-left-color:#12a957}.ai-report-grid article.warning{background:#fff8ef;border-color:#f0d9b5;border-left-color:#ed8b25}.ai-report-grid article>span{color:#6d7d92;font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.ai-report-grid h3{color:#071432;font-size:1rem;margin:6px 0}.ai-report-grid p{color:#53657d;font-size:.86rem;line-height:1.6;margin:0}.ai-recommendations{background:#f5f9fc;border-radius:10px;margin-top:14px;padding:16px 18px}.ai-recommendations-head{align-items:end;display:flex;justify-content:space-between;margin-bottom:12px}.ai-recommendations-head span{color:#0a9147;font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.ai-recommendations-head h3{font-size:1rem;margin:2px 0 0}.ai-recommendations-head small{color:#77879c}.ai-recommendation-list{display:grid;gap:9px}.ai-recommendation-list article{align-items:center;background:#fff;border:1px solid #dfe7f0;border-radius:10px;display:grid;gap:12px;grid-template-columns:38px minmax(0,1fr) minmax(130px,.3fr);padding:13px 15px}.recommendation-rank{align-items:center;background:#eaf8f0;border-radius:9px;color:#078f46;display:flex;font-size:.76rem;font-weight:900;height:36px;justify-content:center;width:36px}.recommendation-priority{border-radius:999px;color:#167449;display:inline-flex;font-size:.62rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.recommendation-priority.high{color:#d54736}.recommendation-priority.opportunity{color:#7650d6}.recommendation-priority.data{color:#2878db}.ai-recommendation-list h4{color:#071432;font-size:.9rem;margin:3px 0}.ai-recommendation-list p{color:#607188;font-size:.8rem;margin:0}.ai-recommendation-list article>strong{color:#16854d;font-size:.78rem;text-align:right}.dark .ai-report-grid article,.dark .ai-recommendations{background:#121f30;border-color:#2b3d53}.dark .ai-recommendation-list article{background:#0f1b2b;border-color:#2b3d53}.dark .ai-recommendation-list h4{color:#e5edf7}.dark .ai-recommendation-list p{color:#9fb0c4}.dark .ai-report-grid article.positive{background:#10271f;border-color:#25513d}.dark .ai-report-grid article.warning{background:#30261a;border-color:#59462a}.dark .ai-report-grid h3{color:#e5edf7}.dark .ai-report-grid p{color:#aab9ca}.analytics-toolbar{display:grid;gap:18px;padding:20px}.analytics-toolbar-head{align-items:end;border-bottom:1px solid #e3ebf3;display:flex;justify-content:space-between;padding-bottom:15px}.analytics-toolbar-head span{color:#09964a;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.analytics-toolbar-head h2{color:#071432;font-size:1.1rem;margin:3px 0 0}.analytics-toolbar-head p{color:#718198;font-size:.78rem;margin:0}.analytics-toolbar-body{align-items:end;display:flex;gap:14px;justify-content:space-between}.analytics-filter-group,.analytics-actions{align-items:end;display:flex;flex-wrap:wrap;gap:10px}.analytics-filter-group label{min-width:150px}.analytics-filter-group select,.analytics-filter-group input{min-height:40px}.analytics-pdf-button{box-shadow:0 8px 18px #0aa44f2e;white-space:nowrap}.dark .analytics-toolbar-head{border-color:#2b3d53}.dark .analytics-toolbar-head h2{color:#e5edf7}.analytics-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-primary-grid,.analytics-secondary-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr)}.analytics-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-highlights{align-items:center;display:flex;gap:24px}.analytics-chart-highlights span{display:grid;gap:1px;text-align:right}.analytics-chart-highlights strong{color:#071432;font-size:.9rem}.analytics-chart-highlights small{color:#687991;font-size:.7rem;font-weight:800}.analytics-chart-highlights span:first-child small{color:#2f7de1}.analytics-chart-highlights span:last-child small{color:#0cae88}.interactive-chart-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;padding-top:6px}.interactive-chart-legend button{align-items:center;background:transparent;color:#40526b;display:inline-flex;font-size:.82rem;gap:6px;padding:4px}.interactive-chart-legend button:hover{color:#071432}.interactive-chart-legend button.muted{opacity:.38;text-decoration:line-through}.interactive-chart-legend i{border-radius:3px;display:inline-block;height:10px;width:18px}.dark .interactive-chart-legend button{color:#c4d1df}.dark .analytics-chart-highlights strong{color:#e5edf7}.analytics-budget-list{display:grid;gap:16px}.top-expense-categories{display:grid;gap:10px;padding:16px 18px 18px}.top-expense-categories article{align-items:center;background:#f8fafc;border:1px solid #e3ebf3;border-radius:10px;display:grid;gap:8px 12px;grid-template-columns:34px minmax(0,1fr) auto;padding:11px 13px}.top-expense-rank{align-items:center;background:#e9f8ef;border-radius:9px;color:#09964a;display:flex;font-size:.82rem;font-weight:900;height:32px;justify-content:center;width:32px}.top-expense-categories article>div:nth-child(2){display:grid}.top-expense-categories strong{color:#071432;font-size:.86rem}.top-expense-categories small{color:#718198;font-size:.72rem}.top-expense-categories b{color:#15243b;font-size:.82rem}.top-expense-bar{background:#e7edf4;border-radius:999px;grid-column:2 / -1;height:6px;overflow:hidden}.top-expense-bar span{background:linear-gradient(90deg,#ff6b55,#f4a13b);border-radius:inherit;display:block;height:100%}.dark .top-expense-categories article{background:#111e2e;border-color:#2b3d53}.dark .top-expense-categories strong,.dark .top-expense-categories b{color:#e5edf7}.analytics-budget-row{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(130px,.7fr) minmax(120px,1fr) 48px}.analytics-budget-row div:first-child{display:grid;gap:2px}.analytics-budget-row span,.analytics-insight-grid span,.analytics-insight-grid small,.analytics-period-label{color:#687991;font-size:.8rem}.analytics-progress{background:#e8eef5;border-radius:999px;height:9px;overflow:hidden}.analytics-progress span{background:linear-gradient(90deg,#12a957,#37c779);border-radius:inherit;display:block;height:100%;min-width:2px}.analytics-progress span.over{background:#ff5454}.analytics-budget-row b{color:#13834a;font-size:.86rem;text-align:right}.analytics-budget-row b.negative{color:#d83d3d}.analytics-insights{padding:0}.analytics-insight-grid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr));padding:18px}.analytics-insight-grid article{background:#f7fafc;border:1px solid #e2eaf2;border-radius:10px;display:grid;gap:7px;min-height:118px;padding:15px}.analytics-insight-grid article.positive{background:#f0fbf5;border-color:#c9ecd8}.analytics-insight-grid article.warning{background:#fff8ee;border-color:#f2ddbb}.analytics-insight-grid strong{color:#071432;font-size:1rem;line-height:1.35}.dark .analytics-progress{background:#26384d}.dark .analytics-insight-grid article{background:#121f30;border-color:#2b3d53}.dark .analytics-insight-grid article.positive{background:#10271f;border-color:#25513d}.dark .analytics-insight-grid article.warning{background:#30261a;border-color:#59462a}.dark .analytics-insight-grid strong{color:#e5edf7}.transaction-toolbar{margin-bottom:16px}.tabs{background:#f8fbfe;border:1px solid #d9e5f1;border-radius:8px;box-shadow:inset 0 1px #ffffffd9;display:flex;gap:4px;overflow-x:auto;padding:5px;scrollbar-width:thin}.tabs button{background:transparent;border:1px solid transparent;color:#40526b;flex:0 0 auto;font-size:.9rem;min-height:34px;padding:7px 13px;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.tabs button:hover{background:#eef5fb;color:#071432}.tabs button.active{background:#0aa44f;border-color:#0aa44f;box-shadow:0 8px 18px #0aa44f2e;color:#fff}.compact-tabs{margin-bottom:14px;width:fit-content}.workspace-grid{display:grid;gap:16px;grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);margin-bottom:16px}.wide-grid{display:grid;gap:16px;grid-template-columns:1fr;margin-bottom:16px}.panel{min-width:0;padding:18px}.panel-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.panel h2{font-size:1rem}.panel-head button{color:#0b9b4e;font-size:.78rem;min-height:34px;padding:7px 12px}.modal-backdrop{align-items:center;background:#07132b85;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:22px;position:fixed;z-index:60}.modal-card{background:#fff;border:1px solid #dfe8f2;border-radius:8px;box-shadow:0 24px 70px #07132b38;max-height:min(780px,calc(100vh - 44px));max-width:920px;overflow:auto;padding:18px;width:min(920px,100%)}.modal-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.modal-head h2{font-size:1rem}.daily-reminder-intro{color:#65758c;margin:-4px 0 14px}.daily-reminder-list{display:grid;gap:10px}.daily-reminder-item{align-items:center;background:#f7fbf9;border:1px solid #dcefe4;border-radius:10px;display:grid;gap:12px;grid-template-columns:40px minmax(0,1fr) auto;padding:12px}.daily-reminder-icon{align-items:center;background:#dcf6e7;border-radius:9px;color:#079548;display:flex;height:40px;justify-content:center;width:40px}.daily-reminder-item>div:nth-child(2){display:grid;gap:3px}.daily-reminder-item span{color:#65758c;font-size:.8rem}.daily-reminder-item small{background:#fff0cf;border-radius:999px;color:#956100;font-size:.72rem;font-weight:900;padding:5px 9px;white-space:nowrap}.daily-reminder-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.dark .daily-reminder-intro,.dark .daily-reminder-item span{color:#9fb0c4}.dark .daily-reminder-item{background:#11281f;border-color:#24513c}.dark .daily-reminder-icon{background:#183c2c;color:#55d98f}.dark .daily-reminder-item small{background:#3d321b;color:#ffd477}.donut-layout{align-items:center;display:flex;gap:10px}.donut-chart{flex:0 0 46%;min-width:0}.category-legend{display:grid;flex:1;gap:10px}.category-legend div{align-items:center;color:#253750;display:grid;font-size:.84rem;gap:8px;grid-template-columns:10px 1fr auto}.category-legend span{border-radius:3px;height:9px;width:9px}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:1 / -1}.check{align-items:center;display:flex;flex-direction:row;gap:9px;min-height:42px}.check input{min-height:auto;width:18px}.currency-checks{border:1px solid #d9e4ef;border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));padding:10px}.account-picker{display:grid;gap:8px}.account-picker span{color:#506179;font-weight:800}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:680px;width:100%}th,td{border-bottom:1px solid #e5edf5;padding:11px 8px;text-align:left;vertical-align:middle}th{color:#506179;font-size:.77rem;text-transform:uppercase}td{color:#14243d;font-size:.88rem}tfoot td{background:#f8fbfd;border-bottom:0;color:#07132b}.subtotal-row td{background:#f6faf8;color:#07132b;font-weight:900}.account-balance-wrap table{min-width:760px}.account-balance-wrap td:not(:first-child),.account-balance-wrap th:not(:first-child){white-space:nowrap}.account-group-row td{background:#eef5fb;color:#304159;font-size:.74rem;font-weight:900;letter-spacing:0;padding:9px 8px;text-transform:uppercase}.clickable-row{cursor:pointer}.clickable-row:hover,.selected-row{background:#f0faf4}.row-actions{display:flex;gap:6px;justify-content:flex-end;margin-top:2px}.row-actions button{background:#fff;border:1px solid #dfe8f2;border-radius:8px;color:#0b8d48;font-size:.72rem;font-weight:800;min-height:28px;padding:4px 8px}.row-actions button.danger{border-color:#f1b9b2;color:#b9352b}.row-actions button:hover{background:#eef5fb}.row-actions button.danger:hover{background:#fff0ef}.table-name,.account-row span,.compact-row span,.client-row{align-items:center;display:inline-flex;gap:8px}.table-account-cell{display:grid;gap:7px}.muted-tag{background:#edf3f8;border-radius:999px;color:#64748b;font-size:.68rem;font-weight:800;padding:2px 7px;text-transform:uppercase}.payment-list,.compact-list,.account-list,.loan-register,.budget-list{display:grid;gap:10px}.loan-register{gap:12px}.loan-card{border:1px solid #e2ebf4;border-radius:8px;display:grid;gap:12px;padding:14px}.loan-card-head,.loan-title-row{align-items:center;display:flex;gap:12px;justify-content:space-between;width:100%}.loan-title-copy{min-width:0}.loan-status-stack{align-items:center;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:6px;justify-content:flex-end}.due-pill{background:#ffe6e6;border-radius:999px;color:#db3232;font-size:.78rem;font-weight:800;padding:5px 10px;white-space:nowrap}.loan-card h3{color:#071432;font-size:1rem;margin:0 0 4px}.loan-card p{color:#65758c;font-size:.82rem;margin:0}.loan-amounts{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.loan-amounts div{background:#f8fbfd;border:1px solid #edf2f7;border-radius:8px;display:grid;gap:4px;padding:10px}.loan-amounts span{color:#65758c;font-size:.74rem;font-weight:900}.loan-amounts strong{color:#071432;font-size:.86rem}.loan-payment-summary{background:#f7fafc;border:1px solid #dfe8f2;border-radius:8px;display:grid;gap:8px;padding:12px}.loan-payment-summary div{align-items:center;display:flex;justify-content:space-between}.loan-payment-summary span{color:#65758c;font-size:.82rem;font-weight:800}.loan-payment-summary strong{color:#071432}.mini-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin-top:2px}.mini-actions button{background:#fff;border:1px solid #dfe8f2;border-radius:8px;color:#0b8d48;font-size:.76rem;font-weight:800;min-height:32px;padding:5px 9px;white-space:nowrap}.mini-actions button.danger{border-color:#f1b9b2;color:#b9352b}.mini-actions button.danger:hover{background:#fff0ef}.settings-account-groups{display:grid;gap:14px}.category-settings{display:grid;gap:16px}.category-settings>p{color:#64758b;font-size:.8rem;margin:0}.category-add-form{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.category-add-form button{min-height:42px}.category-settings-group{display:grid;gap:8px}.category-settings-group>span{color:#52647c;font-size:.7rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.category-settings-chips{display:flex;flex-wrap:wrap;gap:7px}.category-settings-chips>span{align-items:center;background:#eef3f8;border-radius:999px;color:#34465d;display:inline-flex;font-size:.75rem;font-weight:750;gap:5px;padding:6px 10px}.category-settings-chips>span.custom{background:#e8f8ef;color:#087a3d}.category-settings-chips button{align-items:center;background:#087a3d1a;border-radius:50%;color:inherit;display:flex;height:19px;justify-content:center;padding:0;width:19px}.category-settings-chips small{color:#8290a3}.dark .category-settings-chips>span{background:#203148;color:#c5d2e2}.dark .category-settings-chips>span.custom{background:#143726;color:#6de3a4}@media(max-width:720px){.category-add-form{grid-template-columns:1fr}.category-add-form button{width:100%}.top-expense-categories article{grid-template-columns:34px minmax(0,1fr)}.top-expense-categories b,.top-expense-bar{grid-column:2}}.settings-account-groups section{background:#fff;border:1px solid #e2ebf4;border-radius:8px;display:grid;gap:10px;padding:12px}.settings-account-groups h3,.settings-account-section h4{color:#071432;margin:0}.settings-account-groups h3{align-items:center;border-bottom:1px solid #edf2f7;display:flex;font-size:.9rem;gap:8px;padding-bottom:9px}.settings-account-section{background:#f8fbfd;border:1px solid #edf2f7;border-radius:8px;display:grid;gap:9px;padding:10px}.settings-account-section h4{color:#52647c;font-size:.74rem;letter-spacing:0;text-transform:uppercase}.settings-account-chips{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(135px,1fr))}.settings-account-chips span{align-items:center;background:#fff;border:1px solid #dfe8f2;border-radius:8px;color:#071432;display:flex;gap:6px;font-size:.8rem;font-weight:800;min-height:36px;padding:8px 10px}.settings-account-chips span svg{color:#0b8d48;flex:0 0 auto}.friend-chips span svg{color:#2f7de1}.settings-empty{color:#65758c;font-size:.82rem;font-weight:800;margin:0}.account-detail{display:grid;gap:16px}.account-detail-head{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(220px,320px) 1fr}.selected-balance{background:#f7fafd;border:1px solid #dce7f2;border-radius:8px;display:grid;gap:4px;padding:12px 14px}.selected-balance span{color:#667792;font-size:.82rem;font-weight:800}.selected-balance strong{color:#071432;overflow-wrap:anywhere}.payment-row,.compact-row,.account-row,.client-row{align-items:center;border-bottom:1px solid #e8eef5;display:grid;gap:10px;padding:8px 0}.payment-row{background:#fff;border:1px solid #e2ebf4;border-radius:8px;box-shadow:0 10px 26px #0f20380a;grid-template-columns:52px minmax(0,1fr) minmax(180px,auto);padding:14px;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}.exchange-rate-row{grid-template-columns:minmax(110px,1fr) repeat(2,minmax(90px,.55fr))}.exchange-rate-row>div{display:grid;gap:2px;justify-items:end}.exchange-rate-row small{color:#718198;font-size:.68rem}.exchange-rate-row strong{color:#071432}.dark .exchange-rate-row strong{color:#e5edf7}.payment-row:hover{border-color:#cfddea;box-shadow:0 14px 34px #0f203812;transform:translateY(-1px)}.payment-row strong,.client-row strong{color:#071432;font-size:.95rem}.payment-row span,.payment-amount span{color:#6a7890;display:block;font-size:.82rem}.payment-amount{align-items:flex-end;display:grid;gap:7px;justify-items:end;text-align:right}.payment-amount strong{font-size:1rem;line-height:1.1}.payment-amount span{background:#ffe6e6;border-radius:999px;color:#db3232;margin-top:5px;padding:3px 8px}.payment-row.paid-row{background:#f8fcfa;border-color:#d9f1e3;border-radius:8px}.payment-amount span.paid-badge{background:#dff8e9;color:#07873f}.payment-actions{display:flex;flex-wrap:wrap;gap:7px;justify-items:end;justify-content:flex-end;margin-top:2px}.payment-amount button{background:#fff;border:1px solid #dfe8f2;border-radius:8px;color:#0b8d48;font-size:.74rem;font-weight:900;min-height:30px;padding:5px 9px}.payment-amount button:hover{background:#f4fbf7;border-color:#bfe8cf}.payment-amount button.danger{border-color:#f1b9b2;color:#b9352b}.payment-amount button.danger:hover{background:#fff5f4;border-color:#ec9c93}.client-row{grid-template-columns:auto 1fr auto}.avatar{align-items:center;border-radius:50%;display:inline-flex;font-weight:900;height:34px;justify-content:center;width:34px}.positive-pill,.negative-pill{border-radius:999px;font-size:.8rem;padding:5px 9px}.positive-pill{background:#dff7e8;color:#07863d}.negative-pill{background:#ffe5e5;color:#d72f2f}.budget-card{border:1px solid #e2ebf4;border-radius:8px;display:grid;gap:12px;padding:14px}.budget-card-head{align-items:start;display:flex;gap:12px;justify-content:space-between}.budget-card h3{color:#071432;font-size:1rem;margin:0 0 4px}.budget-card p{color:#65758c;font-size:.82rem;margin:0}.budget-state{background:#e8f7ee;border-radius:999px;color:#078640;font-size:.74rem;font-weight:900;padding:5px 9px;white-space:nowrap}.budget-state.warning{background:#fff4d8;color:#9a6500}.budget-state.exceeded{background:#ffe5e5;color:#d72f2f}.budget-card-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.budget-card-grid div{background:#f8fbfd;border:1px solid #edf2f7;border-radius:8px;display:grid;gap:4px;padding:10px}.budget-card-grid span{color:#65758c;font-size:.74rem;font-weight:900}.budget-card-grid strong{color:#071432;font-size:.86rem}.budget-progress-line{align-items:center;display:grid;gap:10px;grid-template-columns:1fr auto}.budget-progress-line em{color:#52647c;font-size:.78rem;font-style:normal;font-weight:900}.progress{background:#e7edf4;border-radius:999px;height:7px;overflow:hidden}.progress i{background:#0aa44f;display:block;height:100%}.progress i.hot{background:#f4a000}.friend-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.friend-card{display:grid;gap:8px;padding:18px}.friend-card p{color:#53647d;font-weight:800;margin:0;overflow-wrap:anywhere}.quick-actions{display:grid;gap:14px;grid-template-columns:repeat(7,minmax(0,1fr))}.action-tile{align-items:center;color:#071432;display:grid;font-weight:800;gap:12px;justify-items:center;min-height:120px;padding:18px}.status{background:#edf2f7;border-radius:999px;color:#33435a;display:inline-flex;font-size:.78rem;font-weight:800;padding:4px 8px}.status.pending,.status.overdue,.status.paid{background:#ffe6e6;color:#d72f2f}.status.received{background:#def7e8;color:#07863d}.empty{background:#f7fafd;border:1px dashed #cbd9e8;border-radius:8px;color:#667792;margin:0;padding:18px}.form-message{background:#f0faf4;border:1px solid #bfe8cf;border-radius:8px;color:#0c7c3a;font-weight:800;margin:0;padding:10px 12px}@media(max-width:1400px){.metric-grid.six,.metric-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-main,.dashboard-lower{grid-template-columns:1fr 1fr}.quick-actions{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-grid.currency-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{border-radius:0 16px 16px 0;box-shadow:26px 0 70px #020b1a59;height:100dvh;left:0;max-width:min(86vw,320px);position:fixed;top:0;transform:translate(-105%);transition:transform .18s ease;width:320px;-webkit-overflow-scrolling:touch;isolation:isolate;z-index:80}.nav-open .sidebar{transform:translate(0)}.nav-backdrop{background:#020a1885;bottom:0;display:block;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .18s ease;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:70}.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.sidebar-close{align-items:center;background:#ffffff14;border-radius:8px;color:#fff;display:inline-flex;height:38px;justify-content:center;margin-left:auto;width:38px}.sidebar-collapse{display:none}.sidebar nav{padding-bottom:20px}.menu-button{display:inline-flex}.dashboard-main,.dashboard-lower,.workspace-grid,.friend-grid{grid-template-columns:1fr}.metric-grid.summary-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-primary-grid,.analytics-secondary-grid{grid-template-columns:1fr}.analytics-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-feature-grid,.report-feature-grid.equal{grid-template-columns:1fr}.report-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.content{padding:14px}.dashboard-transactions-fab{bottom:max(18px,env(safe-area-inset-bottom));right:18px}.analytics-page{gap:12px}.report-comparison-header{align-items:flex-start;flex-direction:column;padding:20px}.report-mode-switch{display:grid;grid-template-columns:1fr 1fr;width:100%}.report-filter-bar{align-items:stretch;flex-direction:column;gap:12px}.report-date-rule{margin:0;max-width:none}.report-date-comparison,.report-date-comparison fieldset{align-items:stretch;flex-direction:column;width:100%}.report-date-inputs{display:none}.mobile-range-picker{display:block;width:100%}.mobile-range-trigger{align-items:center;background:#f8fbfd;border:1px solid #d8e4ef;border-radius:10px;color:#071432;display:grid;gap:7px;grid-template-columns:1fr auto 1fr;padding:11px 12px;width:100%}.mobile-range-trigger>span:not(.range-arrow){display:grid;gap:2px;text-align:left}.mobile-range-trigger>span:last-child{text-align:right}.mobile-range-trigger small{color:#718198;font-size:.64rem;font-weight:800;text-transform:uppercase}.mobile-range-trigger strong{font-size:.78rem;white-space:nowrap}.range-arrow{color:#0a9d4c;font-weight:900}.mobile-calendar-card{background:#fff;border:1px solid #dce7f0;border-radius:12px;box-shadow:0 16px 35px #0714261f;margin-top:9px;overflow:hidden;padding:10px 8px 8px;width:100%}.mobile-calendar-card>p{color:#65758c;font-size:.72rem;margin:7px 6px 9px;text-align:center}.range-calendar-head{align-items:center;display:grid;grid-template-columns:34px 1fr 34px}.range-calendar-head strong{color:#071432;font-size:.92rem;text-align:center}.range-calendar-head button{align-items:center;background:#eef8f2;border-radius:8px;color:#0a9d4c;display:flex;font-size:1.4rem;height:34px;justify-content:center;padding:0;width:34px}.range-calendar-weekdays,.range-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.range-calendar-weekdays{border-bottom:1px solid #e5edf5;color:#8492a5;font-size:.68rem;font-weight:800;padding-bottom:5px;text-align:center}.range-calendar-grid{gap:2px 0;padding-top:5px}.range-calendar-grid button{aspect-ratio:1;background:transparent;border-radius:8px;color:#172941;font-size:.75rem;max-height:38px;min-width:0;padding:0;width:100%}.range-calendar-grid button.outside{color:#b2bdca}.range-calendar-grid button.in-range{background:#dff7e9;border-radius:0;color:#11663b;font-weight:800}.range-calendar-grid button.endpoint{background:#0aa44f;border-radius:50%;color:#fff}.range-calendar-grid button:disabled{background:transparent;color:#c7d0db;cursor:not-allowed;font-weight:400;opacity:.42}.dark .range-calendar-head strong,.dark .range-calendar-grid button{color:#e5edf7}.dark .range-calendar-weekdays{border-color:#304159}.dark .range-calendar-grid button.outside{color:#607087}.dark .range-calendar-grid button:disabled{color:#526176}.dark .mobile-range-trigger,.dark .mobile-calendar-card{background:#111d2d;border-color:#304159;color:#e5edf7}.report-date-comparison label,.report-compare-button{width:100%}.report-compare-divider{align-self:center;margin:0}.report-filter-summary{justify-items:start}.report-stat-strip,.report-commitment-stats,.report-export-coverage{grid-template-columns:1fr}.report-export-coverage>div+div{border-left:0;border-top:1px solid #d5e9de}.report-health-score{align-items:center;display:flex;gap:9px;justify-content:flex-start;min-width:0}.report-header-actions{align-items:stretch;flex-direction:column-reverse;width:100%}.report-download-button{width:100%}.report-health-score span{margin:0}.ai-report-grid,.ai-analysis-pulse{grid-template-columns:1fr}.ai-recommendations-head{align-items:flex-start;flex-direction:column;gap:4px}.ai-recommendation-list article{align-items:start;grid-template-columns:38px minmax(0,1fr)}.ai-recommendation-list article>strong{grid-column:2;text-align:left}.analytics-toolbar{gap:14px;padding:16px}.analytics-toolbar-head{align-items:flex-start;flex-direction:column;gap:5px;padding-bottom:12px}.analytics-toolbar-body{align-items:stretch;display:grid;gap:14px}.analytics-filter-group{display:grid;grid-template-columns:1fr;width:100%}.analytics-filter-group.custom{grid-template-columns:1fr}.analytics-filter-group.custom>label:first-child,.analytics-filter-group.custom>label:last-child{grid-column:auto}.analytics-filter-group label,.analytics-actions,.analytics-actions button{min-width:0;width:100%}.analytics-date-field input{display:block;font-size:.82rem;inline-size:100%;max-inline-size:100%;min-inline-size:0;padding-inline:10px}.analytics-actions{display:grid;grid-template-columns:1fr 1.15fr}.analytics-metrics,.analytics-insight-grid{grid-template-columns:1fr}.analytics-budget-row{grid-template-columns:1fr 48px}.analytics-chart-highlights{gap:10px}.analytics-chart-highlights strong{font-size:.72rem}.analytics-progress{grid-column:1;grid-row:2}.analytics-budget-row b{grid-column:2;grid-row:2}.topbar{align-items:flex-start;flex-direction:column;gap:12px;margin:-14px -14px 16px;padding:12px 14px}.top-actions{justify-content:flex-start}.header-tools{display:grid;gap:8px;grid-template-columns:80px minmax(105px,1fr) repeat(4,42px);width:100%}.profile-chip{justify-self:center}.profile-chip div{display:none}.currency-select,.month-button{min-height:42px;min-width:0;width:100%}.notification-panel{border-radius:12px;left:12px;max-height:calc(100dvh - 150px);position:fixed;right:12px;top:132px;width:auto}.notification-list{max-height:calc(100dvh - 276px)}.notification-head,.notification-item{padding:12px 14px}.daily-reminder-item{align-items:start;grid-template-columns:40px minmax(0,1fr)}.daily-reminder-item small{grid-column:2;justify-self:start}.daily-reminder-actions{align-items:stretch;flex-direction:column-reverse}.daily-reminder-actions button,.title-line{width:100%}.title-line h2{font-size:1.18rem}.metric-grid.six,.metric-grid.five,.metric-grid.summary-metrics,.metric-grid.currency-metrics,.form-grid,.currency-checks,.quick-actions{grid-template-columns:1fr}.metric,.panel,.action-tile{padding:14px}.metric{align-items:center;column-gap:14px;grid-template-columns:48px minmax(0,1fr);min-height:0;padding:16px;row-gap:4px}.metric .metric-icon{grid-row:1 / span 3}.metric>span,.metric>strong,.metric>small{grid-column:2}.summary-metrics .metric,.currency-metrics .metric{min-height:0}.metric strong{font-size:1rem}.donut-layout{align-items:center;flex-direction:column;gap:8px;width:100%}.donut-chart{flex:none;max-width:300px;width:100%}.donut-layout .category-legend{align-self:stretch;padding:0 2px;width:100%}.budget-card-grid,.loan-amounts,.budget-progress-line{grid-template-columns:1fr}.budget-card-head,.loan-card-head,.loan-title-row{align-items:stretch;flex-direction:column}.loan-status-stack{align-items:flex-start;justify-content:flex-start}.account-detail-head{grid-template-columns:1fr}.mini-actions,.row-actions{justify-content:flex-start}.payment-row,.client-row{grid-template-columns:auto 1fr}.payment-amount,.client-row strong{grid-column:2;justify-items:start;text-align:left}.payment-actions{justify-content:flex-start}.friend-grid{grid-template-columns:1fr}}@media(max-width:430px){.header-tools{grid-template-columns:72px minmax(92px,1fr) repeat(4,38px)}.profile-chip{justify-self:center}.sidebar{max-width:92vw;width:300px}}.app-shell.dark td{color:#d8e2ee}.app-shell.dark tbody tr.clickable-row:hover td{background:#15283a;color:#f3f7fb}.app-shell.dark tbody tr.selected-row td{background:#123526!important;border-bottom-color:#266044;color:#f1fff7!important}.app-shell.dark tbody tr.selected-row td:first-child{box-shadow:inset 3px 0 #35d47d}.app-shell.dark .account-group-row td{background:#17283c!important;border-bottom-color:#31455d;color:#b9c8da!important}.app-shell.dark .subtotal-row td{background:#10271f!important;border-bottom-color:#28523e;color:#c9f5dc!important}.app-shell.dark tfoot td{background:#16243a!important;border-top:2px solid #3a506a;color:#f4f7fb!important}.app-shell.dark tfoot td strong,.app-shell.dark .subtotal-row td strong{color:inherit}.app-shell.dark .selected-balance{background:#15263a!important;border-color:#38516e!important}.app-shell.dark .selected-balance span{color:#9fb2c8!important}.app-shell.dark .selected-balance strong{color:#f3f7fb!important}.app-shell.dark .tabs button{color:#b8c6d7}.app-shell.dark .tabs button:hover{background:#192b40;color:#f4f8fc}.app-shell.dark .tabs button.active{background:#159a50;border-color:#28b968;color:#fff}.app-shell.dark .notification-trigger.active{background:#123526;border-color:#35c978;color:#5ce29a}.app-shell.dark .row-actions button,.app-shell.dark .payment-amount button,.app-shell.dark .mini-actions button{background:#17283b;border-color:#3a5069;color:#71dfa3}.app-shell.dark .row-actions button:hover,.app-shell.dark .payment-amount button:hover,.app-shell.dark .mini-actions button:hover{background:#1d3348;border-color:#54708e}.app-shell.dark .row-actions button.danger,.app-shell.dark .payment-amount button.danger,.app-shell.dark .mini-actions button.danger{background:#321d22;border-color:#704047;color:#ffaaa4}.app-shell.dark input[type=checkbox]{accent-color:#23b765}.app-shell.dark .positive-pill,.app-shell.dark .payment-amount span.paid-badge{background:#153526;color:#6ee5a3}.app-shell.dark .negative-pill,.app-shell.dark .payment-amount span:not(.paid-badge){background:#382026;color:#ffaaa4}:root{--brand-50: #ecfdf3;--brand-100: #d1fae1;--brand-500: #12a957;--brand-600: #078f46;--ink-950: #071426;--ink-800: #20314a;--ink-600: #5d6d83;--line: #dfe7f0;--surface: #ffffff;--surface-soft: #f6f9fc;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(7, 20, 38, .04), 0 5px 16px rgba(7, 20, 38, .035);--shadow-md: 0 12px 32px rgba(7, 20, 38, .08)}html{background:var(--surface-soft);scroll-behavior:smooth}body{background:var(--surface-soft);color:var(--ink-950);font-feature-settings:"kern" 1,"tnum" 1;-webkit-font-smoothing:antialiased}::selection{background:#bcefd1;color:#063c22}button,input,select,textarea{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid rgba(18,169,87,.2);outline-offset:2px}input:hover,select:hover,textarea:hover{border-color:#b8c7d8}input:focus,select:focus,textarea:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #12a9571f;outline:none}.app-shell{background:var(--surface-soft);grid-template-columns:264px minmax(0,1fr)}.sidebar{background:linear-gradient(180deg,#07172a,#071e34 55%,#061628);border-right:1px solid rgba(255,255,255,.05);padding:20px 14px}.brand{padding:2px 8px 22px}.brand-mark,.brand-lock{border-radius:12px;box-shadow:0 8px 20px #089b4b40}.sidebar nav{gap:4px}.sidebar nav button{border-radius:9px;color:#cbd7e6;font-size:.9rem;font-weight:700;min-height:40px;padding:9px 11px}.sidebar nav button:hover{background:#ffffff13}.sidebar nav button.active{background:linear-gradient(100deg,#10a754,#078c44);box-shadow:0 8px 18px #057e3c38}.quick-summary{background:#ffffff06;border-color:#ffffff1f;border-radius:12px}.content{background:var(--surface-soft);padding:28px 30px 40px}.topbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;margin:-28px -30px 26px;padding:17px 30px;z-index:30}.title-line h2{color:var(--ink-950);font-size:1.45rem;font-weight:800;letter-spacing:-.025em}.top-actions button,.currency-select,.panel-head button,.tabs button,.secondary,.icon-button{border-radius:9px}.top-actions button,.currency-select{box-shadow:0 1px 2px #07142608}.top-actions button:hover:not(:disabled),.panel-head button:hover,.secondary:hover{background:#f5f9fc;border-color:#bdcbd9}.primary{background:linear-gradient(135deg,var(--brand-500),var(--brand-600));border-radius:9px;box-shadow:0 7px 16px #088f462e}.primary:hover{box-shadow:0 9px 20px #088f4640;transform:translateY(-1px)}.primary:active,.secondary:active,.icon-button:active{transform:translateY(0)}.profile-chip{border-left:1px solid var(--line);gap:10px;margin-left:2px;padding-left:14px}.profile-chip span{background:linear-gradient(135deg,#dbeafe,#c9def8);height:38px;width:38px}.metric-grid,.dashboard-main,.dashboard-lower,.workspace-grid,.wide-grid{gap:18px}.metric,.panel,.friend-card,.action-tile,.budget-card,.loan-card,.settings-card,.account-detail,.recurring-card,.table-wrap{border-color:var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.metric{gap:8px;padding:20px}.metric:hover{border-color:#cbd7e3;box-shadow:var(--shadow-md)}.metric-icon,.round-icon{border-radius:10px;height:44px;width:44px}.metric span{color:var(--ink-800);font-size:.84rem;letter-spacing:.005em}.metric strong{font-size:clamp(1.08rem,1.3vw,1.3rem);letter-spacing:-.025em;line-height:1.25}.metric small{color:#158149;font-size:.78rem}.panel{padding:20px}.panel-head{border-bottom:1px solid #edf2f6;margin:-2px 0 18px;padding:0 0 14px}.panel h2,.modal-head h2{color:var(--ink-950);font-size:1.02rem;font-weight:800;letter-spacing:-.015em}.tabs{background:#eef4f8;border:0;border-radius:11px;box-shadow:none;padding:4px}.tabs button.active{box-shadow:0 4px 12px #09914633}label{color:#43536a;font-size:.81rem;font-weight:750}input,select,textarea{border-color:#d5e0eb;border-radius:9px;min-height:44px;padding:10px 12px}.table-wrap{border:1px solid var(--line)}table{background:var(--surface)}th{background:#f4f7fa;color:#5b6b80;font-size:.72rem;letter-spacing:.055em;text-transform:uppercase}th,td{border-bottom:1px solid #e9eff5;padding:13px 15px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7fbf9}.payment-row,.budget-card,.loan-card{border-radius:11px}.payment-row{box-shadow:none;padding:15px}.notification-panel{border-radius:13px;box-shadow:0 24px 64px #07142633;width:min(400px,calc(100vw - 28px))}.notification-head{padding:16px 18px}.notification-item{padding:13px 18px}.notification-footer{min-height:48px}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#040e1e9e}.modal-card{border-radius:14px;box-shadow:0 28px 90px #040e1e4d;padding:22px}.login-page{background:radial-gradient(circle at 16% 18%,rgba(21,183,91,.2),transparent 28%),radial-gradient(circle at 88% 76%,rgba(37,113,175,.17),transparent 30%),linear-gradient(145deg,#061225,#0a2634 58%,#0a402c)}.login-panel{border-radius:16px;box-shadow:0 30px 90px #020c1c59;padding:36px}.auth-switch{border-radius:11px;padding:4px}.dark{--ink-950: #f1f6fb;--ink-800: #d3deea;--ink-600: #a1afc0;--line: #283a4f;--surface: #101d2d;--surface-soft: #08121f;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2), 0 8px 22px rgba(0, 0, 0, .13);--shadow-md: 0 16px 40px rgba(0, 0, 0, .3)}.dark .content,.app-shell.dark{background:var(--surface-soft)}.dark .topbar{background:#0a1523e0}.dark .panel-head{border-color:#26384d}.dark .tabs{background:#0b1725;border-color:#283a4f}.dark .top-actions button:hover:not(:disabled),.dark .panel-head button:hover,.dark .secondary:hover{background:#1a2a3d;border-color:#415771}.dark table{background:#0f1b2b}.dark th{background:#142337;color:#aab8c9}.dark .profile-chip{border-color:#2b3c51}.dark .metric small{color:#55d98f}@media(max-width:1020px){.app-shell{grid-template-columns:236px minmax(0,1fr)}.content{padding-left:22px;padding-right:22px}.topbar{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}}@media(min-width:981px){.app-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr)}.sidebar-collapsed .sidebar{padding-left:10px;padding-right:10px}.sidebar-collapsed .brand{justify-content:center;padding-left:0;padding-right:0}.sidebar-collapsed .brand-home>div:not(.brand-mark),.sidebar-collapsed .nav-group-label,.sidebar-collapsed .quick-summary{display:none}.sidebar-collapsed .sidebar nav .nav-group-toggle{display:none}.sidebar-collapsed .brand-mark{height:44px;width:44px}.sidebar-collapsed .brand-home{gap:0}.sidebar-collapsed .brand-mark svg{height:25px;width:25px}.sidebar-collapsed .sidebar-collapse{right:-20px}.sidebar-collapsed .sidebar nav{padding-right:0}.sidebar-collapsed .nav-group{gap:5px}.sidebar-collapsed .nav-group+.nav-group{margin-top:6px;padding-top:7px}.sidebar-collapsed .sidebar nav button{font-size:0;justify-content:center;min-height:44px;padding:10px}.sidebar-collapsed .sidebar nav button svg{height:20px;width:20px}.sidebar-collapsed .sidebar-footer{padding-top:10px}.sidebar-collapsed .sidebar-footer .ghost{font-size:0;gap:0;padding:9px}}@media(max-width:720px){.app-shell{display:block}.content{padding:14px 12px 32px}.topbar{gap:9px;margin:-14px -12px 16px;padding:12px 14px 13px}.title-line{gap:10px;min-height:42px;padding-right:132px;width:100%}.title-line h2{font-size:1.18rem}.header-tools{align-items:center;border-top:1px solid #e6edf5;gap:0;grid-template-columns:76px 94px repeat(3,40px);justify-content:space-between;padding-top:10px;width:100%}.header-tools .currency-select-wrap,.header-tools .currency-select{font-size:.78rem;min-width:0;width:100%}.header-tools .currency-select{padding-left:9px;padding-right:25px}.header-tools .month-button{font-size:.76rem;min-width:0;padding-left:6px;padding-right:6px;width:100%}.header-tools .icon-button,.profile-chip>span{height:40px;min-height:40px;width:40px}.profile-chip{align-items:center;display:flex;border:0;margin:0;padding:0;position:absolute;right:14px;top:12px}.dark .header-tools{border-top-color:#26364a}.profile-chip div{display:grid;gap:0;max-width:82px}.profile-chip strong,.profile-chip small{max-width:82px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-chip strong{font-size:.78rem}.profile-chip small{font-size:.66rem}.metric-grid,.dashboard-main,.dashboard-lower,.workspace-grid,.wide-grid{gap:12px}.metric,.panel,.action-tile{border-radius:12px}.metric{padding:15px}.panel{padding:16px}.notification-panel{left:10px;right:10px;top:122px}.modal-backdrop{align-items:flex-end;padding:10px}.modal-card{border-radius:16px;max-height:calc(100dvh - 20px);padding:18px}.login-page{padding:16px}.login-panel{border-radius:14px;padding:24px}}@media(max-width:430px){.header-tools{grid-template-columns:66px minmax(86px,1fr) repeat(4,38px)}.header-tools .icon-button,.profile-chip span{height:38px;min-height:38px;width:38px}}.message-imports{min-width:0}.message-imports fieldset{border:0;padding:0;margin:0;min-width:0}.message-imports p{line-height:1.6}.message-imports h3{margin-top:24px}.import-row{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0}.import-row>.import-field{flex:1 1 170px}.import-field{display:grid;gap:8px;min-width:0;margin:12px 0}.import-field input,.import-field select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;min-height:44px}.import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.import-provider{border:1px solid var(--line, #dfe7f0);border-radius:12px;padding:20px;margin-top:20px}.import-provider h4{margin:0 0 12px}.import-notice{background:var(--surface-soft, #f6f9fc);border:1px solid var(--line, #dfe7f0);border-radius:10px;padding:20px;overflow-wrap:anywhere}ul.import-notice{padding-left:36px;line-height:1.6}.import-check{display:flex;align-items:center;gap:12px;min-height:44px;margin:12px 0}.import-check input{width:20px;height:20px}.import-divider{border-bottom:1px solid var(--line, #dfe7f0);padding:12px 0}.message-imports summary{cursor:pointer;min-height:44px;padding:12px 0}.message-imports button{min-height:44px;cursor:pointer}.message-imports button:disabled{cursor:wait;opacity:.65}.message-imports :focus-visible{outline:2px solid var(--brand-600, #078f46);outline-offset:3px}.message-imports ol{padding-left:24px;line-height:1.7}@media(max-width:600px){.import-grid{grid-template-columns:minmax(0,1fr)}.import-provider{padding:14px}.import-row>*{flex-basis:100%}}
