/* =========================================================
   ANNUAL BUDGET PRO V8.7.5 — STYLE SECTION INDEX
   Search tags: [CSS-BASE], [CSS-PROFILE], [CSS-TEMPLATE4],
                [CSS-QUICK-ACTIONS], [CSS-HYBRID-DASHBOARD]
   Existing selectors/rules are intentionally preserved.
========================================================= */
/* [CSS-BASE] Global layout, sidebar, cards, forms, tables and responsive rules */
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f4f7fb;color:#12213d}aside{position:fixed;inset:0 auto 0 0;width:245px;background:#101a2d;color:#fff;padding:34px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:14px;align-items:center;font-size:20px}.brand span{background:#fff;color:#101a2d;border-radius:14px;padding:14px 11px;font-weight:900}.brand small{letter-spacing:3px;color:#aab9d2}nav{margin-top:45px;display:grid;gap:8px}nav a{color:#dce5f4;text-decoration:none;padding:15px 16px;border-radius:12px}nav a:hover,nav a.active{background:#25334b;color:#fff}.foot{margin-top:auto;color:#aab9d2}main{margin-left:245px;padding:42px;max-width:1700px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}h1{font-size:38px;margin:8px 0}h2{margin:4px 0 14px}p{color:#6d7b91}.eyebrow{font-size:12px;font-weight:800;letter-spacing:2px;color:#60728e;margin:0}.currency,.filter{background:#fff;border:1px solid #dfe5ee;border-radius:16px;padding:14px}.currency input{width:55px;border:0;background:#f7f9fc;font-size:24px;font-weight:800;text-align:center}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:20px}.card,.panel{background:#fff;border:1px solid #e1e6ee;border-radius:18px;padding:24px;box-shadow:0 4px 18px #1c2a4010}.card label{display:block;font-weight:700;color:#53617a}.card strong{display:block;font-size:30px;margin:15px 0}.card small,.help{color:#8995a8}.card.accent{background:#16223a;color:#fff}.card.accent label,.card.accent small{color:#dce4f2}.grid{display:grid;grid-template-columns:1.7fr 1fr;gap:20px;margin-bottom:20px}.panel{margin-bottom:20px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.pill,.tag{background:#eef2ff;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:800}.tag{background:#edf1f7}form{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}form label{font-weight:700;font-size:14px}.wide{grid-column:1/-1}input,select{width:100%;padding:13px 14px;border:1px solid #d8e0eb;border-radius:11px;background:#fff;font-size:15px;margin-top:7px}button,.smallbtn{border:0;border-radius:11px;background:#16223a;color:#fff;padding:13px 18px;font-weight:800;cursor:pointer;text-decoration:none;text-align:center}form button{grid-column:1/-1}.smallbtn{padding:9px 14px}.mini{width:100px;margin:0}.barrow{margin:23px 0}.barrow>div:first-child{display:flex;justify-content:space-between}.bar{height:9px;background:#edf0f5;border-radius:99px;overflow:hidden;margin-top:10px}.bar i{display:block;height:100%;background:#18243b;border-radius:99px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px;border-bottom:1px solid #edf0f4}th{font-size:12px;color:#697990;text-transform:uppercase}.del{background:#f1f3f7;color:#526077;padding:5px 10px}.good{color:#168354}.bad{color:#b63838}.empty{text-align:center;color:#8995a8;padding:35px}.goalgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.goal strong{font-size:22px}.compact{grid-template-columns:1.4fr 1fr auto;margin:18px 0}.compact button{grid-column:auto}.line{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #edf0f4}.timeline .event{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #edf0f4}.event time{font-weight:800}.event small{display:block;color:#8995a8;margin-top:4px}.priority{display:grid;gap:12px}.priority>div{display:grid;grid-template-columns:45px 1fr auto;align-items:center;background:#f7f9fc;padding:16px;border-radius:12px}.priority b{background:#16223a;color:#fff;width:30px;height:30px;display:grid;place-items:center;border-radius:50%}.chart{height:230px;display:flex;align-items:end;gap:15px;padding:20px 0}.col{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center}.bars{height:185px;width:100%;display:flex;align-items:end;justify-content:center;gap:3px}.bars i,.bars b{width:32%;min-height:2px;background:#6c7f9e;border-radius:5px 5px 0 0}.bars b{background:#18243b}.col small{margin-top:8px;color:#7a879b}.legend{display:flex;gap:20px;color:#6e7c91}.filter{display:flex;gap:8px}.filter input,.filter select{margin:0;width:100px}.filter button{grid-column:auto}@media(max-width:1000px){aside{position:static;width:auto}.foot{display:none}main{margin:0;padding:22px}.cards,.grid,.goalgrid{grid-template-columns:1fr 1fr}nav{grid-template-columns:repeat(4,1fr);margin-top:20px}.brand{justify-content:center}}@media(max-width:650px){.cards,.grid,.goalgrid{grid-template-columns:1fr}nav{grid-template-columns:1fr 1fr}header{align-items:flex-start;gap:15px;flex-direction:column}form{grid-template-columns:1fr}.wide{grid-column:auto}.timeline .event{grid-template-columns:1fr}.compact{grid-template-columns:1fr}h1{font-size:30px}}
.version{font-style:normal;background:#fff;color:#101a2d;border-radius:5px;padding:2px 5px;letter-spacing:0;margin-left:5px;font-size:10px}.monthnav{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e1e6ee;border-radius:14px;padding:14px 18px;margin:-10px 0 20px}.monthnav a{color:#263a5c;text-decoration:none;font-weight:800}.monthlycards .card strong{font-size:26px}.status{display:inline-block;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800}.warn{background:#fff2cf;color:#8a6500}.goodbg{background:#e5f6ee;color:#14744c}.badbg{background:#fde9e9;color:#a52d2d}tfoot th{font-size:14px;background:#f8fafc;color:#1b2942}
.mini-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:-4px 0 20px}.mini-kpis a{display:flex;justify-content:space-between;align-items:center;background:#fff;border:1px solid #e1e6ee;border-radius:14px;padding:15px 18px;text-decoration:none;color:#1b2942}.mini-kpis span{color:#6d7b91}.annualcats{grid-template-columns:repeat(5,1fr)}.monthlink{color:#203657;text-decoration:none}.copybox{display:flex;align-items:center;gap:10px}.inlineform,.contrib{display:flex;grid-template-columns:none;gap:7px;margin-top:12px}.inlineform input,.contrib input{margin:0;min-width:110px;padding:8px}.inlineform button,.contrib button{grid-column:auto;padding:8px 12px}@media(max-width:1000px){.annualcats{grid-template-columns:1fr 1fr}.mini-kpis{grid-template-columns:1fr}}@media(max-width:650px){.annualcats{grid-template-columns:1fr}.inlineform,.contrib{display:grid}}
/* V7 premium layer */
:root{--navy:#0b1b35;--navy2:#132747;--blue:#2d7ff9;--cyan:#58b6ff;--green:#18a66a;--red:#e5484d;--bg:#f4f7fb;--card:#fff;--line:#dde5ef;--muted:#6b7a90;--shadow:0 10px 30px rgba(20,45,85,.07)}
body{background:radial-gradient(circle at 85% 0,#eef6ff 0,transparent 28%),var(--bg)}
aside{background:linear-gradient(180deg,#0b172b,#101f38);box-shadow:8px 0 30px rgba(8,24,48,.08)}
.brand span{box-shadow:0 8px 22px rgba(0,0,0,.18)}.version{background:linear-gradient(135deg,#2d7ff9,#58b6ff);color:#fff;border:0;padding:3px 7px;border-radius:7px}
nav a{border:1px solid transparent;transition:.2s ease}nav a:hover{transform:translateX(3px);background:rgba(255,255,255,.06)}nav a.active{background:linear-gradient(135deg,#263b5d,#2d466d);border-color:rgba(255,255,255,.06);box-shadow:0 8px 18px rgba(0,0,0,.12)}
main{max-width:1540px}header h1{letter-spacing:-.8px}.eyebrow{color:#55749d;letter-spacing:2px}.panel,.card,.mini-kpis a,.goal-card{border:1px solid rgba(214,225,238,.95);box-shadow:var(--shadow);background:rgba(255,255,255,.96)}
.card{position:relative;overflow:hidden}.card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan));opacity:.75}.card.accent{background:linear-gradient(145deg,#11223f,#172c50)}.card.soft{background:linear-gradient(180deg,#fff,#f8fbff)}
.insight-cards{margin-top:-4px}.primary,.smallbtn{transition:.18s ease}.primary:hover,.smallbtn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(45,127,249,.16)}
table{border-collapse:separate;border-spacing:0}thead th{background:#f6f9fd;color:#536a89;font-size:12px;text-transform:uppercase;letter-spacing:.5px}tbody tr:hover{background:#f8fbff}.tag{background:#edf4ff;color:#244d85;border:1px solid #d9e8ff}.bar{background:#edf2f8}.bar i{background:linear-gradient(90deg,#2d7ff9,#59b6ff)}
.goal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.goal-card{padding:20px;border-radius:18px}.goal-card h3{margin:9px 0}.inline{display:flex;gap:8px;margin-top:14px}.inline input{flex:1}.due{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#edf4ff;color:#244d85;font-weight:800}
@media(max-width:1000px){aside{position:relative;width:100%;height:auto}body{display:block}nav{display:flex;overflow:auto;padding-bottom:8px}nav a{white-space:nowrap}main{margin:0}.cards{grid-template-columns:repeat(2,1fr)}}
.sitefooter{margin:28px 0 8px;text-align:center;color:#7b8799;font-size:12px}.navsep{font-size:10px;letter-spacing:1.5px;color:#8190a8;margin:18px 12px 6px}.flash{padding:11px 14px;border-radius:10px;background:#eef6ff;border:1px solid #cfe1ff;margin-bottom:14px}.whatsapp{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:50%;background:#25D366;color:white;display:grid;place-items:center;box-shadow:0 10px 30px #0003;z-index:30}.whatsapp svg{width:32px;height:32px}.accountgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.accountgrid button{grid-column:1/-1}.loginbody{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef4ff,#f8fbff)}.loginbox{width:min(430px,calc(100% - 32px));background:#fff;padding:34px;border-radius:22px;box-shadow:0 20px 60px #16325c20}.loginbox form{display:grid;gap:10px;margin:22px 0}.loginbrand{margin-bottom:24px}@media(max-width:700px){.accountgrid{grid-template-columns:1fr}.whatsapp{right:14px;bottom:14px}}

/* V8.2 - independent scrollable sidebar */
@media(min-width:1001px){
  aside{height:100vh;overflow:hidden;padding-bottom:20px}
  aside .brand{flex:0 0 auto}
  aside nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;margin-top:32px;padding-right:7px;padding-bottom:18px;scrollbar-width:thin;scrollbar-color:#60718d transparent}
  aside nav::-webkit-scrollbar{width:6px}
  aside nav::-webkit-scrollbar-track{background:transparent}
  aside nav::-webkit-scrollbar-thumb{background:#60718d;border-radius:999px}
  aside nav::-webkit-scrollbar-thumb:hover{background:#8192ad}
  aside .foot{flex:0 0 auto;margin-top:10px;padding:14px 10px 0;border-top:1px solid rgba(255,255,255,.08)}
}
.callout{padding:14px 16px;border:1px solid #cfe0f5;background:#f4f8fe;border-radius:14px;margin-bottom:18px;line-height:1.55;color:#41546f}.muted{color:#6f7f95}.mini-kpis>div{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;background:#fff;border:1px solid #dbe4ef;border-radius:14px}.mini-kpis>div span{color:#6f7f95}
/* V8.5 dashboard alignment */
.dashboard-grid{grid-template-columns:1fr;justify-items:center}
.dashboard-grid>.panel{width:100%}
.dashboard-cashflow{max-width:1180px;margin-left:auto;margin-right:auto}
.dashboard-cashflow .panel-title{text-align:left}
.dashboard-cashflow .chart{width:min(100%,1050px);margin:0 auto;justify-content:center}
.dashboard-cashflow .legend{justify-content:center}
.dashboard-grid>.breakdown{max-width:1180px;margin-left:auto;margin-right:auto}
.debt-progress{min-width:150px}.debt-progress .bar{margin:6px 0 4px}.debt-activity{margin-top:20px}

/* V8.5.1 centered analytics + debt linking */
.analytics-cashflow{max-width:1180px;margin-left:auto;margin-right:auto}
.analytics-cashflow-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:18px;margin-bottom:18px}
.analytics-cashflow-head h2{grid-column:2;text-align:center;margin:0;font-size:28px}
.analytics-cashflow-head form{grid-column:3;justify-self:end;display:flex;grid-template-columns:110px auto;gap:8px;align-items:end}
.analytics-cashflow-head form input{margin:0}.analytics-cashflow-head form button{grid-column:auto}
.analytics-cashflow .table-wrap{width:100%;margin:0 auto}
.debt-actions{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;gap:7px;align-items:center;min-width:430px}
.debt-actions select{margin:0;padding:9px}.debt-actions .smallbtn{padding:9px 11px}.secondary{background:#49617f}
@media(max-width:800px){.analytics-cashflow-head{grid-template-columns:1fr}.analytics-cashflow-head h2,.analytics-cashflow-head form{grid-column:1;justify-self:center}.debt-actions{grid-template-columns:1fr;min-width:240px}}
/* V8.6 transaction editing, flexible calculation engine, subcategory analytics, net worth trend */
.calc-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr .6fr auto;gap:10px;align-items:end;margin:18px 0}.calc-grid input,.calc-grid select{margin:0}.calc-grid button{grid-column:auto}.nw-chart{height:230px;display:flex;align-items:end;gap:14px;overflow-x:auto;padding:20px 10px 8px;border:1px solid #e3eaf3;border-radius:14px;background:#fbfdff;margin:16px 0 24px}.nw-col{min-width:72px;display:flex;flex-direction:column;align-items:center;justify-content:end;height:100%}.nw-bar{width:38px;background:linear-gradient(180deg,#2d7ff9,#58b6ff);border-radius:8px 8px 3px 3px;min-height:8px}.nw-bar.negative{background:linear-gradient(180deg,#e5484d,#ff8b8f)}.nw-value{font-size:10px;font-weight:800;color:#50627c;margin-bottom:6px}.nw-col small{margin-top:6px;color:#7b8799}.subcat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.subcat-item{padding:14px;border:1px solid #e0e7f0;border-radius:12px;background:#fbfdff}.subcat-item b{display:block;margin-bottom:5px}.subcat-item span{color:#6d7b91}@media(max-width:1100px){.calc-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.calc-grid{grid-template-columns:1fr}}


/* V8.7 — Template 4 Professional Premium + Logo 7 */
:root{--premium-blue:#1769e0;--premium-cyan:#20a7e8;--premium-green:#16a66a;--premium-purple:#7557e8}
body{background:radial-gradient(circle at 80% -10%,#e6f4ff 0,transparent 28%),linear-gradient(180deg,#f7faff,#f2f6fb);}
aside{background:linear-gradient(180deg,#071a35 0%,#0b2448 58%,#081a32 100%);border-right:1px solid rgba(255,255,255,.05)}
.logo7{width:52px;height:52px!important;padding:7px!important;border-radius:15px!important;background:linear-gradient(145deg,#fff,#eef6ff)!important;color:#1769e0!important;display:grid;place-items:center}.logo7 svg{width:40px;height:40px}
.brand b{line-height:1.05}.brand small{display:inline-block;margin-top:7px}.version{background:linear-gradient(135deg,#1769e0,#20a7e8)}
nav a{transition:transform .22s ease,background .22s ease,box-shadow .22s ease}nav a:hover{transform:translateX(5px)}nav a.active{background:linear-gradient(100deg,#1769e0,#1d82e8);box-shadow:0 10px 25px rgba(23,105,224,.24)}
.panel,.card,.mini-kpis a,.goal-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.panel:hover,.card:hover,.goal-card:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(20,55,100,.10);border-color:#cddff3}
.premium-hero{position:relative;overflow:hidden;min-height:245px;margin:0 0 24px;padding:38px 42px;border-radius:25px;background:linear-gradient(115deg,rgba(6,35,72,.96),rgba(18,93,164,.86)),radial-gradient(circle at 80% 20%,#4dc1ff,transparent 34%);color:white;box-shadow:0 20px 45px rgba(16,66,125,.18)}
.premium-hero:before,.premium-hero:after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.premium-hero:before{width:260px;height:260px;right:-70px;top:-100px}.premium-hero:after{width:150px;height:150px;right:160px;bottom:-100px}.premium-hero h2{font-size:38px;letter-spacing:-1px;margin:10px 0;color:#fff}.premium-hero p{color:#dcecff;max-width:650px;font-size:16px}.hero-kicker{font-size:11px;font-weight:900;letter-spacing:2.4px;color:#83d7ff}.hero-actions{display:flex;gap:18px;align-items:center;margin-top:25px}.hero-btn{background:#fff;color:#0e5fc1;text-decoration:none;font-weight:800;padding:12px 18px;border-radius:11px;box-shadow:0 8px 20px #001c3d33;transition:.2s}.hero-btn:hover{transform:translateY(-2px)}.hero-link{color:#fff;text-decoration:none;font-weight:800}.hero-mark{position:absolute;right:45px;bottom:38px;text-align:right;color:#cfeaff}.hero-mark span,.hero-mark b{display:block}.hero-mark b{font-size:18px;color:#fff;margin-top:5px}
.cards .card:nth-child(1):after{background:linear-gradient(90deg,#16a66a,#53d59c)}.cards .card:nth-child(2):after{background:linear-gradient(90deg,#e5484d,#ff8b8f)}.cards .card:nth-child(3):after{background:linear-gradient(90deg,#1769e0,#4eb7ff)}.cards .card:nth-child(4):after{background:linear-gradient(90deg,#7557e8,#a58aff)}
.profile-layout{display:grid;grid-template-columns:240px minmax(0,1.3fr) minmax(320px,.8fr);gap:20px;align-items:start}.profile-card{text-align:center;position:sticky;top:24px}.profile-avatar{width:86px;height:86px;margin:5px auto 14px;border-radius:50%;display:grid;place-items:center;font-size:32px;font-weight:900;color:white;background:linear-gradient(135deg,#1769e0,#7557e8);box-shadow:0 12px 25px #1769e044}.profile-card h2{margin-bottom:2px}.role-chip{padding:9px 14px;border-radius:999px;background:#eaf3ff;color:#155cb6;font-weight:800}.profile-form{grid-template-columns:1fr 1fr}.profile-form textarea{width:100%;border:1px solid #dfe5ee;border-radius:10px;padding:12px;font:inherit;resize:vertical}.password-form{grid-template-columns:1fr}.password-form button{grid-column:1}.primary{background:linear-gradient(135deg,#1769e0,#1688e8)!important;box-shadow:0 8px 20px #1769e02b}
@keyframes premiumIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}main>section,main>header{animation:premiumIn .38s ease both}.card:nth-child(2){animation-delay:.04s}.card:nth-child(3){animation-delay:.08s}.card:nth-child(4){animation-delay:.12s}
@media(max-width:1150px){.profile-layout{grid-template-columns:1fr 1fr}.profile-card{grid-column:1/-1;position:static}.hero-mark{display:none}}@media(max-width:700px){.profile-layout,.profile-form{grid-template-columns:1fr}.premium-hero{padding:28px 24px;min-height:auto}.premium-hero h2{font-size:30px}.hero-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* V8.7.1 — closer Template 4 composition + profile photos */
.premium-hero{min-height:190px;padding:30px 38px;margin-bottom:18px}.premium-hero h2{font-size:34px;margin:7px 0}.premium-hero p{margin:7px 0}.hero-actions{margin-top:18px}.cards{gap:14px}.cards .card{padding:19px 20px}.insight-cards{margin-top:14px}.premium-overview-grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(280px,.9fr);gap:18px;margin:18px 0}.premium-monthly{max-width:none!important;margin:0!important}.premium-monthly .panel-title h2{font-size:22px}.financial-health{text-align:center}.financial-health h2{margin-bottom:8px}.health-ring{--p:0;width:170px;height:170px;margin:18px auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#19a86b calc(var(--p)*1%),#e8eef6 0);position:relative}.health-ring:after{content:"";position:absolute;width:132px;height:132px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px #edf1f6}.health-ring>div{z-index:1;display:grid}.health-ring strong{font-size:32px;color:#132d52}.health-ring span{font-size:12px;color:#77869a}.health-copy{font-size:13px;color:#718198;line-height:1.5}.health-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.health-mini div{background:#f6f9fd;border:1px solid #e4ebf4;border-radius:12px;padding:10px}.health-mini span,.health-mini b{display:block}.health-mini span{font-size:11px;color:#7a879a}.quick-actions{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:0 0 18px}.quick-actions a{text-decoration:none;color:#233a5e;background:#fff;border:1px solid #dde7f2;border-radius:16px;padding:14px 8px;text-align:center;box-shadow:0 8px 24px rgba(25,65,110,.06);transition:.22s}.quick-actions a:hover{transform:translateY(-4px);box-shadow:0 15px 30px rgba(23,105,224,.13);border-color:#bcd5f4}.quick-actions b{display:grid;place-items:center;width:36px;height:36px;margin:0 auto 7px;border-radius:11px;background:#eaf3ff;color:#1769e0;font-size:18px}.quick-actions span{font-size:12px;font-weight:800}.premium-breakdown{margin-bottom:18px}.avatar-shell{position:relative;width:112px;height:112px;margin:4px auto 15px}.profile-photo,.avatar-shell .profile-avatar{width:112px;height:112px;border-radius:50%;object-fit:cover;margin:0;border:5px solid #fff;box-shadow:0 14px 32px rgba(23,105,224,.22)}.avatar-shell .profile-avatar{box-sizing:border-box}.avatar-dot{position:absolute;right:7px;bottom:8px;width:20px;height:20px;border-radius:50%;background:#22c875;border:4px solid #fff}.avatar-form{margin-top:16px}.upload-photo{display:block;background:linear-gradient(135deg,#1769e0,#1688e8);color:#fff;border-radius:10px;padding:10px 12px;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px #1769e026}.upload-photo input{display:none}.remove-photo-form{margin-top:7px}.text-danger{border:0;background:transparent;color:#cf3e48;font-weight:800;cursor:pointer}.photo-help{display:block;margin-top:7px;color:#8794a7}.foot-user{display:flex;align-items:center;gap:9px;margin-bottom:8px}.foot-user img,.foot-user>span{width:34px;height:34px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:#2b77df;color:#fff;font-weight:900}.foot-user div{min-width:0}.foot-user b,.foot-user small{display:block}.foot-user small{font-size:10px;color:#91a5c3;margin-top:2px}
@media(max-width:1100px){.premium-overview-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.quick-actions{grid-template-columns:repeat(2,1fr)}.premium-hero{padding:25px 22px}.health-ring{width:150px;height:150px}.health-ring:after{width:116px;height:116px}}


/* [CSS-QUICK-ACTIONS] Quick Actions + Where Money Went category styling */
/* V8.7.2 - Template 4 premium quick actions and allocation tuning */
.premium-quick-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:2px 0 20px}
.qa-card{--qa:#1769e0;--qa-soft:#eaf3ff;position:relative;min-height:108px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:16px 15px;text-decoration:none;color:#132d52;background:linear-gradient(145deg,#fff 55%,var(--qa-soft));border:1px solid #e0e9f4;border-radius:18px;box-shadow:0 9px 24px rgba(31,68,111,.07);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.qa-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--qa);opacity:.9}.qa-card:after{content:"";position:absolute;width:72px;height:72px;border-radius:50%;right:-30px;top:-32px;background:var(--qa);opacity:.07;transition:.25s}
.qa-card:hover{transform:translateY(-5px);box-shadow:0 17px 34px rgba(27,78,132,.14);border-color:color-mix(in srgb,var(--qa) 32%,#dfe8f3)}.qa-card:hover:after{transform:scale(1.35);opacity:.11}
.qa-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--qa-soft);color:var(--qa);font-size:20px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75);transition:transform .22s ease}.qa-card:hover .qa-icon{transform:scale(1.08) rotate(-3deg)}
.qa-copy{margin-top:10px}.qa-copy strong,.qa-copy small{display:block}.qa-copy strong{font-size:13px;line-height:1.2}.qa-copy small{font-size:10px;color:#7c8ba0;margin-top:4px;line-height:1.3}.qa-card>i{position:absolute;right:13px;bottom:12px;font-style:normal;color:var(--qa);font-weight:900;opacity:.55;transition:.2s}.qa-card:hover>i{transform:translateX(3px);opacity:1}
.qa-transactions{--qa:#1976e9;--qa-soft:#eaf3ff}.qa-budget{--qa:#00a6c8;--qa-soft:#e7f9fc}.qa-savings{--qa:#16a86b;--qa-soft:#e9f8f1}.qa-goals{--qa:#7a55e8;--qa-soft:#f1edff}.qa-debt{--qa:#ef6b5c;--qa-soft:#fff0ee}.qa-networth{--qa:#12a889;--qa-soft:#e8f8f5}
.premium-breakdown .barrow .bar{height:10px;background:#edf2f7;border-radius:999px;overflow:hidden}.premium-breakdown .barrow .bar i{height:100%;border-radius:999px;background:linear-gradient(90deg,#1976e9,#57b4ff);box-shadow:none}.premium-breakdown .barrow:nth-of-type(3) .bar i{background:linear-gradient(90deg,#16a86b,#63d7a2)}.premium-breakdown .barrow:nth-of-type(4) .bar i{background:linear-gradient(90deg,#f0a62e,#ffd36c)}.premium-breakdown .barrow:nth-of-type(5) .bar i{background:linear-gradient(90deg,#ef6b5c,#ff9a8f)}.premium-breakdown .barrow:nth-of-type(6) .bar i{background:linear-gradient(90deg,#7a55e8,#a990ff)}.premium-breakdown .barrow:nth-of-type(7) .bar i{background:linear-gradient(90deg,#12a889,#5ad3bc)}
@media(max-width:1180px){.premium-quick-actions{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.premium-quick-actions{grid-template-columns:repeat(2,1fr)}.qa-card{min-height:100px}}
@media(prefers-reduced-motion:reduce){.qa-card,.qa-icon,.qa-card:after,.qa-card>i{transition:none}}


/* [CSS-TEMPLATE4] Template 4 banner, KPI strip, overview and top-shell experiments */
/* V8.7.3 — Template 4 full dashboard shell */
body:has(.dashboard-main){display:block;background:#f5f8fc}.dashboard-main{margin-left:0!important;padding:24px 28px 55px;max-width:1440px;margin-right:auto!important;margin-left:auto!important}.dashboard-main>header{display:none}.top-shell{height:74px;background:#fff;border-bottom:1px solid #e5edf5;display:flex;align-items:center;padding:0 max(26px,calc((100vw - 1440px)/2 + 28px));position:sticky;top:0;z-index:80;box-shadow:0 4px 18px rgba(31,68,111,.05)}.top-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#153154;white-space:nowrap}.top-brand .logo7{width:42px;height:42px;display:grid;place-items:center;background:#f3f8fd;border-radius:11px}.top-brand .logo7 svg{width:34px;height:34px;color:#1769e0}.top-brand b{font-size:18px}.top-brand em{font-style:normal;font-size:9px;font-weight:900;background:#1688e8;color:#fff;border-radius:999px;padding:4px 7px}.top-nav{display:flex;align-items:center;gap:5px;margin-left:auto;margin-right:20px}.top-nav>a,.top-menu>button{border:0;background:transparent;text-decoration:none;color:#50657f;font:inherit;font-size:13px;font-weight:800;padding:11px 12px;border-radius:10px;cursor:pointer}.top-nav>a:hover,.top-nav>a.active,.top-menu>button:hover{color:#1769e0;background:#eef6ff}.top-menu{position:relative}.top-menu>div{display:none;position:absolute;right:0;top:42px;min-width:190px;padding:8px;background:#fff;border:1px solid #e2eaf3;border-radius:13px;box-shadow:0 16px 35px rgba(23,54,90,.16)}.top-menu:hover>div,.top-menu:focus-within>div{display:grid}.top-menu>div a{padding:9px 11px;text-decoration:none;color:#435a76;font-size:12px;font-weight:700;border-radius:8px}.top-menu>div a:hover{background:#eef6ff;color:#1769e0}.top-user{display:flex;align-items:center;gap:12px}.top-user .bell{font-size:10px;color:#ef4d5d;border:1px solid #dce6f1;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.top-user img,.top-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:linear-gradient(135deg,#1769e0,#7557e8);color:#fff;font-weight:900;border:3px solid #fff;box-shadow:0 4px 14px rgba(31,68,111,.18)}
.template4-hero{height:285px;min-height:0!important;padding:0!important;border-radius:18px!important;margin:0 0 0!important;background:#8fc8eb!important;box-shadow:0 16px 38px rgba(31,68,111,.14)!important}.template4-hero:before,.template4-hero:after{display:none!important}.hero-sky{position:absolute;inset:0;background:linear-gradient(#91caec 0%,#c9e4f3 55%,#eaf3f8 100%)}.hero-sky:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.7),transparent 22%),linear-gradient(90deg,rgba(36,102,155,.12),transparent 45%,rgba(36,102,155,.08))}.mountains{position:absolute;inset:42px 0 0}.mountains svg{width:100%;height:100%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,72,118,.38),rgba(30,85,128,.06) 52%,rgba(25,72,111,.18))}.hero-copy{position:absolute;left:42px;top:54px;text-shadow:0 2px 12px rgba(15,52,83,.25)}.hero-copy h2{font-size:38px!important;line-height:1.05;margin:0 0 15px!important;letter-spacing:-1px}.hero-copy p{font-size:15px!important;color:#f4fbff!important}.hero-quote{position:absolute;right:48px;top:74px;text-align:center;color:#fff;text-shadow:0 2px 12px rgba(15,52,83,.3)}.hero-quote span,.hero-quote b{display:block;font-size:18px;font-style:italic}.hero-quote b{margin-top:8px;font-size:20px}.dashboard-main>.cards:first-of-type{position:relative;z-index:4;margin:-34px 22px 18px;grid-template-columns:repeat(4,1fr);gap:0;background:#fff;border-radius:15px;box-shadow:0 14px 30px rgba(31,68,111,.12);overflow:hidden}.dashboard-main>.cards:first-of-type .card{border:0;border-radius:0;box-shadow:none;padding:18px 22px;min-height:86px;text-align:center;border-right:1px solid #e5ebf2}.dashboard-main>.cards:first-of-type .card:last-child{border-right:0;background:#fff;color:inherit}.dashboard-main>.cards:first-of-type .card:after{display:none}.dashboard-main>.cards:first-of-type label{font-size:11px}.dashboard-main>.cards:first-of-type strong{font-size:23px;margin:5px 0}.dashboard-main>.cards:first-of-type small{font-size:10px}.dashboard-main>.cards:first-of-type .card:nth-child(1) strong{color:#16a86b}.dashboard-main>.cards:first-of-type .card:nth-child(2) strong{color:#ef5350}.dashboard-main>.cards:first-of-type .card:nth-child(3) strong{color:#1769e0}.dashboard-main>.cards:first-of-type .card:nth-child(4) strong{color:#7557e8}.premium-overview-grid{grid-template-columns:minmax(0,1.65fr) minmax(290px,.75fr);margin:16px 0}.premium-monthly,.financial-health{border-radius:16px!important}.premium-quick-actions{margin-top:16px}.qa-card{min-height:92px;align-items:center;text-align:center;padding:12px 8px}.qa-card:before,.qa-card:after,.qa-card>i,.qa-copy small{display:none}.qa-copy{margin-top:7px}.qa-icon{width:38px;height:38px;border-radius:12px}.qa-copy strong{font-size:12px}.sitefooter{margin-top:28px}
@media(max-width:900px){.top-nav{display:none}.top-shell{padding:0 18px}.dashboard-main{padding:18px}.dashboard-main>.cards:first-of-type{margin:-24px 10px 16px;grid-template-columns:repeat(2,1fr)}.dashboard-main>.cards:first-of-type .card:nth-child(2){border-right:0}.template4-hero{height:250px}.hero-copy{left:25px;top:45px}.hero-copy h2{font-size:31px!important}.hero-quote{display:none}.premium-overview-grid{grid-template-columns:1fr}}
@media(max-width:560px){.top-brand b{font-size:15px}.top-brand em{display:none}.dashboard-main>.cards:first-of-type{grid-template-columns:1fr 1fr}.template4-hero{height:225px}.hero-copy h2{font-size:28px!important}.mountains{inset:60px -100px 0 -100px}}


/* [CSS-HYBRID-DASHBOARD] ACTIVE dashboard combination: dark sidebar + Template 4 banner */
/* V8.7.4 — Hybrid Template 4 dashboard: premium banner + original dark sidebar */
body:has(.dashboard-main){display:block;background:radial-gradient(circle at 80% -10%,#e6f4ff 0,transparent 28%),linear-gradient(180deg,#f7faff,#f2f6fb)}
body:has(.dashboard-main) aside{display:flex!important}
.dashboard-main{margin-left:245px!important;margin-right:0!important;max-width:1700px!important;padding:34px 42px 55px!important}
.dashboard-main .template4-hero{margin-top:0!important;height:285px}
.dashboard-main>.cards:first-of-type{margin:-34px 22px 18px!important}
.dashboard-main .premium-overview-grid{margin-top:20px}
@media(min-width:1001px){body:has(.dashboard-main) aside{position:fixed;width:245px}}
@media(max-width:1000px){.dashboard-main{margin-left:0!important;padding:22px!important}.dashboard-main>.cards:first-of-type{margin:-24px 10px 16px!important}.dashboard-main .template4-hero{height:250px}}
@media(max-width:650px){.dashboard-main{padding:16px!important}}

/* =========================================================
   [CSS-WEBSITE-CUSTOMIZATION] V8.7.6 Admin-controlled banner
========================================================= */
.template4-hero.custom-banner{background-size:cover;background-position:center;background-repeat:no-repeat}
.template4-hero.custom-banner .hero-sky,.template4-hero.custom-banner .mountains{display:none}
.template4-hero.custom-banner .hero-overlay{background:linear-gradient(90deg,rgba(5,23,45,.68),rgba(5,23,45,.16),rgba(5,23,45,.55))}
.banner-admin-preview{margin:12px 0;max-width:760px;border-radius:16px;overflow:hidden;border:1px solid #dce5ef}
.banner-admin-preview img{display:block;width:100%;max-height:220px;object-fit:cover}
.checkline{display:flex;gap:8px;align-items:center;margin:10px 0 18px}.checkline input{width:auto;margin:0}
/* V8.7.7 Tutorial Center */
.tutorial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.tutorial-card{border:1px solid #e4e9f0;border-radius:16px;padding:18px;background:#fff}.tutorial-card h2{margin:10px 0 6px}.tutorial-pdf{width:100%;height:430px;border:1px solid #dde3eb;border-radius:10px;background:#f6f8fb}.tutorial-video{width:100%;max-height:480px;border-radius:10px;background:#07111f}textarea{width:100%;box-sizing:border-box}

/* V8.7.7.11 - Account Management clarity redesign */
.account-management-table{min-width:1120px}.account-management-table td{vertical-align:top}.account-summary{min-width:155px}.manage-cell{min-width:245px}.manage-box{background:#f7f9fc;border:1px solid #dce6f2;border-radius:14px;padding:14px;display:grid;gap:10px;box-shadow:0 4px 14px rgba(20,55,100,.04)}.manage-box-title{font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase;color:#5d708d}.manage-box .current-value{font-weight:850;color:#142844}.manage-box .current-value small{display:block;margin-top:3px;font-weight:500;color:#78879a}.manage-box form{display:grid;grid-template-columns:1fr;gap:8px;margin:0}.manage-box label{font-size:11px;color:#657690;font-weight:800}.manage-box select,.manage-box input{margin:0;min-width:0;width:100%;padding:10px 11px;background:#fff;border:1px solid #cdd9e8}.manage-box .smallbtn{width:100%;padding:10px 12px}.manage-box .danger-action{background:#fff;color:#a8333d;border:1px solid #efcbd0}.manage-box .danger-action:hover{background:#fff5f6}.status-cell{min-width:90px}.status-cell .tag{display:inline-block}.reset-password-form{border-top:1px solid #e2e9f2;padding-top:10px!important}.account-help{font-size:11px;color:#7b899c;line-height:1.4}.account-management-table th{white-space:nowrap}
@media(max-width:900px){.account-management-table{min-width:980px}.manage-cell{min-width:220px}}

/* V8.7.7.12 - Mobile Responsive + Installable PWA */
.mobile-topbar,.mobile-close,.mobile-nav-overlay{display:none}
@media(max-width:1000px){
  body{padding-top:64px;overflow-x:hidden}
  .mobile-topbar{display:flex;position:fixed;z-index:1002;top:0;left:0;right:0;height:64px;align-items:center;gap:12px;padding:0 14px;background:linear-gradient(100deg,#071a35,#0b2448);color:#fff;box-shadow:0 5px 18px rgba(7,26,53,.18)}
  .mobile-menu-btn,.mobile-close{display:grid;place-items:center;border:0;background:rgba(255,255,255,.1);color:#fff;width:40px;height:40px;padding:0;border-radius:11px;font-size:23px}
  .mobile-brand{font-weight:900;font-size:16px;flex:1}.mobile-profile{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#1769e0;color:#fff;text-decoration:none;font-weight:900;border:2px solid rgba(255,255,255,.75)}
  aside,body:has(.dashboard-main) aside{display:flex!important;position:fixed!important;z-index:1004!important;top:0!important;bottom:0!important;left:0!important;width:min(86vw,310px)!important;height:100dvh!important;padding:26px 16px!important;transform:translateX(-105%);transition:transform .25s ease;overflow-y:auto;box-shadow:16px 0 45px rgba(4,20,40,.25)}
  body.mobile-nav-open aside{transform:translateX(0)}
  .mobile-close{position:absolute;right:12px;top:12px}.mobile-nav-overlay{position:fixed;z-index:1003;inset:0;background:rgba(4,15,30,.5);backdrop-filter:blur(2px)}body.mobile-nav-open .mobile-nav-overlay{display:block}
  aside .brand{justify-content:flex-start;padding-right:42px}aside nav{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;width:100%;margin-top:28px!important;padding:0!important}aside nav a{white-space:normal!important;padding:12px 14px!important}aside .foot{display:block!important;margin-top:28px!important;padding-bottom:16px}
  main,.dashboard-main{margin-left:0!important;width:100%!important;max-width:none!important;padding:18px 14px 38px!important}
  header{margin-bottom:18px}h1{font-size:28px}.panel,.card{border-radius:15px;padding:17px}.cards,.grid,.goalgrid,.profile-layout,.premium-overview-grid{grid-template-columns:1fr!important}
  form,.accountgrid{grid-template-columns:1fr!important}.wide,form button,.accountgrid button{grid-column:1!important}
  input,select,textarea,button{font-size:16px!important;min-height:44px}
  .table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}.table-wrap table{min-width:720px}
  .account-management-table{min-width:960px!important}.manage-cell{min-width:220px!important}
  .premium-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.qa-card{min-width:0!important}
  .whatsapp{width:50px;height:50px;right:15px;bottom:18px}.whatsapp svg{width:28px;height:28px}
  .sitefooter{padding-bottom:12px}
  .profile-card{position:static!important}.tutorial-grid{grid-template-columns:1fr!important}.tutorial-pdf{height:65vh}
  .dashboard-main .template4-hero{height:230px!important}.hero-copy{left:22px!important;right:20px;top:38px!important}.hero-copy h2{font-size:28px!important}.dashboard-main>.cards:first-of-type{grid-template-columns:repeat(2,1fr)!important;margin:-24px 8px 16px!important}.dashboard-main>.cards:first-of-type .card{padding:14px 10px!important}
}
@media(max-width:520px){
  main,.dashboard-main{padding:14px 10px 34px!important}.cards{grid-template-columns:1fr!important}.premium-quick-actions{grid-template-columns:1fr 1fr!important}.qa-copy strong{font-size:11px!important}
  .dashboard-main>.cards:first-of-type{grid-template-columns:1fr 1fr!important}.dashboard-main>.cards:first-of-type strong{font-size:19px!important}.template4-hero{border-radius:14px!important}.hero-copy h2{font-size:24px!important}.hero-copy p{font-size:13px!important}
  .monthnav{gap:8px;padding:11px}.monthnav a{font-size:12px}.filter{width:100%;flex-wrap:wrap}.filter input,.filter select{width:100%!important}
}
@media(prefers-reduced-motion:reduce){aside{transition:none!important}}

/* V8.7.7.12.1 Mobile/PWA Logout Fix */
.mobile-signout-link{display:none}
@media(max-width:1000px){
  aside nav .mobile-signout-link{display:flex!important;align-items:center;gap:8px;margin-top:4px;background:rgba(220,53,69,.13);border:1px solid rgba(255,120,130,.22);color:#ffd9dc!important;font-weight:900}
  aside nav .mobile-signout-link:hover{background:rgba(220,53,69,.24);color:#fff!important}
  aside .foot{flex:0 0 auto!important;margin-top:20px!important;padding:14px 10px 20px!important;border-top:1px solid rgba(255,255,255,.08)}
}

/* V8.7.7.12.2 - avoid duplicate mobile sign out */
.desktop-foot-links{display:inline}
@media(max-width:1000px){.desktop-foot-links{display:none!important}}


/* V8.7.7.12.4 - consistent sidebar icons */
aside nav a{display:flex;align-items:center;gap:12px}
aside nav a .nav-icon{width:22px;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:17px;line-height:1;color:#9fc8ff;font-weight:700}
aside nav a.active .nav-icon{color:#fff}
@media(max-width:1000px){aside nav a .nav-icon{width:24px;min-width:24px;font-size:18px}.desktop-foot-links{display:none!important}}

/* V8.7.7.13.0 Notification Center */
.notification-nav{position:relative}.notification-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e33;color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center}.notification-list{display:grid;gap:10px}.notification-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;border:1px solid #dce4ef;border-radius:12px}.notification-item.unread{border-left:4px solid #2563eb;background:#f7faff}.notification-item h3{margin:0 0 5px}.notification-item p{margin:0 0 5px}.notification-new{font-size:10px;padding:3px 6px;border-radius:999px;background:#2563eb;color:#fff}@media(max-width:600px){.notification-item{align-items:flex-start;flex-direction:column}.notification-item form,.notification-item button{width:100%}}

/* V8.7.7.13.0 Notification Center */
.notification-nav{position:relative}.notification-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e33;color:#fff;font-size:11px;display:inline-flex;align-items:center;justify-content:center}.notification-list{display:grid;gap:10px}.notification-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;border:1px solid #dce4ef;border-radius:12px}.notification-item.unread{border-left:4px solid #2563eb;background:#f7faff}.notification-item h3{margin:0 0 5px}.notification-item p{margin:0 0 5px}.notification-new{font-size:10px;padding:3px 6px;border-radius:999px;background:#2563eb;color:#fff}@media(max-width:600px){.notification-item{align-items:flex-start;flex-direction:column}.notification-item form,.notification-item button{width:100%}}

/* V8.7.7.13.1 Mobile amount, contribution and success-message fixes */
.cards .card strong,.goal-card>strong,.goal>strong{display:block;max-width:100%;overflow:visible;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.app-toast{position:fixed;z-index:5000;left:50%;top:82px;transform:translate(-50%,-16px);background:#0b2448;color:#fff;padding:12px 18px;border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.22);font-weight:800;opacity:0;pointer-events:none;transition:.2s;max-width:min(90vw,520px);text-align:center}.app-toast.show{opacity:1;transform:translate(-50%,0)}
.reminder-option{display:flex!important;align-items:center;gap:10px}.reminder-option input{width:auto!important;min-height:0!important;margin:0}
@media(max-width:600px){
 .cards .card{min-width:0}.cards .card strong{font-size:clamp(20px,7vw,34px)!important;line-height:1.12;letter-spacing:-.5px}
 .goal-card .inline{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(145px,1.15fr)!important;gap:10px!important;align-items:stretch}
 .goal-card .inline input[type=number]{grid-column:1/-1!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
 .goal-card .inline input[type=date]{grid-column:1!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
 .goal-card .inline button{grid-column:2!important;width:100%!important;white-space:normal!important}
 .goal-card>strong,.goal>strong{font-size:clamp(18px,5.7vw,28px)!important;line-height:1.2}
}

/* V8.7.7.13.1.2 clean confirmation + contribution sizing */
.app-confirm[hidden]{display:none!important}.app-confirm{position:fixed;inset:0;z-index:99999;background:rgba(7,20,40,.55);display:grid;place-items:center;padding:20px}.app-confirm-card{width:min(430px,92vw);background:#fff;border-radius:18px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.25)}.app-confirm-message{font-size:17px;color:#14233d;line-height:1.5;margin-bottom:20px}.app-confirm-actions{display:flex;justify-content:flex-end;gap:10px}.goal-card .inline input[type=number]{min-width:120px!important;flex:1.2!important}.goal-card .inline input[type=date]{min-width:155px!important}@media(max-width:650px){.goal-card .inline{grid-template-columns:1fr!important}.goal-card .inline input,.goal-card .inline button{grid-column:1!important;width:100%!important}}

/* V8.7.7.13.1.3 Goal Contribution Responsive Layout */
.goal-card .inline{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.28fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  width:100%!important;
}
.goal-card .inline input[type=number]{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.goal-card .inline input[type=date]{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.goal-card .inline button{
  grid-column:1/-1!important;
  grid-row:2!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  white-space:normal!important;
  box-sizing:border-box!important;
}
@media(max-width:650px){
  .goal-card .inline{grid-template-columns:1fr!important}
  .goal-card .inline input[type=number]{grid-column:1!important;grid-row:1!important}
  .goal-card .inline input[type=date]{grid-column:1!important;grid-row:2!important}
  .goal-card .inline button{grid-column:1!important;grid-row:3!important}
}

/* V8.7.7.13.1.11 - Transactions server-side pagination */
.transaction-search{display:flex;grid-template-columns:minmax(180px,320px) auto auto;gap:8px;align-items:end;margin:0}.transaction-search input{margin:0}.transaction-search button,.transaction-search .smallbtn{grid-column:auto;white-space:nowrap}.transaction-pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding-top:20px}.transaction-pagination .page-link{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #d8e0eb;border-radius:10px;text-decoration:none;color:#16223a;background:#fff;font-weight:800}.transaction-pagination .page-link.active{background:#16223a;color:#fff;border-color:#16223a}.transaction-pagination .disabled{opacity:.4;pointer-events:none}.transaction-pagination span{color:#7a879b}@media(max-width:650px){.panel-title{align-items:flex-start;flex-direction:column}.transaction-search{width:100%;grid-template-columns:1fr auto auto}.transaction-search input{min-width:0}}
