:root{color-scheme:dark;--bg:#0b101c;--panel:#121b2a;--panel2:#182336;--panel3:#1d2c43;--line:#29354a;--muted:#909cb3;--text:#f1f5fd;--accent:#aa92ff;--green:#42d4a0;--red:#ff7187;--yellow:#f6ba64;--blue:#7faeff;--r:20px;--shadow:0 18px 50px #0003;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{margin:0;color:var(--text);background:var(--bg);min-height:100vh;letter-spacing:-.013em}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button svg{pointer-events:none}#app{min-height:100vh;position:relative;z-index:1}.glow{position:fixed;border-radius:50%;filter:blur(110px);opacity:.12;pointer-events:none;z-index:0}.glow-one{width:550px;height:550px;background:#7354c9;top:-260px;right:12%}.glow-two{width:490px;height:490px;background:#157e8b;bottom:-300px;left:5%}.splash{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;color:var(--muted)}.splash h1{margin:0;color:var(--text)}.splash p{margin:0}.brand-symbol{display:grid;place-items:center;width:47px;height:47px;border-radius:15px;background:linear-gradient(145deg,#bcabff,#816bf4);color:#110d25;font-size:25px;font-weight:900;box-shadow:0 8px 26px #957bff33}.brand-symbol span{color:#e8e0ff}.layout{display:grid;grid-template-columns:255px minmax(0,1fr);min-height:100vh;max-width:1800px;margin:auto}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid #273246bf;padding:29px 18px 24px 20px;display:flex;flex-direction:column;gap:29px;background:#0c1320a8;backdrop-filter:blur(22px)}.sidebar-brand{display:flex;gap:12px;align-items:center;padding:0 7px}.brand-name{font-size:19px;letter-spacing:-.065em;font-weight:830}.brand-sub{color:var(--muted);font-size:11px;letter-spacing:.04em;margin-top:2px}.side-label{padding:0 14px;font-size:10px;color:#677992;letter-spacing:.18em;font-weight:700;margin:10px 0 9px}.menu-list{display:flex;flex-direction:column;gap:5px}.nav-link{width:100%;text-align:left;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#a4aec0;padding:13px 14px;border-radius:12px;font-size:13px;font-weight:610;transition:.18s}.nav-link svg{width:18px;height:18px}.nav-link:hover{background:#1a2537;color:#fff}.nav-link.active{color:#eee7ff;background:#a78bfa20;box-shadow:inset 3px 0 #ad93ff}.side-bottom{margin-top:auto}.side-note{border:1px solid #334158;background:linear-gradient(140deg,#22263f,#182334);border-radius:18px;padding:17px}.side-note .small{font-size:12px}.side-note strong{font-size:13px}.side-note p{font-size:11px;color:#a9b3c9;line-height:1.6;margin-bottom:0}.main{width:100%;min-width:0;padding:27px clamp(18px,3.5vw,62px) 90px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:33px}.breadcrumb{font-size:12px;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:9px}.chip-date{border:1px solid var(--line);border-radius:20px;padding:10px 14px;color:#acb8cc;font-size:12px}.top-brand-mobile{display:none}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:23px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.17em;color:var(--accent);font-weight:800;margin:0 0 11px}.page-title{font-size:clamp(27px,3.15vw,38px);font-weight:800;letter-spacing:-.055em;margin:0}.page-sub{color:var(--muted);font-size:13px;margin:8px 0 0;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:41px;padding:10px 16px;color:#e9edfa;background:var(--panel2);border:1px solid #384458;border-radius:12px;font-size:12px;font-weight:750;transition:transform .12s,background .15s,border-color .15s;white-space:nowrap}.btn:hover{background:#26344e;border-color:#50617e;transform:translateY(-1px)}.btn svg{width:16px;height:16px}.btn.primary{color:#17142b;background:linear-gradient(120deg,#c7b8ff,#a38aff);border:0;box-shadow:0 8px 22px #9276ff30}.btn.primary:hover{background:#ddd4ff}.btn.muted{background:transparent;border:1px solid var(--line)}.btn.danger{background:#ff718715;border-color:#ff71873c;color:#ff9bab}.btn.small{padding:7px 10px;min-height:34px;font-size:11px;border-radius:9px}.btn.icon{width:41px;padding:0}.btn.full{width:100%}.btnrow{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.section-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr);gap:18px;align-items:start}.stack{display:flex;flex-direction:column;gap:18px;min-width:0}.card{background:linear-gradient(150deg,#151f2f,#121b2a);border:1px solid #2a3649;border-radius:var(--r);box-shadow:var(--shadow);padding:22px;min-width:0}.card.soft{background:#121b29}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:19px}.card-head h3{font-size:15px;margin:0;letter-spacing:-.025em}.card-head p{margin:6px 0 0;color:var(--muted);font-size:12px}.card-head .btn{margin-left:auto}.headline-value{font-size:clamp(28px,4vw,43px);font-weight:800;letter-spacing:-.06em;margin:8px 0}.subtle{color:var(--muted);font-size:12px;line-height:1.5}.micro{color:#73839a;font-size:11px}.flex{display:flex;gap:12px;align-items:center}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.hero{position:relative;overflow:hidden;padding:27px 29px;background:linear-gradient(115deg,#241f42,#17203a 48%,#152534);border:1px solid #514d75}.hero:before{content:"";position:absolute;width:240px;height:240px;right:-72px;top:-92px;border:45px solid #b2a0ff14;border-radius:50%}.hero:after{content:"";position:absolute;width:300px;height:300px;right:-132px;top:-122px;border:1px solid #cdbfff30;border-radius:50%}.hero .btnrow{margin-top:24px}.hero-content{position:relative;z-index:1}.hero small{color:#c6bbf0;font-size:12px}.hero .headline-value{font-size:clamp(36px,4.5vw,53px);margin:11px 0 5px}.hero-bottom{display:flex;gap:14px;margin-top:25px;flex-wrap:wrap}.mini-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--green);margin-right:6px}.pill{border-radius:100px;padding:5px 9px;background:#ad99ff20;color:#d1c7ff;font-size:10px;font-weight:800;border:1px solid #ad99ff26;white-space:nowrap}.pill.green{background:#2fbc8e1d;color:#72e2b9;border-color:#42d4a032}.pill.orange{background:#f6ba6418;color:#f6cb8d;border-color:#f6ba643a}.pill.red{background:#ff71871d;color:#ff9bab;border-color:#ff718739}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.stat{padding:20px}.stat .icon-box{width:36px;height:36px;margin-bottom:13px}.stat h3{margin:7px 0;font-size:clamp(19px,2vw,27px);letter-spacing:-.045em}.stat small{color:var(--muted);font-size:11px}.icon-box{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:#a18bfb1c;color:#b8a6ff;flex-shrink:0}.icon-box svg{width:20px;height:20px}.icon-box.green{background:#36d2a321;color:var(--green)}.icon-box.red{background:#ff718721;color:var(--red)}.icon-box.yellow{background:#f6ba6424;color:var(--yellow)}.icon-box.blue{background:#7faeff1e;color:var(--blue)}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.account-card{background:#1a2638;border:1px solid #2e3b50;border-radius:15px;padding:16px;min-height:118px}.account-card h4{font-size:12px;font-weight:600;color:#adb9cd;margin:3px 0 15px;display:flex;align-items:center;gap:8px}.account-card strong{display:block;font-size:21px;font-weight:800;letter-spacing:-.04em}.account-card .subtle{font-size:10px;margin-top:7px}.account-card .dot{width:9px;height:9px;border-radius:50%;display:inline-block}.account-card.saving{border-color:#38ca9d55;background:linear-gradient(130deg,#1a2c36,#172b2e)}.account-card.saving strong{color:#81e6c0}.progress{height:9px;background:#27354b;border-radius:99px;overflow:hidden}.progress>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#8776f7,#b9a5ff)}.progress.green>span{background:linear-gradient(90deg,#2bb58d,#6de0b8)}.list{display:flex;flex-direction:column;gap:1px}.list-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #2a364848;min-width:0}.list-row:last-child{border-bottom:0;padding-bottom:2px}.list-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#263147;color:#c4cdf0;flex:0 0 auto}.list-icon svg{width:18px;height:18px}.list-main{min-width:0;flex:1}.list-name{font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-secondary{font-size:11px;color:var(--muted);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-right{text-align:right;flex-shrink:0}.amount{font-variant-numeric:tabular-nums;font-size:13px;font-weight:780}.amount.negative{color:#ffc1a7}.amount.positive{color:#72e2b9}.empty{padding:30px 16px;text-align:center;color:var(--muted);font-size:12px;line-height:1.65;border:1px dashed #33435b;border-radius:14px}.empty svg{width:30px;height:30px;display:block;margin:0 auto 12px;color:#7183a0}.legend{display:flex;align-items:center;gap:9px;font-size:11px;color:#c9d4e8}.legend i{width:8px;height:8px;display:inline-block;border-radius:100%}.split-line{display:flex;height:11px;background:#263349;border-radius:100px;overflow:hidden;gap:2px}.split-line>span{height:100%;display:block}.graph{display:flex;align-items:end;gap:8px;height:170px;border-bottom:1px solid #3b4660;padding:4px 0 0}.graph-col{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;min-width:0}.graph-bar{width:min(100%,26px);background:linear-gradient(0deg,#786cdd,#b6a5ff);border-radius:8px 8px 3px 3px;min-height:2px;transition:height .2s}.graph-col small{font-size:9px;color:#8190a8;white-space:nowrap;transform:translateY(22px)}.graph-wrap{padding:0 6px 24px}.tag{display:inline-flex;align-items:center;gap:5px;color:#bbc9df;font-size:11px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.debt-card{display:flex;flex-direction:column;gap:18px}.debt-card .between h3{margin:0 0 5px;font-size:15px}.debt-numbers{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.debt-numbers strong{font-size:24px;letter-spacing:-.045em}.debt-numbers small{font-size:11px;color:var(--muted)}.debt-mini{display:flex;justify-content:space-between;gap:10px;padding-top:10px;border-top:1px solid #304056;color:#b9c4d8;font-size:11px}.group-title{font-size:13px;font-weight:800;letter-spacing:-.016em;margin:0}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;min-width:610px;font-size:12px}.table th{text-align:left;color:#8c9bb0;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid #324056;padding:13px 9px}.table td{padding:13px 9px;border-bottom:1px solid #29364b80;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table .right{text-align:right}.table td strong{display:block}.table .subtext{color:var(--muted);font-size:10px;margin-top:5px}.table .actions{text-align:right;white-space:nowrap}.table .actions button{background:transparent;color:#a3b3cc;border:none;padding:5px}.table .actions button:hover{color:var(--red)}.toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:15px}.input,.select,.textarea{width:100%;background:#111b2a;border:1px solid #36465d;color:#f5f7ff;padding:12px 13px;border-radius:11px;min-height:43px;font-size:13px}.input::placeholder,.textarea::placeholder{color:#6f7e95}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath stroke='%239daac0' fill='none' stroke-width='1.5' d='m1 1 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:34px}.select option{background:#1a2434}.textarea{min-height:84px;resize:vertical}.label{display:block;font-size:11px;color:#b8c5d9;font-weight:650;margin:0 0 7px}.field{min-width:0}.field small{display:block;font-size:10px;color:#8293ab;margin-top:6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-stack{display:flex;flex-direction:column;gap:14px}.field.span-all{grid-column:1 / -1}.form-summary{background:#202c40;border:1px solid #3d4b63;border-radius:12px;padding:14px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.form-summary strong{font-size:18px}.hint{background:#a48bf512;border:1px solid #a48bf53a;border-radius:12px;padding:12px 14px;color:#c7c0e6;font-size:11px;line-height:1.6}.hint.warning{background:#f6ba6412;border-color:#f6ba6430;color:#f4ce9d}.pill-tabs{display:inline-flex;background:#1a2637;border:1px solid var(--line);border-radius:11px;padding:4px;gap:2px}.pill-tabs button{background:transparent;border:0;color:#8b9cb4;padding:8px 13px;border-radius:8px;font-size:11px;font-weight:700}.pill-tabs button.active{background:#354158;color:#fff}.chart-row{display:flex;align-items:center;gap:10px;margin:13px 0}.chart-row .bar-title{width:135px;flex:0 0 135px;color:#cbd5e6;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-row .bar-track{flex:1;height:9px;background:#283449;border-radius:9px;overflow:hidden}.chart-row .bar-track span{display:block;height:100%;border-radius:10px}.chart-row .bar-value{text-align:right;width:84px;flex-shrink:0;font-size:11px;font-weight:720}.metric-high{color:#f9bc78}.focus-card{border-color:#ad93ff70;background:linear-gradient(140deg,#2b2450,#141f30)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.metric-grid .stat{padding:17px}.metric-grid .stat h3{font-size:22px}.day-tag{width:43px;height:48px;background:#273449;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-direction:column;flex-shrink:0}.day-tag strong{font-size:17px}.day-tag small{font-size:9px;color:var(--muted)}.timeline-group{display:flex;flex-direction:column;gap:10px}.timeline-entry{display:flex;gap:12px;align-items:center;padding:12px;background:#1a2638;border:1px solid #2b3a4f;border-radius:13px}.timeline-entry>div:nth-child(2){flex:1}.timeline-entry strong{font-size:12px}.timeline-entry small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.deadline-overdue{border-color:#ff71875a}.weekly-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.weekly-history-card{padding:15px;background:#192539;border:1px solid #324056;border-radius:14px}.weekly-history-card h4{margin:0 0 8px;font-size:12px}.weekly-history-card p{margin:5px 0;font-size:11px;color:var(--muted)}.weekly-history-card strong{color:#f4f5fd}.weekly-balance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.inline-note{font-size:11px;color:#a5b0c6;line-height:1.6}.drawer-backdrop{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#040712c9;backdrop-filter:blur(7px);padding:15px}.modal{width:min(100%,570px);max-height:min(92vh,850px);overflow:auto;background:#172235;border:1px solid #45546d;border-radius:22px;padding:25px;box-shadow:0 30px 100px #000b}.modal.wide{width:min(100%,680px)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:23px}.modal-header h2{font-size:20px;letter-spacing:-.035em;margin:0}.modal-header p{font-size:11px;color:var(--muted);margin:7px 0 0}.close{background:#28354a;border:1px solid #3f4d60;border-radius:10px;color:#c9d5e7;width:34px;height:34px;display:grid;place-items:center}.close svg{width:17px}.form-footer{display:flex;gap:9px;justify-content:flex-end;margin-top:22px}.expense-line{padding:11px;border:1px solid #3a4960;border-radius:12px;background:#1c2a3e;display:grid;grid-template-columns:1fr 110px;gap:9px;position:relative}.expense-line .wide{grid-column:1/-1}.expense-line .remove-line{border:0;background:transparent;color:#ff98a8;font-size:11px;justify-self:end}.expense-line .field .label{font-size:10px}.expense-line .select,.expense-line .input{min-height:38px;padding:9px 10px;font-size:12px}.expense-line .select{padding-right:27px}.login{min-height:100vh;display:grid;place-items:center;padding:22px}.login-card{width:min(100%,430px);padding:36px;background:linear-gradient(140deg,#1b2540,#131d2e);border:1px solid #3a4566;border-radius:25px;box-shadow:0 28px 85px #0008}.login-card .brand-symbol{margin-bottom:24px;width:54px;height:54px}.login-card h1{font-size:29px;letter-spacing:-.05em;margin:0 0 8px}.login-card p{color:#a7b5cc;font-size:13px;line-height:1.7;margin:0 0 28px}.login-card .input{margin-bottom:16px}.login-foot{font-size:10px;color:#7687a5;margin-top:20px;display:flex;align-items:center;gap:7px}.login-foot svg{width:13px}.bottom-nav{display:none}.mobile-fab{display:none}.install-banner{display:flex;align-items:center;gap:13px;background:#222b44;border:1px solid #6a60a8;border-radius:15px;padding:12px 15px;margin:0 0 18px}.install-banner .install-copy{flex:1;font-size:12px;color:#cdd3e8}.install-banner strong{display:block;color:white;margin-bottom:3px}.install-banner .btn{flex-shrink:0}.toast-zone,#toast-zone{position:fixed;z-index:40;bottom:25px;right:25px;display:flex;flex-direction:column;gap:8px}.toast{border:1px solid #475671;background:#202e43;box-shadow:0 12px 35px #0007;padding:13px 18px;border-radius:12px;color:#e3efff;font-size:12px;max-width:340px;animation:slidein .2s ease}.toast.error{border-color:#d8667b;color:#ffc0cd}@keyframes slidein{from{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.muted-link{color:#beb2ff;border:0;background:transparent;font-size:11px;font-weight:680;cursor:pointer}.muted-link:hover{color:#fff}.smallprint{font-size:10px;color:#687c96}.line-title{font-weight:800;font-size:13px;margin:0 0 12px}.divider{border:0;border-top:1px solid #2e3c51;margin:13px 0}.hide{display:none!important}
@media(max-width:1150px){.layout{grid-template-columns:218px minmax(0,1fr)}.sidebar{padding-left:11px;padding-right:11px}.main{padding:25px 25px 90px}.section-grid{grid-template-columns:minmax(0,1fr) 300px}.stat-grid{gap:10px}.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.section-grid{grid-template-columns:1fr}.layout{grid-template-columns:205px minmax(0,1fr)}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.main{padding:22px 17px 95px}}
@media(max-width:690px){.layout{display:block}.sidebar{display:none}.main{padding:18px 15px 104px}.topbar{margin-bottom:27px}.topbar .breadcrumb,.chip-date{display:none}.top-brand-mobile{display:flex;align-items:center;gap:10px;font-weight:800;font-size:15px;letter-spacing:-.045em}.top-brand-mobile .brand-symbol{width:35px;height:35px;border-radius:10px;font-size:20px}.page-heading{align-items:flex-start}.page-heading .btn{font-size:0;padding:11px}.page-heading .btn svg{width:18px;height:18px}.page-title{font-size:29px}.page-sub{font-size:12px}.card{padding:17px;border-radius:17px}.hero{padding:22px}.hero .headline-value{font-size:39px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid .stat:last-child{grid-column:1/-1}.stat h3{font-size:23px}.account-card{padding:13px;min-height:104px}.account-card strong{font-size:18px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid .stat h3{font-size:19px}.bottom-nav{position:fixed;z-index:12;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;background:#111b2cf2;border-top:1px solid #34405b;padding:9px max(10px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));backdrop-filter:blur(20px)}.bottom-nav button{min-width:49px;display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column;border:0;background:transparent;color:#8190aa;font-size:9px;font-weight:650}.bottom-nav button svg{width:21px;height:21px}.bottom-nav button.active{color:#c5b2ff}.mobile-fab{display:flex;align-items:center;justify-content:center;position:fixed;bottom:94px;right:17px;z-index:11;width:50px;height:50px;border:0;border-radius:16px;color:#111022;background:linear-gradient(130deg,#c9b9ff,#a289ff);box-shadow:0 8px 30px #a18bff80}.mobile-fab svg{width:24px;height:24px}.two-col,.three-col{grid-template-columns:1fr}.weekly-history{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr 1fr}.install-banner{flex-wrap:wrap}.modal{padding:19px 16px 24px;border-radius:20px;max-height:94dvh}.drawer-backdrop{padding:9px;align-items:flex-end}.modal{width:100%;border-radius:22px 22px 12px 12px}.chart-row .bar-title{width:102px;flex-basis:102px}.chart-row .bar-value{width:73px}.graph-col small{font-size:8px}}
@media(max-width:385px){.stat-grid{grid-template-columns:1fr}.stat-grid .stat:last-child{grid-column:auto}.stat{padding:16px}.form-grid{grid-template-columns:1fr}.weekly-balance-grid{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr 1fr}.account-card strong{font-size:16px}.page-title{font-size:26px}}

/* v2: paski postępu w długach i rachunkach */
.progress{display:flex;align-items:stretch}.progress > span.progress-fill{display:block;max-width:100%;min-width:0;align-self:stretch}

.mobile-section-nav{display:none}
@media(max-width:900px){.mobile-section-nav{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none;margin:-13px 0 20px;padding:2px 0 10px}.mobile-section-nav::-webkit-scrollbar{display:none}.mobile-section-nav button{display:inline-flex;flex:0 0 auto;align-items:center;gap:7px;border:1px solid #33435a;border-radius:100px;padding:9px 12px;color:#b8c5dd;background:#172238;font-size:11px;font-weight:650}.mobile-section-nav button.active{border-color:#a78bfa;background:#a78bfa28;color:#e5dbff}}




/*
 * NICEFINANCE / ATELIER — DESIGN SYSTEM 2026
 * Warm editorial banking / responsive application shell
 * All back-end contracts intentionally unchanged.
 */
:root{color-scheme:light;--bg:#f5f5f1;--panel:#fff;--panel2:#f6f7f4;--panel3:#eff1ec;--line:#e4e7e1;--muted:#7c8881;--text:#17241f;--accent:#006b4e;--green:#098a60;--red:#d04a4d;--yellow:#ad752b;--blue:#3c7691;--r:14px;--shadow:0 2px 10px rgba(20,39,31,.025);font-family:Inter,'Segoe UI',system-ui,-apple-system,Arial,sans-serif;font-synthesis:none}
html,body{background:var(--bg)!important;color:var(--text);max-width:100%;overflow-x:hidden;line-height:1.55}
body{font-size:14px;letter-spacing:-.015em}button,input,select,textarea{font:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #6ec7a3;outline-offset:2px}::selection{background:#b8e5d1;color:#123c2d}
.glow{display:none}.layout{grid-template-columns:264px minmax(0,1fr);max-width:none;min-height:100dvh}
.sidebar{background:#132820;border:0;box-shadow:inset -1px 0 rgba(255,255,255,.08);padding:30px 17px 24px;gap:34px;z-index:8}
.sidebar-brand{padding:0 12px 20px;border-bottom:1px solid #ffffff1b;gap:13px}
.brand-symbol{width:43px;height:43px;border-radius:12px;background:#bcf5d7;color:#153b29;font-family:Georgia,serif;font-size:26px;font-weight:900;box-shadow:none;letter-spacing:-.12em}
.brand-symbol span{color:#46966c}.brand-name{color:#f0fbf4;font-size:20px;letter-spacing:-.055em;font-weight:750}.brand-sub{color:#83b3a2;letter-spacing:.2em;font-size:8px;font-weight:650}
.side-label{color:#729b8b;letter-spacing:.18em;padding:0 14px;margin:0 0 14px;font-size:10px}
.menu-list{gap:4px}.nav-link{border-radius:9px;padding:12px 14px;font-size:12.6px;color:#b5c9bd;box-shadow:none!important;font-weight:550;position:relative;transition:background .16s,color .16s}
.nav-link:hover{background:#ffffff12;color:#fff}.nav-link.active{background:#d3f5e1;color:#103d2a;font-weight:750}.nav-link.active svg{stroke-width:2.4}
.side-note{background:#ffffff09;border:1px solid #ffffff1b;border-radius:11px;padding:19px;color:#d8eae0}.side-note>svg{color:#b2e6cd}.side-note strong{font-size:12px}.side-note p{color:#9bb8aa;font-size:11px}.side-bottom>.nav-link{margin-top:12px!important}
.main{max-width:1530px;margin:0 auto;padding:0 clamp(22px,3.6vw,70px) 90px;width:100%;min-width:0}
.topbar{margin:0 0 40px;min-height:84px;border-bottom:1px solid #dfe5db;display:flex;align-items:center}.breadcrumb{color:#718177;letter-spacing:.08em;font-size:10px;font-weight:750}.top-actions{gap:12px}.chip-date{border:0;background:transparent;color:#7d8981;text-transform:capitalize;font-size:12px;padding:7px}.top-actions .btn.icon{background:#fff;border:1px solid #e2e8df;color:#263e33;border-radius:50%;box-shadow:0 3px 12px #19312509;width:40px;height:40px}
.page-heading{align-items:end;margin-bottom:27px;gap:22px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:#28856a;margin-bottom:9px}.page-title{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.055em;font-size:clamp(34px,3.7vw,52px);line-height:1.07;color:#182820}.page-sub{font-size:13px;color:#77867c;margin-top:11px}
.btn{border-radius:9px;background:#fff;border:1px solid #d9e2dc;color:#244035;box-shadow:none;min-height:42px;font-size:12px;font-weight:700;padding:10px 16px;transition:background .14s,transform .14s,border-color .14s;max-width:100%}.btn:hover{background:#edf5ef;border-color:#94baa8;transform:translateY(-1px)}.btn.primary{background:#116447;color:#fff;border:1px solid #116447;box-shadow:0 5px 12px #065e401b}.btn.primary:hover{background:#0b5039;color:#fff}.btn.muted{background:#fff;color:#385146;border-color:#dfe7df}.btn.danger{background:#fff1f1;color:#a9373a;border:1px solid #efc8c9}.btn.small{min-height:33px;padding:7px 11px;font-size:11px;border-radius:8px}.btn.icon{width:42px}.btn.full{width:100%}
.stack{gap:19px}.section-grid{grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);gap:21px}.card,.card.soft{background:#fff;border:1px solid #e1e7df;box-shadow:var(--shadow);border-radius:14px;padding:25px;min-width:0}.card-head{margin-bottom:19px;gap:10px}.card-head h3{font-weight:740;letter-spacing:-.035em;font-size:15px;color:#1b3025}.card-head p{font-size:11.5px;color:#7c8c82}.headline-value{color:#fff}
.hero{border:0;padding:37px 40px;overflow:hidden;background:#143f2f;color:#fff;position:relative;border-radius:19px;box-shadow:0 20px 36px rgba(26,71,45,.10)}
.hero:before{display:block;content:"";position:absolute;right:-160px;top:-220px;width:510px;height:510px;border:1px solid #ffffff29;border-radius:50%;background:transparent}
.hero:after{display:block;content:"";position:absolute;right:-88px;top:-138px;width:345px;height:345px;border:1px solid #ffffff24;border-radius:50%;background:radial-gradient(circle,#ffffff08 0 30%,transparent 70%)}
.hero .hero-content{z-index:1;position:relative}.hero small{color:#b1d7c2;font-size:10px;font-weight:760;letter-spacing:.16em}.hero .headline-value{font-size:clamp(39px,5vw,61px);font-weight:650;letter-spacing:-.065em;line-height:1.1;margin:20px 0 11px;color:#fff;font-variant-numeric:tabular-nums}.hero .subtle{color:#c1d9c9!important;font-size:12px}.hero-bottom{margin-top:28px;gap:11px}.tag{background:#ffffff13!important;border:1px solid #ffffff27!important;color:#e1f3e7!important;padding:8px 13px;border-radius:8px;font-size:11px}.tag b,.hero .tag b{color:#fff!important}.hero .btnrow{margin-top:26px}.hero .btn.primary{background:#cdf2db;border:1px solid #cdf2db;color:#154531}.hero .btn.primary:hover{background:#fff}.hero .btn.muted{background:#ffffff12;color:#f3fff8;border:1px solid #ffffff40}.hero .btn.muted:hover{background:#ffffff25}
.stat-grid{gap:17px}.stat{padding:22px}.stat h3{font-size:clamp(20px,2.3vw,29px);color:#1b3025;font-weight:720;font-variant-numeric:tabular-nums;letter-spacing:-.055em}.stat small{color:#819087;font-size:11px;font-weight:650}.stat .subtle{font-size:11px}.icon-box{background:#eaf2ec;color:#2a7d59;border-radius:10px}.icon-box.green{background:#e4f6ed;color:#168659}.icon-box.red{background:#fff0ed;color:#c3594c}.icon-box.yellow{background:#fff5e7;color:#ad802c}.icon-box.blue{background:#eaf2f8;color:#497f9c}
.account-grid{gap:11px}.account-card,.weekly-history-card{background:#f7f9f5;border:1px solid #e8ece5;border-radius:11px;padding:18px;min-height:110px}.account-card h4{font-size:11.5px;color:#6e8073;margin-bottom:17px}.account-card strong{font-size:21px;font-weight:720;color:#21372b;font-variant-numeric:tabular-nums}.account-card .subtle{color:#89948c}.account-card.saving{background:#eaf6ee;border-color:#cfe7d8}.account-card.saving strong{color:#147449}
.progress{height:8px;border-radius:999px;background:#e9eee9;overflow:hidden;display:block}.progress>span,.progress>span.progress-fill{height:100%;display:block;max-width:100%;min-width:0;background:#15815a;border-radius:999px}.progress.green>span{background:#11a26b}
.list{gap:0}.list-row{padding:14px 0;border-bottom:1px solid #eef1ed;gap:13px}.list-icon{background:#f0f4ef;border-radius:10px;color:#376e55}.list-name{font-size:12.5px;color:#263a30;font-weight:700}.list-secondary{color:#89958c;font-size:11px}.list-right .amount{font-variant-numeric:tabular-nums;color:#2b3f33;font-weight:760}.amount.negative{color:#c35852!important}.amount.positive{color:#0b9760!important}.subtle,.micro{color:#819086}.empty{color:#819086;background:#fcfdfb;border:1px dashed #dbe4da;border-radius:10px;padding:29px 16px}.empty svg{color:#9fb6a6}.legend{color:#607769}.split-line{background:#e5ede5}.graph{border-bottom:1px solid #dfe7dd}.graph-bar{background:linear-gradient(180deg,#38bc86,#12694c)!important;border-radius:5px 5px 0 0}.graph-col small{color:#9aa69b}
.pill{background:#e8eee9;color:#496b59;border:1px solid #dbe7df;border-radius:6px;font-weight:740}.pill.green{background:#e4f5e9;color:#137e53;border-color:#cbead5}.pill.orange{background:#fff1df;color:#99682f;border-color:#f1dfc2}.pill.red{background:#fff0ed;color:#b94746;border-color:#f0cdca}
.muted-link{color:#0e7954;font-size:11.5px;font-weight:760}.muted-link:hover{color:#0e4f3a;text-decoration:underline}
.day-tag{background:#e9f1ea;color:#285841;border-radius:8px}.day-tag small{color:#67836f}.timeline-entry{background:#fbfcfa;border:1px solid #e7ede7;border-radius:10px}.timeline-entry small{color:#849387}.deadline-overdue{background:#fff8f7;border-color:#edcbca}.weekly-history-card strong{color:#193d29}.weekly-history-card p{color:#829087}
.chart-row .bar-track{background:#ecf0ea;border-radius:99px}.chart-row .bar-track>span{background:#21805c!important;border-radius:99px}.chart-row .bar-title,.chart-row .bar-value{color:#304839}.pill-tabs{background:#eaf0e9;border-color:#dbe6dc}.pill-tabs button{color:#5d7564}.pill-tabs button.active{background:#fff;color:#14593d;box-shadow:0 2px 8px #16342210}
/* Financial tools / input surfaces */
.input,.select,textarea.input{background:#fff;color:#182d20;border:1px solid #dbe4dc;box-shadow:0 1px 2px #1f442608;border-radius:9px;min-height:45px;padding:11px 13px;font-size:13px}.input::placeholder,textarea::placeholder{color:#a1aea5}.input:hover,.select:hover{border-color:#9abca6}.input:focus,.select:focus,textarea.input:focus{border-color:#23835a;outline:3px solid #23835a22;outline-offset:0}.label{color:#52665a;font-size:11.5px;font-weight:740;letter-spacing:0}.field{min-width:0}.form-stack{gap:17px}.hint{background:#eff6ef!important;color:#476754!important;border:1px solid #d7e9dc!important;border-radius:9px;padding:13px 15px;line-height:1.65}.group-title{color:#2c7555!important;border-color:#e6ebe5;letter-spacing:.13em}.form-footer{border-top:1px solid #e8eee7;padding-top:19px}.expense-line{background:#f7faf6;border:1px solid #e0e9df;border-radius:10px}.expense-line .remove-line{color:#bd4b48}.divider{border-color:#edf0ea}
.drawer-backdrop{background:#0b221bd0;backdrop-filter:blur(5px)}.modal,.modal.wide{background:#fff;border:1px solid #d6e5d9;border-radius:17px;box-shadow:0 32px 110px #09231853;padding:28px}.modal-header{border-bottom:1px solid #ecf0ea;padding-bottom:19px;margin-bottom:21px}.modal-header h2{color:#1e3528;font-size:23px;font-family:Georgia,'Times New Roman',serif;letter-spacing:-.04em;font-weight:550}.modal-header p{color:#8c9a8f}.close{background:#f3f6f1;border:1px solid #e3eae1;color:#385744;border-radius:9px}.close:hover{background:#e8f1e7}
.login{background:radial-gradient(circle at 15% 20%,#d9eadb 0,transparent 35%),#f2f4ee}.login-card{background:#fff;border:1px solid #dae6d9;border-radius:19px;box-shadow:0 24px 90px #183c2420;padding:45px}.login-card .brand-symbol{background:#153f2d;color:#d7f7df}.login-card h1{color:#14291e;font-size:37px;font-family:Georgia,serif;font-weight:500;letter-spacing:-.055em;line-height:1.1}.login-card p{color:#758a7a;font-size:13px}.login-foot{color:#97a49b}
.install-banner{background:#e7f4e9;border-color:#c6e4ce;color:#254c36}.install-banner strong{color:#184b32}.install-banner .install-copy{color:#507663}
#toast-zone{z-index:40}.toast{background:#173d2d;color:#e9f8ed;border:1px solid #377b55;box-shadow:0 15px 30px #18392129}.toast.error{background:#782f32;color:#fff;border-color:#c96e72}
.mobile-section-nav{display:none}.bottom-nav{display:none}.top-brand-mobile{display:none}.mobile-fab{display:none}
/* More structured dense layouts across all functional pages */
.two-col{gap:18px}.three-col{gap:18px}.metric-grid{gap:14px}.metric-grid .stat{padding:19px}.focus-card{background:#eff8f0;border:1px solid #cbe5d2}.focus-card .subtle{color:#60866f}.table-wrap{max-width:100%;overflow-x:auto}
@media(max-width:1200px){.layout{grid-template-columns:232px minmax(0,1fr)}.sidebar{padding:25px 12px}.main{padding:0 27px 85px}.section-grid{grid-template-columns:minmax(0,1fr) minmax(275px,.85fr)}}
@media(max-width:980px){.section-grid{grid-template-columns:1fr}.main{padding:0 22px 85px}.stat-grid{gap:12px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{padding-left:10px;padding-right:10px}}
@media(max-width:760px){
 .layout{display:block}.sidebar{display:none}.main{padding:0 16px calc(118px + env(safe-area-inset-bottom));max-width:none}.topbar{height:69px;min-height:69px;margin-bottom:26px}.topbar .breadcrumb,.chip-date{display:none}.top-brand-mobile{display:flex;align-items:center;gap:9px;color:#20362a;font-size:17px;font-weight:800;letter-spacing:-.045em}.top-brand-mobile .brand-symbol{width:32px;height:32px;border-radius:9px;font-size:20px}.top-actions .btn.icon{width:35px;height:35px}
 .page-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.page-title{font-size:36px}.page-sub{font-size:12px;line-height:1.55}.page-heading>.btn{font-size:0;min-width:42px;padding:11px}.page-heading>.btn svg{width:18px;height:18px}
 .card,.card.soft{padding:19px;border-radius:12px}.hero{padding:26px 23px;border-radius:15px}.hero .headline-value{font-size:42px;margin-top:12px}.hero-bottom{gap:7px;margin-top:21px}.hero .btnrow{gap:7px}.hero .btnrow .btn{flex:1 1 auto;min-height:39px;font-size:11px;padding:8px 9px}.hero .tag{font-size:10px;padding:7px 10px}
 .section-grid,.two-col,.three-col{grid-template-columns:1fr;gap:15px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.stat-grid .stat:last-child{grid-column:1/-1}.stat h3{font-size:24px}.stat{padding:18px}.account-grid{gap:9px}.account-card{padding:14px;min-height:100px}.account-card strong{font-size:18px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid .stat h3{font-size:20px}
 .bottom-nav{display:flex;position:fixed;z-index:12;bottom:0;left:0;right:0;justify-content:space-around;align-items:center;background:#fff;border-top:1px solid #dae4dc;padding:9px max(8px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));box-shadow:0 -12px 32px #1237250d}.bottom-nav button{background:transparent;color:#8a9c8e;border:0;display:flex;align-items:center;flex-direction:column;gap:5px;min-width:49px;font-size:10px;font-weight:700;padding:2px}.bottom-nav button svg{width:21px;height:21px}.bottom-nav button.active{color:#08734e}.bottom-nav button.active svg{stroke-width:2.4}
 .mobile-fab{display:grid;place-items:center;position:fixed;right:18px;bottom:calc(89px + env(safe-area-inset-bottom));width:54px;height:54px;border:0;border-radius:15px;color:#fff;background:#106948;box-shadow:0 12px 25px #13754c4d;z-index:11}.mobile-fab svg{width:24px;height:24px}
 .mobile-section-nav{display:flex;overflow-x:auto;scrollbar-width:none;gap:7px;margin:-9px 0 24px;padding:1px 0 9px}.mobile-section-nav::-webkit-scrollbar{display:none}.mobile-section-nav button{display:flex;align-items:center;flex:0 0 auto;gap:6px;border:1px solid #dce6db;border-radius:7px;background:#fff;color:#64806c;font-size:11px;font-weight:700;padding:8px 11px}.mobile-section-nav button.active{border-color:#15583e;background:#e5f2e8;color:#176344}
 .drawer-backdrop{padding:0;align-items:flex-end}.modal,.modal.wide{max-height:93dvh;width:100%;border-radius:19px 19px 0 0;padding:24px 18px calc(22px + env(safe-area-inset-bottom))}.form-grid{grid-template-columns:1fr 1fr}.weekly-history{grid-template-columns:1fr}.install-banner{flex-wrap:wrap}.graph-col small{font-size:8px}
}
@media(max-width:400px){.page-title{font-size:32px}.hero .headline-value{font-size:37px}.stat-grid{grid-template-columns:1fr 1fr}.stat-grid .stat:last-child{grid-column:1/-1}.stat h3{font-size:21px}.form-grid,.weekly-balance-grid{grid-template-columns:1fr}.account-card strong{font-size:16px}.account-card h4{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
