


#assistant .chat{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  overflow-y:auto;
  overflow-x:hidden;
}
#assistant .bot,
#assistant .user{
  flex:0 0 auto;
}
#assistant .bot{align-self:flex-start}
#assistant .user{align-self:flex-end}


#assistant .suggestions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:5px;
  overflow:visible;
  margin:7px 0 8px;
  padding:0;
}
#assistant .suggestions button{
  width:100%;
  min-height:29px;
  padding:6px 10px;
  border-radius:10px;
  text-align:left;
  font-size:9px;
  line-height:1.15;
}


#assistant .assistant-head{margin-bottom:12px}
#assistant .assistant-brand h1{font-size:23px!important}
#assistant .assistant-brand .muted{font-size:9px!important}
#assistant .chat{height:calc(100dvh - 420px);min-height:270px;max-height:365px;padding:12px}
#assistant .bot,
#assistant .user{font-size:10.5px;line-height:1.35;padding:8px 10px;margin:5px 0;max-width:76%}
#assistant .bot-avatar{width:22px;height:22px;flex-basis:22px}
#assistant .bot-avatar svg{width:14px;height:14px}
#assistant .chat-input input{height:40px;font-size:12px;padding:9px 11px}
#assistant .chat-input button{width:40px;min-width:40px;height:40px}
#assistant .chat-input button svg{width:18px;height:18px}


.dark .hero h1,
.dark .hero .muted,
.dark .balance-kicker,
.dark .balance-card .card-label,
.dark .balance-meta,
.dark .balance-meta button,
.dark .stat-title,
.dark .stat-card strong,
.dark .stat-card small,
.dark .section-head h2,
.dark .section-head .muted,
.dark .quick-copy input,
.dark .examples,
.dark .insight-card h3,
.dark .insight-card p,
.dark .page>h1,
.dark .page>.muted,
.dark .transaction,
.dark .tx-info b,
.dark .analysis-card,
.dark .analysis-card strong,
.dark .analysis-card b,
.dark .category-list,
.dark .barrow,
.dark #assistant .assistant-brand h1,
.dark #assistant .assistant-brand .muted,
.dark #assistant .suggestions button,
.dark #assistant .chat-input input,
.dark #assistant .bot,
.dark .nav-item small{
  color:#fff;
}

.dark .stat-icon.income{color:#22c55e;background:#102b22}
.dark .stat-icon.expense{color:#ff4d5f;background:#32151b}
.dark .stat-icon.income,
.dark .stat-icon.expense{font-size:16px;font-weight:900}


.stat-icon.income{color:#17a673!important}
.stat-icon.expense{color:#e05252!important}
.dark .stat-icon.income{color:#22c55e!important}
.dark .stat-icon.expense{color:#ff4d5f!important}


.dark .insight-card{background:linear-gradient(135deg,#0d1d33,#0b1627)!important;border-color:#21456f!important}
.dark .insight-icon{background:#112b4d!important;color:#6aaaff!important}
.dark .quick-add,
.dark .transactions,
.dark .stat-card,
.dark .analysis-card,
.dark .category-list,
.dark .progress-card,
.dark .goal-card{
  background:#0c1729!important;
  border-color:#1f3b61!important;
}
.dark .quick-buttons button{background:#0c1729;color:#fff}
.dark #assistant .suggestions button{background:#0d1c30;border-color:#234467;color:#fff}
.dark #assistant .chat-input input{background:#0d1c30;border-color:#234467;color:#fff}
.dark #assistant .chat-input input::placeholder{color:#9db0ca}
.dark .bottom-nav{background:rgba(7,16,31,.96);border-color:#1f3b61}

@media(max-width:480px){
  #assistant .chat{height:calc(100dvh - 400px);min-height:250px;max-height:330px}
  #assistant .assistant-head{margin-bottom:9px}
  #assistant .suggestions button{min-height:27px;font-size:8.5px;padding:5px 9px}
}



#assistant .suggestions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  overflow:visible;
  margin:7px 0 9px;
  padding:0;
}
#assistant .suggestions button{
  width:100%;
  min-width:0;
  min-height:30px;
  padding:6px 8px;
  border-radius:9px;
  white-space:normal;
  text-align:center;
  font-size:8.5px;
  line-height:1.15;
}
#assistant .suggestions button:last-child{
  grid-column:1 / -1;
  width:52%;
  justify-self:center;
}

.dark #assistant .suggestions button{
  color:#080b10!important;
  background:#fff!important;
  border-color:#d7e1ee!important;
}
.dark #assistant .suggestions button:hover{
  color:#080b10!important;
  border-color:#2d82ff!important;
}

.avatar svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
@media(max-width:480px){
  #assistant .suggestions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  #assistant .suggestions button{min-height:29px;font-size:8px;padding:5px 7px}
  #assistant .suggestions button:last-child{width:55%}
}



.brand-mark.custom-logo-slot{
  background:transparent!important;
  box-shadow:none!important;
  border:1px dashed var(--line);
  overflow:hidden;
}
.brand-mark.custom-logo-slot img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.dark .brand-mark.custom-logo-slot{border-color:#1f3b61}


.dark .balance-meta #resetBtn{
  color:#000!important;
  background:#fff!important;
}


.brand-intro{min-width:0}
.brand-intro>div:last-child{min-width:0}
.brand-name{line-height:1.15}
@media(max-width:480px){.brand-name{font-size:13px}}





:root{
  --wood-deep:#160b06;
  --wood-dark:#2a1309;
  --wood:#5a2c12;
  --wood-mid:#7a431e;
  --wood-light:#a96630;
  --gold:#e3ae5a;
  --gold-bright:#ffd987;
  --cream:#f4e2bf;
  --ink:#241207;
  --paper:#f8efe1;
  --paper-2:#ecd6b3;
  --line-gold:rgba(187,123,54,.52);
  --primary:#9b5b24;
  --primary2:#d99b48;
  --surface:#f6ead7;
  --surface2:#ead6b6;
  --text:#2d170b;
  --muted:#765b48;
  --line:#c99f71;
  --bg:#ead9c0;
  --shadow:0 12px 28px rgba(44,20,7,.18), inset 0 1px rgba(255,225,176,.35);
}
body{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,224,164,.55),transparent 34%),
    repeating-linear-gradient(7deg,rgba(91,48,20,.055) 0 1px,transparent 1px 5px),
    linear-gradient(135deg,#e8d6bb,#f7ecd9 46%,#e2caa9);
}
.app-shell{background:transparent}
.content{padding-top:22px;padding-bottom:12px}


.balance-card,.stat-card,.quick-add,.quick-buttons button,.insight-card,
.transactions,.progress-card,.goal-card,.analysis-card,.category-list,
.modal-card,.assistant-head,.chat,.suggestions button,.chat-input input{
  background:
    repeating-linear-gradient(6deg,rgba(255,216,158,.06) 0 1px,rgba(63,28,10,.035) 1px 3px,transparent 3px 7px),
    linear-gradient(145deg,#8b4c21 0%,#5b2c12 42%,#3d1b0a 100%)!important;
  color:var(--cream)!important;
  border:1px solid var(--line-gold)!important;
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,224,171,.25)!important;
}
.balance-card::before,.stat-card::before,.progress-card::before,.goal-card::before,
.analysis-card::before,.category-list::before,.transactions::before,.modal-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(43,17,5,.55), inset 0 1px 0 rgba(255,229,184,.22);
}
.stat-card,.progress-card,.goal-card,.analysis-card,.category-list,.modal-card{position:relative;overflow:hidden}


.brand-intro{display:flex;align-items:center;gap:12px;margin:0 2px 18px}
.brand-mark.custom-logo-slot{
  width:48px;height:48px;flex:0 0 48px;border-radius:50%!important;
  background:radial-gradient(circle,#5f3115,#241005)!important;
  border:2px solid var(--gold)!important;box-shadow:0 0 0 3px rgba(81,41,14,.32),0 8px 18px rgba(38,15,3,.24)!important;
}
.brand-mark.custom-logo-slot img{padding:3px;border-radius:50%;object-fit:contain}
.brand-name{font-size:18px!important;font-weight:850;color:#4a260f!important;text-shadow:0 1px rgba(255,255,255,.35)}
.brand-sub{color:#806047!important}
.hero{margin-bottom:18px}.eyebrow{color:#9a6b3f!important}.hero h1{color:#3b1d0b!important}.muted{color:#765b48!important}
.avatar{background:linear-gradient(145deg,#f6dfae,#c68a3d)!important;color:#3d1c08!important;border:1px solid #87501e;box-shadow:0 7px 18px rgba(68,29,6,.18)!important}


.balance-card{padding:21px;border-radius:26px!important;background:
  repeating-linear-gradient(5deg,rgba(255,211,145,.08) 0 1px,rgba(48,18,5,.08) 1px 4px,transparent 4px 8px),
  linear-gradient(145deg,#8b4c21,#4a210b 60%,#2b1106)!important;
  border-color:#c8873d!important;color:#f8e5bf!important;
  box-shadow:0 16px 30px rgba(48,17,4,.28),inset 0 1px 0 rgba(255,225,173,.3)!important;
}
.balance-card .balance,.balance-card .card-label,.balance-card .balance-kicker,.balance-card .balance-meta{color:#f9e4b9!important}
.balance-wallet{background:linear-gradient(145deg,#f0c77a,#8d531d)!important;border:1px solid #f7d48b!important;color:#311504!important}
.balance-meta #resetBtn{background:#f6d391!important;color:#2a1207!important;border:1px solid #b97630!important;box-shadow:0 3px 8px rgba(0,0,0,.18)}
.dark .balance-meta #resetBtn{color:#000!important;background:#f7d99c!important}


.stat-card{border-radius:20px!important}.stat-title,.stat-card small,.progress-card p,.tx-info span{color:#d8bc95!important}.stat-card strong,.section-head h2,.section-head>strong,.page>h1,.tx-info b,.analysis-card strong,.barrow{color:#fae8c5!important}
.stat-icon{border:1px solid rgba(255,218,150,.22);box-shadow:inset 0 1px rgba(255,255,255,.12)}
.income,.dark .stat-icon.income{background:#29421d!important;color:#b9e082!important}.expense,.dark .stat-icon.expense{background:#5a2016!important;color:#ff9a7f!important}

.section-head{margin-top:25px}.section-head h2{font-size:18px!important}.section-head .muted{color:#7b5b44!important}
.quick-add{border-radius:21px!important}.quick-copy input{color:#f9e8c8!important}.quick-copy input::placeholder{color:#d6b891!important}.examples{color:#c7a67d!important}
.add-btn,.save-btn{background:linear-gradient(145deg,#dba65c,#8d4e1d)!important;color:#2a1207!important;border:1px solid #f3ca7c!important;box-shadow:0 7px 15px rgba(27,10,2,.26)!important}
.quick-buttons button{color:#f7e2bd!important}.quick-buttons button:first-child{color:#c4eb94!important}.quick-buttons button:last-child{color:#ffad94!important}

.insight-card{border-radius:20px!important}.insight-icon{background:linear-gradient(145deg,#f3d69a,#b47331)!important;color:#3c1a07!important}.insight-card h3,.insight-card p{color:#f3dfbc!important}.text-btn{color:#f3c875!important}
.transactions{border-radius:21px!important}.transaction{border-bottom-color:rgba(213,165,100,.28)!important}.tx-icon{background:linear-gradient(145deg,#704019,#321609)!important;color:#f5cd80!important;border:1px solid rgba(241,194,114,.35)}.negative{color:#ff9a80!important}.positive{color:#bde68d!important}
.empty{color:#d6b88f!important}

.progress{background:#241006!important;border:1px solid rgba(226,167,81,.25)}.progress span{background:linear-gradient(90deg,#7f461a,#e2ae5b)!important}.goal-bottom{color:#d5b88f!important}


.custom-finbot-logo{overflow:hidden!important;background:radial-gradient(circle,#6c3716,#241005)!important;border:1px solid var(--gold)!important;box-shadow:0 4px 10px rgba(0,0,0,.25)!important}
.custom-finbot-logo img{width:100%;height:100%;display:block;object-fit:contain;padding:2px}
#assistant .assistant-logo.custom-finbot-logo{width:48px;height:48px;border-radius:50%;display:grid;place-items:center}
#assistant .bot-avatar.custom-finbot-logo{border-radius:50%;flex:0 0 22px;width:22px;height:22px;display:grid;place-items:center}
#assistant .bot-avatar.custom-finbot-logo img{padding:1px}
#assistant .assistant-brand h1{color:#f5dfb8!important}#assistant .assistant-brand .muted{color:#cfad7f!important}
#assistant .bot{background:linear-gradient(145deg,#744019,#3a1908)!important;color:#f5dfbe!important;border:1px solid rgba(229,177,91,.35)!important}
#assistant .user{background:linear-gradient(145deg,#d69a47,#9b5b21)!important;color:#261205!important;border-color:#f2c977!important}
.dark #assistant .suggestions button{background:linear-gradient(145deg,#f5dfae,#c48a42)!important;color:#2a1308!important;border-color:#9b5d25!important}.dark #assistant .suggestions button:hover{border-color:#f7d88c!important}
.chat-input input,.dark #assistant .chat-input input{color:#f7e4c0!important;border-color:rgba(228,174,88,.5)!important}.dark #assistant .chat-input input::placeholder{color:#d4b48b!important}
.chat-input button{background:linear-gradient(145deg,#e3ae5b,#8b4d1d)!important;color:#2b1206!important;border:1px solid #f4cd7e!important}
.ai-status{background:#1f3117!important;color:#c8eb96!important;border-color:#69894a!important}


.modal{background:rgba(20,8,2,.68)!important}.modal-card{border-radius:28px!important}.modal-card h2{color:#f6dfb7!important}.close{background:linear-gradient(145deg,#efc77f,#9b5b25)!important;color:#2d1407!important}.type-toggle{background:#2a1207!important;border:1px solid rgba(226,168,84,.3)}.type-toggle button{color:#d6b98d!important}.type-toggle .selected{background:linear-gradient(145deg,#b77330,#6f3513)!important;color:#f7e2b8!important}.modal-card input,.modal-card select{background:#2a1207!important;border-color:rgba(224,166,82,.42)!important;color:#f7e2c0!important}.analysis-card b{color:#d4b58b!important}.category-list .barrow{border-bottom-color:rgba(219,165,91,.25)!important}


.bottom-nav,.dark .bottom-nav{
  background:
    repeating-linear-gradient(7deg,rgba(255,208,139,.05) 0 1px,rgba(0,0,0,.06) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,#2e160a,#150905)!important;
  border-color:#77441d!important;box-shadow:0 -10px 28px rgba(31,12,3,.32),inset 0 1px rgba(255,214,145,.12)!important;
}
.nav-item,.nav-theme{color:#c89d68!important}.nav-item.active{color:#f4cf85!important}.nav-item small,.dark .nav-item small{color:inherit!important}.nav-add{background:linear-gradient(145deg,#e3ae5b,#874617)!important;color:#2a1105!important;border-color:#2a1207!important;box-shadow:0 8px 20px rgba(0,0,0,.35)!important}.nav-theme{background:transparent!important}.nav-logo{width:21px;height:21px;border-radius:50%;object-fit:contain;padding:1px;border:1px solid #b87732;background:#351706}.logo-nav-item{gap:3px!important}


body.dark{
  --bg:#140b06;--surface:#4a240e;--surface2:#2a1207;--text:#f5e1bc;--muted:#c9a980;--line:#7a431f;--primary:#b96e2d;--primary2:#e4b365;
  background:
    radial-gradient(circle at 50% -10%,rgba(137,77,31,.35),transparent 42%),
    repeating-linear-gradient(8deg,rgba(255,198,116,.035) 0 1px,transparent 1px 6px),
    linear-gradient(135deg,#0f0704,#221006 52%,#140a05);
}
.dark .brand-name,.dark .hero h1{color:#f5dfb9!important}.dark .brand-sub,.dark .hero .muted,.dark .section-head .muted,.dark .page>.muted{color:#c6a47a!important}.dark .eyebrow{color:#d1a66d!important}
.dark .quick-add,.dark .transactions,.dark .stat-card,.dark .analysis-card,.dark .category-list,.dark .progress-card,.dark .goal-card,.dark .insight-card{background:
 repeating-linear-gradient(6deg,rgba(255,216,158,.055) 0 1px,rgba(30,10,2,.06) 1px 4px,transparent 4px 8px),linear-gradient(145deg,#4f260f,#2b1207 100%)!important;border-color:#77421d!important}
.dark .stat-title,.dark .stat-card small,.dark .examples,.dark .tx-info span{color:#d1ae83!important}
.dark .insight-card h3,.dark .insight-card p,.dark .quick-copy input,.dark .transaction,.dark .tx-info b,.dark .analysis-card,.dark .analysis-card strong,.dark .analysis-card b,.dark .category-list,.dark .barrow{color:#f4dfbd!important}
.dark .avatar{background:linear-gradient(145deg,#9c5c23,#51260d)!important;color:#f7d992!important}

@media(max-width:480px){
  .content{padding:18px 14px 4px}.brand-intro{margin-bottom:15px}.brand-mark.custom-logo-slot{width:44px;height:44px;flex-basis:44px}.brand-name{font-size:16px!important}.brand-sub{font-size:10px!important}.hero h1{font-size:25px}.balance-card{padding:18px}.balance{font-size:30px}.section-head{margin-top:22px}.bottom-nav{padding-left:7px;padding-right:7px}.nav-add{width:50px;height:50px}.nav-logo{width:20px;height:20px}
}


html,body{overflow-x:hidden;overflow-y:auto!important;min-height:100%;height:auto!important}
body{padding-bottom:0!important}
.content{padding-bottom:220px!important}
.page{min-height:calc(100dvh - 120px)!important;padding-bottom:80px}
#assistant{padding-bottom:210px!important}
.balance-card:before,.balance-card:after{display:none!important}
.hero{background:transparent!important;border:0!important;box-shadow:none!important}


body:not(.dark),body:not(.dark) .app-shell,body:not(.dark) .content{color:#000!important}
body:not(.dark) h1,body:not(.dark) h2,body:not(.dark) h3,body:not(.dark) p,body:not(.dark) span,body:not(.dark) small,body:not(.dark) b,body:not(.dark) strong,body:not(.dark) label,body:not(.dark) .muted,body:not(.dark) .brand-name,body:not(.dark) .brand-sub,body:not(.dark) .eyebrow,body:not(.dark) .stat-title,body:not(.dark) .stat-card small,body:not(.dark) .examples,body:not(.dark) .tx-info span,body:not(.dark) .empty,body:not(.dark) .analysis-card,body:not(.dark) .barrow,body:not(.dark) .finance-health p,body:not(.dark) .finance-health span,body:not(.dark) .nav-item small,body:not(.dark) .nav-item{color:#000!important}
body:not(.dark) input,body:not(.dark) select,body:not(.dark) button{color:#000!important}

.toast{top:auto!important;bottom:calc(92px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,18px) scale(.96)!important;opacity:0;background:linear-gradient(135deg,#241105,#5a2c12 60%,#9b5b24)!important;color:#fff!important;border:1px solid #e3ae5a!important;border-radius:16px!important;padding:13px 18px!important;font-size:12px!important;font-weight:800!important;box-shadow:0 16px 35px rgba(45,16,3,.32),inset 0 1px rgba(255,225,175,.3)!important;backdrop-filter:blur(12px);transition:opacity .22s ease,transform .22s ease!important}
.toast.show{opacity:1!important;transform:translate(-50%,0) scale(1)!important}
.nav-logo{display:none!important}.bot-nav-icon{display:block!important}
.bottom-nav{z-index:500!important}
@media(max-width:480px){.content{padding-bottom:235px!important}.page{padding-bottom:100px!important}.bottom-nav{bottom:8px!important}.toast{top:auto!important;bottom:calc(88px + env(safe-area-inset-bottom));max-width:calc(100% - 28px)}}



.nav-logo{display:block!important;width:21px;height:21px;border-radius:50%;object-fit:contain;padding:1px;border:1px solid #b87732;background:#351706}
.bot-nav-icon{display:none!important}
.logo-nav-item{gap:3px!important}


.balance-card:before{display:block!important;content:"";position:absolute;left:21px;right:21px;top:57px;height:1px;border-radius:1px;background:rgba(255,225,173,.28);box-shadow:0 1px 0 rgba(43,17,5,.28);pointer-events:none}
.balance-card:after{display:none!important}


body:not(.dark) .balance-card,
body:not(.dark) .balance-card h1,body:not(.dark) .balance-card h2,body:not(.dark) .balance-card h3,
body:not(.dark) .balance-card p,body:not(.dark) .balance-card span,body:not(.dark) .balance-card small,body:not(.dark) .balance-card b,body:not(.dark) .balance-card strong,
body:not(.dark) .stat-card,body:not(.dark) .stat-card h1,body:not(.dark) .stat-card h2,body:not(.dark) .stat-card h3,body:not(.dark) .stat-card p,body:not(.dark) .stat-card span,body:not(.dark) .stat-card small,body:not(.dark) .stat-card strong,
body:not(.dark) .quick-add,body:not(.dark) .quick-add p,body:not(.dark) .quick-add span,body:not(.dark) .quick-add small,body:not(.dark) .quick-add .examples,
body:not(.dark) .insight-card,body:not(.dark) .insight-card h1,body:not(.dark) .insight-card h2,body:not(.dark) .insight-card h3,body:not(.dark) .insight-card p,body:not(.dark) .insight-card span,
body:not(.dark) .transactions,body:not(.dark) .transactions h1,body:not(.dark) .transactions h2,body:not(.dark) .transactions h3,body:not(.dark) .transactions p,body:not(.dark) .transactions span,body:not(.dark) .transactions small,body:not(.dark) .transactions b,body:not(.dark) .transactions strong,
body:not(.dark) .analysis-card,body:not(.dark) .analysis-card h1,body:not(.dark) .analysis-card h2,body:not(.dark) .analysis-card h3,body:not(.dark) .analysis-card p,body:not(.dark) .analysis-card span,body:not(.dark) .analysis-card b,body:not(.dark) .analysis-card strong,
body:not(.dark) .category-list,body:not(.dark) .category-list span,body:not(.dark) .category-list b,
body:not(.dark) .progress-card,body:not(.dark) .progress-card p,body:not(.dark) .goal-card,body:not(.dark) .goal-card p{color:#fff!important}
body:not(.dark) .balance-card .balance,.balance-card .card-label,.balance-card .balance-kicker,.balance-card .balance-meta{color:#f9e4b9!important}


.confirm-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(20,8,2,.68);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;backdrop-filter:blur(5px)}
.confirm-overlay.open{opacity:1;visibility:visible;pointer-events:auto}
.confirm-card{width:min(390px,calc(100% - 24px));padding:24px;border-radius:24px;background:repeating-linear-gradient(6deg,rgba(255,216,158,.06) 0 1px,rgba(63,28,10,.035) 1px 3px,transparent 3px 7px),linear-gradient(145deg,#8b4c21,#4a210b 60%,#2b1106);border:1px solid #c8873d;box-shadow:0 22px 55px rgba(0,0,0,.4),inset 0 1px rgba(255,225,173,.3);color:#fff;text-align:center;transform:translateY(12px) scale(.98);transition:transform .22s ease}
.confirm-overlay.open .confirm-card{transform:translateY(0) scale(1)}
.confirm-icon{width:42px;height:42px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#efc77f,#9b5b25);color:#2d1407;font-size:22px;font-weight:900;border:1px solid #f7d48b}
.confirm-card h2{margin:5px 0 8px;color:#fff!important;font-size:20px}.confirm-card p{margin:0 auto 20px;color:#f1dfc5!important;font-size:13px;line-height:1.55;max-width:320px}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.confirm-actions button{border-radius:14px;padding:12px 14px;font-weight:850;cursor:pointer}.confirm-cancel{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,224,171,.35)}.confirm-danger{background:linear-gradient(145deg,#c86f3b,#7b281b);color:#fff;border:1px solid #e39a65;box-shadow:0 6px 15px rgba(70,20,8,.3)}
body:not(.dark) .confirm-card{color:#fff}.confirm-card button{color:inherit!important}



.quick-add,.quick-buttons,#quickAddSection{display:none!important}
.content{padding-bottom:92px!important}
.page{padding-bottom:20px!important}
#assistant{padding-bottom:82px!important}
.bottom-nav{grid-template-columns:1fr 1fr 64px 1fr 1fr!important}
@media(max-width:480px){
  .content{padding-bottom:92px!important}
  .page{padding-bottom:18px!important}
  #assistant{padding-bottom:78px!important}
}


.modal{z-index:1200!important;padding:16px 16px calc(104px + env(safe-area-inset-bottom))!important;overflow-y:auto!important}
.modal-card{max-height:calc(100dvh - 130px)!important;overflow-y:auto!important}
.bottom-nav{z-index:500!important}
.content{padding-bottom:155px!important}
.page{padding-bottom:45px!important}
#assistant{padding-bottom:135px!important}
@media(max-width:480px){
  .content{padding-top:56px!important;padding-bottom:165px!important}
  .page{padding-bottom:55px!important}
  #assistant{padding-bottom:145px!important}
  .modal{padding:18px 14px calc(108px + env(safe-area-inset-bottom))!important}
  .modal-card{max-height:calc(100dvh - 125px)!important}
}



.bot-brand-icon{display:grid!important;place-items:center}
.bot-brand-icon .bot-icon{width:28px;height:28px;fill:none;stroke:var(--gold-bright);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.assistant-logo .bot-icon{width:30px;height:30px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bot-avatar .bot-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-icon.bot-nav-icon{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-logo{display:none!important}


.content{padding-top:76px!important;padding-bottom:160px!important}
.page{padding-top:0!important;min-height:calc(100dvh - 170px)}
.brand-intro{margin-top:8px!important;margin-bottom:30px!important}
#assistant{padding-top:0!important}
#assistant .assistant-head{padding-top:8px!important}
.modal{z-index:500!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
@media(max-width:480px){
  .content{padding-top:78px!important;padding-bottom:170px!important}
  .page{min-height:calc(100dvh - 175px)}
  .brand-intro{margin-top:8px!important;margin-bottom:30px!important}
  #assistant .assistant-head{padding-top:8px!important;margin-bottom:20px!important}
}



.home-brand-logo{display:grid!important;place-items:center;overflow:hidden!important}
.home-brand-logo img{width:100%!important;height:100%!important;display:block!important;object-fit:contain!important;padding:3px!important;border-radius:50%!important}
.logo-nav-item .bot-nav-icon{display:block!important;width:21px!important;height:21px!important}
.logo-nav-item .nav-logo{display:none!important}





.page-splash{
  position:fixed;
  inset:0;
  z-index:9999;
  display:grid;
  place-items:center;
  background:transparent;
  color:var(--text);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease, visibility .16s ease;
}
.page-splash.initial-load{
  background:var(--bg);
}
/* Full explanatory splash is reserved for the first app load only. */
.page-splash:not(.initial-load) .page-splash-description,
.page-splash:not(.initial-load) .page-splash-progress{
  display:none !important;
}
.page-splash:not(.initial-load) .page-splash img{
  width:78px;
  height:78px;
  margin-bottom:14px;
}
.page-splash:not(.initial-load) #pageSplashTitle{
  font-size:22px;
  font-weight:850;
  letter-spacing:-.025em;
}
.page-splash.show{
  opacity:1;
  visibility:visible;
  pointer-events:none;
}
.page-splash-inner{
  width:min(86vw,360px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  transform:translateY(6px) scale(.98);
  opacity:0;
}
.page-splash.show .page-splash-inner{
  animation:pageSplashIn .7s ease both;
}
.page-splash.initial-load.show .page-splash-inner{
  animation:pageSplashInitialIn .7s ease both;
}
.page-splash img{
  width:92px;
  height:92px;
  object-fit:contain;
  display:block;
  margin-bottom:18px;
  border-radius:22px;
  box-shadow:0 14px 35px rgba(23,105,224,.16);
}
.page-splash #pageSplashTitle{
  font-size:24px;
  line-height:1.2;
  font-weight:850;
  letter-spacing:-.035em;
}
@keyframes pageSplashIn{
  0%{opacity:0;transform:translateY(10px) scale(.96)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes pageSplashInitialIn{
  0%{opacity:0;transform:translateY(12px) scale(.97)}
  100%{opacity:1;transform:translateY(0) scale(1)}
}
@media(max-width:480px){
  .page-splash img{width:82px;height:82px;margin-bottom:16px}
  .page-splash #pageSplashTitle{font-size:21px}
}


@media (max-width: 480px){
  .bottom-nav{
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) !important;
    width:calc(100% - 28px) !important;
    max-width:452px !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
}



.auth-screen{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at top,#2b170d 0%,#140b06 48%,#090605 100%);overflow:auto}
.auth-screen.hidden{display:none}
.app-shell.app-hidden{display:none}
.auth-card{width:min(430px,100%);padding:30px 24px;border:1px solid rgba(255,255,255,.09);border-radius:28px;background:rgba(28,16,10,.94);box-shadow:0 24px 70px rgba(0,0,0,.45);backdrop-filter:blur(18px)}
.auth-logo{display:block;width:72px;height:72px;object-fit:contain;margin:0 auto 14px;border-radius:18px}
.auth-card h1{text-align:center;margin:0;font-size:27px}
.auth-subtitle{text-align:center;margin:7px 0 22px;color:rgba(255,255,255,.62)}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;border-radius:14px;background:rgba(255,255,255,.06);margin-bottom:20px}
.auth-tab{border:0;border-radius:10px;padding:11px;background:transparent;color:rgba(255,255,255,.6);font-weight:700;cursor:pointer}
.auth-tab.active{background:rgba(255,255,255,.12);color:#fff}
.auth-label{display:block;margin:13px 0 7px;font-size:13px;color:rgba(255,255,255,.72)}
.auth-input{box-sizing:border-box;width:100%;border:1px solid rgba(255,255,255,.11);outline:0;border-radius:13px;padding:13px 14px;background:rgba(255,255,255,.055);color:#fff;font:inherit}
.auth-input:focus{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.075)}
.auth-submit{width:100%;margin-top:18px;border:0;border-radius:14px;padding:14px;background:#fff;color:#16100c;font-weight:800;font-size:15px;cursor:pointer}
.auth-submit:disabled{opacity:.55;cursor:wait}
.auth-message{min-height:20px;margin:12px 0 0;text-align:center;font-size:13px;color:rgba(255,255,255,.7)}
.auth-message.error{color:#ff8d82}
.logout-btn{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:rgba(255,255,255,.8);border-radius:10px;padding:8px 11px;font-size:12px;cursor:pointer;flex:0 0 auto;align-self:flex-start;white-space:nowrap}
@media(max-width:520px){.auth-card{padding:25px 19px;border-radius:24px}.auth-screen{padding:16px}}


@media(max-width:520px){
  .admin-screen{padding-top:84px}
  .hero{align-items:flex-start;gap:12px}
  .logout-btn{padding:9px 12px;font-size:12px}
}


.hidden{display:none !important}


.admin-screen{min-height:100vh;background:#0c0908;color:#f7f1ec;overflow:auto;padding:84px 22px 60px}
.admin-screen.hidden{display:none}
.admin-wrap{max-width:1180px;margin:0 auto}
.admin-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:26px}
.admin-eyebrow{margin:0 0 7px;font-size:12px;letter-spacing:.16em;font-weight:800;opacity:.65}
.admin-header h1{margin:0;font-size:38px;letter-spacing:-.04em}
.admin-muted,.admin-card-head p{color:#a99f98;margin:8px 0 0}
.admin-header-actions{display:flex;gap:10px}
.admin-btn{border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer}
.admin-btn.secondary{background:#2a211d;color:#fff}
.admin-btn.danger{background:#d84c3f;color:#fff}
.admin-btn:disabled{opacity:.55;cursor:wait}
.admin-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:18px}
.admin-stats article{background:#17110e;border:1px solid #2d211c;border-radius:18px;padding:18px;min-height:110px;box-sizing:border-box}
.admin-stats span,.admin-stats small{display:block;color:#9e938b;font-size:12px}
.admin-stats strong{display:block;font-size:27px;margin:9px 0 5px;letter-spacing:-.03em}
.admin-card{background:#17110e;border:1px solid #2d211c;border-radius:20px;margin-top:18px;overflow:hidden}
.admin-card-head{padding:20px 22px;border-bottom:1px solid #2d211c}
.admin-card-head h2{margin:0;font-size:20px}
.admin-table-wrap{overflow:auto}
.admin-screen table{width:100%;border-collapse:collapse;min-width:650px}
.admin-screen th,.admin-screen td{text-align:left;padding:15px 18px;border-bottom:1px solid #2a201c;font-size:13px;vertical-align:middle}
.admin-screen th{color:#93877f;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.admin-screen tr:last-child td{border-bottom:0}
.admin-sub{display:block;color:#756b65;font-size:10px;margin-top:4px;word-break:break-all}
.role-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#2a211d;color:#ddd0c8;font-size:11px;font-weight:800;text-transform:capitalize}
.role-badge.admin{background:#5b2b24;color:#ffd9cf}
.admin-positive{font-weight:800;color:#77d89a}
.admin-negative{font-weight:800;color:#ff8d82}
@media(max-width:900px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-header{flex-direction:column}.admin-header-actions{width:100%}.admin-btn{flex:1}}
@media(max-width:560px){.admin-screen{padding:20px 12px 40px}.admin-header h1{font-size:30px}.admin-stats{grid-template-columns:1fr}.admin-stats article{min-height:95px}}


.admin-delete-user{border:1px solid #6b3029;background:#321814;color:#ffb3a8;border-radius:10px;padding:8px 11px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}
.admin-delete-user:hover{background:#4a1d17}
.admin-delete-user:disabled{opacity:.55;cursor:wait}
.admin-self{display:inline-flex;padding:7px 10px;border-radius:10px;background:#211b18;color:#8f857d;font-size:10px;font-weight:800;white-space:nowrap}
@media(max-width:560px){
  .admin-screen{padding:84px 14px calc(100px + env(safe-area-inset-bottom));}
  .admin-wrap{width:100%;}
  .admin-header{gap:18px;margin-bottom:22px;}
  .admin-header h1{font-size:29px;line-height:1.1;}
  .admin-muted{font-size:12px;line-height:1.45;}
  .admin-header-actions{gap:8px;}
  .admin-btn{padding:11px 12px;font-size:12px;}
  .admin-stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;}
  .admin-stats article{min-height:105px;padding:15px;}
  .admin-stats strong{font-size:22px;}
  .admin-card{margin-top:14px;border-radius:17px;}
  .admin-card-head{padding:17px 16px;}
  .admin-card-head h2{font-size:17px;}
  .admin-card-head p{font-size:11px;line-height:1.4;}
  .admin-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .admin-screen table{min-width:720px;}
  .admin-screen th,.admin-screen td{padding:12px 13px;font-size:11px;}
  .admin-screen th{font-size:9px;}
  .admin-screen{scroll-padding-bottom:100px;}
}
@media(max-width:380px){
  .admin-stats{grid-template-columns:1fr;}
  .admin-header-actions{flex-direction:column;}
  .admin-btn{width:100%;}
}


.admin-delete-card{width:min(440px,calc(100vw - 32px));padding:30px 28px 24px;text-align:left;}
.admin-delete-card .confirm-icon{margin:0 0 18px;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:22px;font-weight:900;}
.admin-warning-icon{background:rgba(216,76,63,.13);color:#ff8d82;border:1px solid rgba(216,76,63,.22);}
.admin-delete-card h2{margin:0 0 9px;font-size:22px;letter-spacing:-.02em;color:#f7f1ec;}
.admin-delete-card p{margin:0;color:#a99f98;font-size:13px;line-height:1.55;}
.admin-delete-card p strong{color:#e8ddd5;font-weight:800;}
.admin-delete-card .confirm-actions{margin-top:24px;}
.admin-delete-card .confirm-danger{min-width:112px;}
@media(max-width:560px){
  .admin-delete-card{padding:24px 20px 18px;border-radius:20px;}
  .admin-delete-card h2{font-size:20px;}
  .admin-delete-card p{font-size:12px;}
  .admin-delete-card .confirm-actions{gap:9px;}
}


.admin-search-head{display:flex;align-items:center;justify-content:space-between;gap:18px;}
.admin-user-search{display:flex;align-items:center;gap:8px;min-width:min(440px,100%);}
.admin-user-search input{flex:1;min-width:180px;height:42px;border:1px solid #3a2c25;border-radius:12px;background:#0f0b09;color:#f7f1ec;padding:0 13px;outline:none;font:inherit;font-size:13px;}
.admin-user-search input:focus{border-color:#5d88ff;box-shadow:0 0 0 3px rgba(93,136,255,.12);}
.admin-user-search input::placeholder{color:#786e67;}
.admin-search-summary{padding:11px 22px;color:#8f857d;font-size:12px;border-bottom:1px solid #2d211c;}
@media(max-width:760px){
  .admin-search-head{flex-direction:column;align-items:stretch;}
  .admin-user-search{min-width:0;width:100%;}
  .admin-user-search .admin-btn{flex:0 0 auto;width:auto;}
  .admin-search-summary{padding:10px 16px;line-height:1.45;}
}
@media(max-width:420px){
  .admin-user-search{flex-direction:column;align-items:stretch;}
  .admin-user-search input{width:100%;box-sizing:border-box;min-width:0;}
  .admin-user-search .admin-btn{width:100%;}
}






:root{
  --wood-bg:#140b06; --wood-bg-2:#241006; --wood-card:#4d250f; --wood-card-2:#2b1207;
  --wood-accent:#e4b365; --wood-accent-2:#9a5a25; --wood-text:#f7e4c3; --wood-muted:#d0ae84;
  --wood-border:#8a4d21; --wood-glow:rgba(228,179,101,.22); --wood-dark:#261005;
}
body[data-theme="black"]{
  --wood-bg:#050505; --wood-bg-2:#111111; --wood-card:#242424; --wood-card-2:#151515;
  --wood-accent:#f0c77a; --wood-accent-2:#8b5f2c; --wood-text:#f5f1e8; --wood-muted:#b9b2a7;
  --wood-border:#5f5142; --wood-glow:rgba(240,199,122,.18); --wood-dark:#090909;
}

body[data-theme]{
  color:var(--wood-text)!important;
  background:
    radial-gradient(circle at 50% -10%,var(--wood-glow),transparent 42%),
    repeating-linear-gradient(8deg,rgba(255,255,255,.035) 0 1px,transparent 1px 7px),
    linear-gradient(135deg,var(--wood-bg),var(--wood-bg-2) 55%,var(--wood-bg))!important;
}
body[data-theme] .app-shell,
body[data-theme] .content{background:transparent!important;color:var(--wood-text)!important}


.hero-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto;align-self:flex-start}
.theme-btn,.logout-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;box-sizing:border-box;white-space:nowrap;cursor:pointer;font:inherit;font-weight:800;transition:transform .18s ease,filter .18s ease,background .18s ease}
.theme-btn{border:1px solid var(--wood-border)!important;border-radius:11px;padding:8px 10px;background:linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;color:var(--wood-text)!important;box-shadow:0 6px 16px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.12)!important;font-size:12px}
.theme-btn:hover,.logout-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}
.theme-dot{width:9px;height:9px;border-radius:50%;display:block;background:var(--wood-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--wood-accent) 18%,transparent);flex:0 0 9px}
body[data-theme="black"] .theme-dot{background:#f0c77a}
.logout-btn{border:1px solid var(--wood-border)!important;background:linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;color:var(--wood-text)!important;border-radius:11px;padding:8px 11px;font-size:12px;box-shadow:0 6px 16px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.1)!important}


body[data-theme] .balance-card,
body[data-theme] .stat-card,
body[data-theme] .quick-add,
body[data-theme] .insight-card,
body[data-theme] .transactions,
body[data-theme] .analysis-card,
body[data-theme] .category-list,
body[data-theme] .progress-card,
body[data-theme] .goal-card,
body[data-theme] .modal-card{
  background:
    repeating-linear-gradient(6deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,.035) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;
  border-color:var(--wood-border)!important;
  color:var(--wood-text)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.20),inset 0 1px rgba(255,255,255,.11)!important;
}
body[data-theme] .balance-card{background:
  repeating-linear-gradient(5deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,.04) 1px 4px,transparent 4px 8px),
  linear-gradient(145deg,var(--wood-card),var(--wood-bg-2))!important}
body[data-theme] .brand-name,body[data-theme] .hero h1,body[data-theme] .page>h1,
body[data-theme] .section-head h2,body[data-theme] .section-head>strong,
body[data-theme] .stat-card strong,body[data-theme] .tx-info b,
body[data-theme] .analysis-card strong,body[data-theme] .analysis-card b,
body[data-theme] .insight-card h3,body[data-theme] .insight-card p,
body[data-theme] .transaction,body[data-theme] .category-list,body[data-theme] .barrow,
body[data-theme] .balance-card .balance,body[data-theme] .balance-card .card-label,
body[data-theme] .balance-card .balance-kicker{color:var(--wood-text)!important}
body[data-theme] .brand-sub,body[data-theme] .muted,body[data-theme] .section-head .muted,
body[data-theme] .stat-title,body[data-theme] .stat-card small,body[data-theme] .examples,
body[data-theme] .tx-info span,body[data-theme] .goal-bottom,body[data-theme] .empty,
body[data-theme] .progress-card p{color:var(--wood-muted)!important}
body[data-theme] .eyebrow{color:var(--wood-accent)!important}
body[data-theme] .brand-mark.custom-logo-slot{background:radial-gradient(circle,var(--wood-card),var(--wood-dark))!important;border-color:var(--wood-accent-2)!important;box-shadow:0 0 0 3px var(--wood-glow),0 8px 18px rgba(0,0,0,.25)!important}
body[data-theme] .avatar{background:linear-gradient(145deg,var(--wood-accent-2),var(--wood-card-2))!important;color:var(--wood-text)!important;border-color:var(--wood-border)!important}
body[data-theme] .balance-wallet,
body[data-theme] .insight-icon{background:linear-gradient(145deg,var(--wood-accent),var(--wood-accent-2))!important;color:var(--wood-dark)!important;border-color:var(--wood-accent)!important}
body[data-theme] .balance-meta #resetBtn{background:var(--wood-accent)!important;color:var(--wood-dark)!important;border-color:var(--wood-accent-2)!important}
body[data-theme] .add-btn,body[data-theme] .save-btn,body[data-theme] .chat-input button,
body[data-theme] .nav-add{background:linear-gradient(145deg,var(--wood-accent),var(--wood-accent-2))!important;color:var(--wood-dark)!important;border-color:var(--wood-accent)!important}
body[data-theme] .quick-buttons button:first-child{color:var(--wood-accent)!important}
body[data-theme] .quick-buttons button:last-child{color:#ffb0b0!important}
body[data-theme] .transaction{border-bottom-color:color-mix(in srgb,var(--wood-border) 60%,transparent)!important}
body[data-theme] .tx-icon{background:linear-gradient(145deg,var(--wood-card),var(--wood-dark))!important;color:var(--wood-accent)!important;border-color:var(--wood-border)!important}
body[data-theme] .progress{background:var(--wood-dark)!important;border-color:var(--wood-border)!important}
body[data-theme] .progress span{background:linear-gradient(90deg,var(--wood-accent-2),var(--wood-accent))!important}
body[data-theme] .positive{color:#b9ef8b!important}.negative{color:#ff9e91!important}


body[data-theme] #assistant .bot{background:linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;color:var(--wood-text)!important;border-color:var(--wood-border)!important}
body[data-theme] #assistant .user{background:linear-gradient(145deg,var(--wood-accent),var(--wood-accent-2))!important;color:var(--wood-dark)!important;border-color:var(--wood-accent)!important}
body[data-theme] #assistant .suggestions button{background:linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;color:var(--wood-text)!important;border-color:var(--wood-border)!important}
body[data-theme] .chat-input input,body[data-theme] .quick-copy input,
body[data-theme] .modal-card input,body[data-theme] .modal-card select{
  background:var(--wood-dark)!important;color:var(--wood-text)!important;border-color:var(--wood-border)!important}
body[data-theme] .chat-input input::placeholder,body[data-theme] .quick-copy input::placeholder{color:var(--wood-muted)!important}
body[data-theme] .type-toggle{background:var(--wood-dark)!important;border-color:var(--wood-border)!important}
body[data-theme] .type-toggle button{color:var(--wood-muted)!important}
body[data-theme] .type-toggle .selected{background:linear-gradient(145deg,var(--wood-accent-2),var(--wood-card))!important;color:var(--wood-text)!important}


body[data-theme] .bottom-nav{background:
  repeating-linear-gradient(7deg,rgba(255,255,255,.035) 0 1px,rgba(0,0,0,.05) 1px 4px,transparent 4px 8px),
  linear-gradient(145deg,var(--wood-card),var(--wood-dark))!important;border-color:var(--wood-border)!important;box-shadow:0 -10px 28px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.12)!important}
body[data-theme] .nav-item{color:var(--wood-muted)!important}.nav-item.active{color:var(--wood-accent)!important}
body[data-theme] .nav-item small{color:inherit!important}


body[data-theme] .auth-screen{background:
 radial-gradient(circle at top,var(--wood-card) 0%,var(--wood-bg) 48%,#050303 100%)!important}
body[data-theme] .auth-card{background:color-mix(in srgb,var(--wood-card-2) 92%,black)!important;border-color:var(--wood-border)!important;color:var(--wood-text)!important}
body[data-theme] .auth-subtitle,body[data-theme] .auth-label,body[data-theme] .auth-message{color:var(--wood-muted)!important}
body[data-theme] .auth-input{background:rgba(0,0,0,.2)!important;color:var(--wood-text)!important;border-color:var(--wood-border)!important}
body[data-theme] .auth-submit{background:var(--wood-accent)!important;color:var(--wood-dark)!important}
body[data-theme] .admin-screen{background:linear-gradient(135deg,var(--wood-bg),var(--wood-bg-2))!important;color:var(--wood-text)!important}
body[data-theme] .admin-card,body[data-theme] .admin-stats article{background:linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;border-color:var(--wood-border)!important;color:var(--wood-text)!important}

@media(max-width:520px){
  .hero-actions{gap:6px}
  .theme-btn,.logout-btn{min-height:36px;padding:8px 9px;font-size:11px}
  .theme-btn span:last-child{display:none}
}


body[data-theme] #assistant .chat-link{color:var(--wood-accent)!important;font-weight:800;text-decoration:underline;text-underline-offset:2px}
body[data-theme] #assistant .chat-link:hover{filter:brightness(1.15)}



#assistant .chat-message-text{
  display:block;
  flex:1 1 auto;
  min-width:0;
  max-width:100%;
  text-align:start;
  line-height:1.65;
  overflow-wrap:anywhere;
  word-break:normal;
  unicode-bidi:isolate;
}
#assistant .bot .chat-message-text[dir="rtl"],
#assistant .user .chat-message-text[dir="rtl"]{
  direction:rtl;
  text-align:right;
}
#assistant .bot .chat-message-text[dir="ltr"],
#assistant .user .chat-message-text[dir="ltr"]{
  direction:ltr;
  text-align:left;
}
#assistant .bot .chat-link{unicode-bidi:isolate;}
#assistant .chat-input input{unicode-bidi:plaintext;text-align:start;}


.nav-add{
  width:56px!important;
  height:56px!important;
  min-width:56px;
  min-height:56px;
  display:grid!important;
  place-items:center!important;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.nav-add:hover,.nav-add:focus-visible{
  transform:translateY(-3px) scale(1.04);
  filter:brightness(1.08);
  box-shadow:0 14px 28px rgba(91,76,240,.42);
}
.nav-add:active{transform:translateY(-1px) scale(.98)}
.nav-add svg{width:30px!important;height:30px!important}
.money-chart .income-line{stroke:#22c55e!important;stroke-width:4!important}
.money-chart .expense-line{stroke:#ef4444!important;stroke-width:4!important}
.income-dot{background:#22c55e!important}
.expense-dot{background:#ef4444!important}
.chart-card{min-width:0}


@media (max-width: 480px){
  body{
    overflow-x:hidden;
  }
  .app-shell{
    width:100%;
    max-width:none;
    padding-left:82px;
    box-sizing:border-box;
  }
  .content{
    padding-left:14px!important;
    padding-right:14px!important;
    padding-bottom:24px!important;
  }
  .topbar{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .bottom-nav{
    position:fixed!important;
    left:8px!important;
    right:auto!important;
    top:8px!important;
    bottom:8px!important;
    width:62px!important;
    max-width:62px!important;
    height:auto!important;
    margin:0!important;
    padding:12px 5px!important;
    border-radius:22px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    z-index:250!important;
  }
  .nav-item{
    width:52px!important;
    min-height:52px!important;
    height:52px!important;
    flex:0 0 52px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:4px!important;
    padding:5px 0!important;
    border-radius:15px!important;
  }
  .nav-item small{
    font-size:8px!important;
    line-height:1!important;
    white-space:nowrap;
  }
  .nav-icon{
    width:20px!important;
    height:20px!important;
    flex:0 0 20px!important;
  }
  .nav-add{
    order:3;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    flex:0 0 50px!important;
    margin:0!important;
    border-radius:17px!important;
    display:grid!important;
    place-items:center!important;
  }
  .nav-add svg{
    width:30px!important;
    height:30px!important;
  }
  .nav-item[data-page="home"]{order:1}
  .nav-item[data-page="transactionsPage"]{order:2}
  .nav-item[data-page="analytics"]{order:4}
  .nav-item[data-page="assistant"]{order:5}
  .nav-item:hover,
  .nav-item:focus-visible,
  .nav-add:hover,
  .nav-add:focus-visible{
    transform:translateY(-2px);
    transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
  }
  .page{
    min-height:calc(100dvh - 40px)!important;
  }
  .modal{
    padding:12px!important;
  }
  .modal-card{
    width:100%!important;
    max-height:90dvh;
    overflow:auto;
    border-radius:22px!important;
    padding:20px!important;
  }
}
@media (max-width:360px){
  .app-shell{padding-left:78px}
  .bottom-nav{left:6px!important;width:58px!important;max-width:58px!important}
  .nav-item{width:48px!important}
  .nav-add{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important}
}

#home .brand-intro{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:22px!important;
  padding:58px 20px 42px!important;
  margin:0 0 8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
#home .home-brand-logo{
  width:190px!important;height:190px!important;min-width:190px!important;
  border-radius:46px!important;
  padding:0!important;margin:0!important;
  display:grid!important;place-items:center!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:translateZ(0);
  perspective:900px;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .4s ease;
}
#home .home-brand-logo img{
  width:100%!important;height:100%!important;object-fit:contain!important;
  display:block!important;
  border-radius:inherit!important;
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.16));
  transform:rotateX(0) rotateY(0) scale(1);
  transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .55s ease;
}
#home .home-brand-logo:hover img,
#home .home-brand-logo:focus-within img{
  transform:rotateX(7deg) rotateY(-9deg) translateY(-9px) scale(1.09);
  filter:drop-shadow(0 28px 30px rgba(0,0,0,.22));
}
#home .home-brand-logo:hover,
#home .home-brand-logo:focus-within{transform:translateY(-4px)}
#home .brand-intro>div:last-child{display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important}
#home .brand-name{
  font-size:clamp(30px,4.2vw,52px)!important;
  line-height:1.05!important;letter-spacing:-.055em!important;
  font-weight:900!important;color:var(--text)!important;
}
#home .brand-sub{
  font-size:clamp(15px,1.8vw,21px)!important;line-height:1.4!important;
  color:var(--muted)!important;font-weight:600!important;letter-spacing:-.01em!important;
}
#home .hero{
  background:transparent!important;border:0!important;box-shadow:none!important;
  padding:8px 0 24px!important;margin:0!important;
}
#home .hero-actions{display:flex!important}
#home .eyebrow{opacity:.72}
@media (min-width:769px){
  #home .brand-intro{padding-top:72px!important;padding-bottom:48px!important}
}
@media (max-width:768px){
  #home .brand-intro{padding:38px 16px 28px!important;gap:16px!important}
  #home .home-brand-logo{width:145px!important;height:145px!important;min-width:145px!important;border-radius:34px!important}
  #home .brand-name{font-size:clamp(27px,8vw,38px)!important}
  #home .brand-sub{font-size:15px!important}
}
@media (max-width:430px){
  #home .brand-intro{padding-top:28px!important}
  #home .home-brand-logo{width:125px!important;height:125px!important;min-width:125px!important}
  #home .brand-intro>div:last-child{gap:6px!important}
}
@media (prefers-reduced-motion:reduce){
  #home .home-brand-logo,#home .home-brand-logo img{transition:none!important}
}


#home .brand-intro,
#home .home-brand-logo,
#home .home-brand-logo img{
  overflow:visible!important;
}
#home .brand-intro{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-items:center!important;
  flex-shrink:0!important;
}
#home .home-brand-logo{
  position:relative!important;
  width:clamp(150px, 20vw, 230px)!important;
  height:clamp(150px, 20vw, 230px)!important;
  min-width:clamp(150px, 20vw, 230px)!important;
  min-height:clamp(150px, 20vw, 230px)!important;
  max-width:none!important;
  max-height:none!important;
  flex:0 0 auto!important;
  border-radius:50%!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
#home .home-brand-logo img{
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:0!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  display:block!important;
}
@media(max-width:768px){
  #home .home-brand-logo{
    width:170px!important;height:170px!important;
    min-width:170px!important;min-height:170px!important;
  }
}
@media(max-width:480px){
  #home .home-brand-logo{
    width:140px!important;height:140px!important;
    min-width:140px!important;min-height:140px!important;
  }
}
@media(max-width:360px){
  #home .home-brand-logo{
    width:120px!important;height:120px!important;
    min-width:120px!important;min-height:120px!important;
  }
}




.hero-actions{
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
  align-self:flex-start;
  flex-wrap:wrap;
}
.theme-btn,.logout-btn,.wood-cta{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  border:1px solid var(--wood-border)!important;
  border-radius:13px!important;
  padding:9px 12px!important;
  font-weight:850!important;
  letter-spacing:.01em;
  cursor:pointer;
  text-decoration:none;
  transition:transform .2s ease,filter .2s ease,box-shadow .2s ease,background .2s ease;
}
.theme-btn,.logout-btn{
  background:
    repeating-linear-gradient(7deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,.04) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;
  color:var(--wood-text)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.12)!important;
  font-size:12px!important;
}
.theme-btn:hover,.logout-btn:hover,.wood-cta:hover{transform:translateY(-2px);filter:brightness(1.08)}
.theme-btn:active,.logout-btn:active,.wood-cta:active{transform:translateY(0) scale(.98)}
.theme-icon,.logout-icon{display:grid;place-items:center;flex:0 0 18px}
.theme-icon svg,.logout-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.theme-dot{width:8px!important;height:8px!important;flex:0 0 8px!important;background:var(--wood-accent)!important}


.hero-cta{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  flex-wrap:nowrap;
  gap:10px;
  margin-top:18px;
}
.wood-cta{
  min-width:145px;
  font-size:12px;
  color:var(--wood-dark)!important;
  background:
    repeating-linear-gradient(7deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,.045) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;
  box-shadow:0 9px 20px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.13)!important;
}
.wood-cta-primary,.wood-cta-secondary{
  background:
    repeating-linear-gradient(7deg,rgba(255,255,255,.07) 0 1px,rgba(0,0,0,.04) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,var(--wood-accent),var(--wood-accent-2))!important;
  color:var(--wood-dark)!important;
  border-color:var(--wood-accent)!important;
}
.cta-icon{font-size:17px;line-height:1;font-weight:900}
.android-icon{display:grid;place-items:center}
.android-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}


@media(min-width:621px){
  body[data-theme] .desktop-sidebar{
    background:
      repeating-linear-gradient(7deg,rgba(255,255,255,.035) 0 1px,rgba(0,0,0,.05) 1px 4px,transparent 4px 8px),
      linear-gradient(145deg,var(--wood-card),var(--wood-dark))!important;
    border-right-color:var(--wood-border)!important;
    box-shadow:10px 0 32px rgba(0,0,0,.24)!important;
  }
  body[data-theme] .sidebar-brand{color:var(--wood-text)!important}
  body[data-theme] .sidebar-brand img{background:var(--wood-dark)!important;border-color:var(--wood-border)!important}
  body[data-theme] .sidebar-item{color:var(--wood-muted)!important}
  body[data-theme] .sidebar-item:hover{background:var(--wood-card-2)!important;color:var(--wood-text)!important}
  body[data-theme] .sidebar-item.active{background:var(--wood-card-2)!important;color:var(--wood-accent)!important}
  body[data-theme] .sidebar-add{background:linear-gradient(145deg,var(--wood-accent),var(--wood-accent-2))!important;color:var(--wood-dark)!important;border:1px solid var(--wood-accent)!important}
  body[data-theme] .sidebar-bottom{border-top-color:var(--wood-border)!important}
  body[data-theme] .sidebar-logout:hover{background:rgba(220,70,70,.16)!important;color:#ffaaa0!important}
}


@media(max-width:768px){
  .hero-actions{width:auto;max-width:48%;gap:6px;align-items:center}
  .theme-btn,.logout-btn{min-height:38px!important;padding:8px 9px!important;border-radius:12px!important}
  .theme-btn #themeBtnLabel{display:inline!important;font-size:10px!important}
  .theme-btn .theme-dot{display:none!important}
  .theme-icon,.logout-icon{flex-basis:17px}
  .theme-icon svg,.logout-icon svg{width:17px;height:17px}
  #home .hero{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;padding:10px 0 22px!important}
  #home .hero>div:first-child{min-width:0;flex:1}
  #home .hero h1{font-size:clamp(21px,6vw,29px)!important;line-height:1.08!important}
  #home .eyebrow{font-size:10px!important}
  .hero-cta{margin-top:15px;gap:8px}
  .wood-cta{min-width:0;flex:0 1 auto;min-height:40px;padding:9px 11px!important;font-size:11px}
}
@media(max-width:430px){
  #home .hero{gap:7px!important}
  .hero-actions{max-width:52%;gap:5px}
  .theme-btn,.logout-btn{padding:7px 8px!important;font-size:10px!important}
  .theme-btn #themeBtnLabel{font-size:9px!important}
  .wood-cta{min-width:0;flex:1 1 0}
}
@media(max-width:360px){
  .hero-actions{max-width:55%}
  .theme-btn #themeBtnLabel{display:none!important}
  .theme-btn,.logout-btn{width:38px!important;min-width:38px!important;padding:8px!important}
  .wood-cta{font-size:10px}
}




.hero-cta{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:100%!important;
}
.hero-cta .wood-cta{
  flex:0 1 auto!important;
  min-width:0!important;
  min-height:44px!important;
  padding:10px 15px!important;
  border-radius:14px!important;
  font-size:12px!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  box-shadow:0 10px 22px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.16)!important;
}
.hero-cta .wood-cta:hover{
  transform:translateY(-3px)!important;
  filter:brightness(1.1)!important;
  box-shadow:0 14px 26px rgba(0,0,0,.27),inset 0 1px rgba(255,255,255,.18)!important;
}
.hero-cta .wood-cta:focus-visible{
  outline:3px solid color-mix(in srgb,var(--wood-accent) 55%,white 20%);
  outline-offset:3px;
}
.cta-icon,.android-icon,.web-icon{
  display:grid!important;
  place-items:center!important;
  flex:0 0 19px!important;
  width:19px!important;
  height:19px!important;
}
.cta-icon svg,.web-icon svg{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.android-icon svg{
  width:20px!important;
  height:20px!important;
}
.wood-cta-tertiary{
  background:
    repeating-linear-gradient(7deg,rgba(255,255,255,.07) 0 1px,rgba(0,0,0,.04) 1px 4px,transparent 4px 8px),
    linear-gradient(145deg,var(--wood-card),var(--wood-card-2))!important;
  color:var(--wood-text)!important;
  border-color:var(--wood-border)!important;
}

@media(max-width:768px){
  .hero-cta{
    gap:7px!important;
    width:100%!important;
    overflow-x:visible!important;
  }
  .hero-cta .wood-cta{
    flex:1 1 0!important;
    min-width:0!important;
    padding:9px 8px!important;
    min-height:42px!important;
    font-size:10.5px!important;
    gap:6px!important;
  }
  .cta-icon,.android-icon,.web-icon,
  .cta-icon svg,.android-icon svg,.web-icon svg{
    width:17px!important;height:17px!important;flex-basis:17px!important;
  }
}
@media(max-width:390px){
  .hero-cta{gap:5px!important}
  .hero-cta .wood-cta{padding:8px 5px!important;font-size:9px!important;gap:4px!important;border-radius:11px!important}
  .cta-icon,.android-icon,.web-icon,.cta-icon svg,.android-icon svg,.web-icon svg{width:15px!important;height:15px!important;flex-basis:15px!important}
}




#home .brand-intro{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:left!important;
  gap:clamp(28px,5vw,72px)!important;
  padding:72px 20px 48px!important;
}

#home .brand-intro .home-brand-logo{
  flex:0 0 clamp(170px,20vw,230px)!important;
  width:clamp(170px,20vw,230px)!important;
  height:clamp(170px,20vw,230px)!important;
  min-width:clamp(170px,20vw,230px)!important;
  min-height:clamp(170px,20vw,230px)!important;
  margin:0!important;
}

#home .brand-intro .brand-copy{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:8px!important;
}

#home .brand-intro .brand-name{
  text-align:left!important;
}

#home .brand-intro .brand-sub{
  text-align:left!important;
}

#home .brand-intro .hero-cta{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  max-width:none!important;
  gap:10px!important;
  margin:14px 0 0!important;
  white-space:nowrap!important;
}

#home .brand-intro .hero-cta .wood-cta{
  display:inline-flex!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  white-space:nowrap!important;
}

@media(max-width:768px){
  #home .brand-intro{
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:18px!important;
    padding:42px 16px 30px!important;
  }

  #home .brand-intro .home-brand-logo{
    flex:0 0 125px!important;
    width:125px!important;
    height:125px!important;
    min-width:125px!important;
    min-height:125px!important;
  }

  #home .brand-intro .brand-copy{
    flex:1 1 auto!important;
    min-width:0!important;
  }

  #home .brand-intro .brand-name{
    font-size:clamp(24px,5.8vw,36px)!important;
    line-height:1.05!important;
  }

  #home .brand-intro .brand-sub{
    font-size:14px!important;
    line-height:1.3!important;
  }

  #home .brand-intro .hero-cta{
    width:auto!important;
    gap:7px!important;
    margin-top:12px!important;
  }

  #home .brand-intro .hero-cta .wood-cta{
    flex:0 1 auto!important;
    min-width:0!important;
    padding:9px 9px!important;
    min-height:40px!important;
    font-size:10px!important;
    gap:5px!important;
  }

  #home .brand-intro .cta-icon,
  #home .brand-intro .android-icon,
  #home .brand-intro .web-icon{
    width:16px!important;
    height:16px!important;
    flex-basis:16px!important;
  }

  #home .brand-intro .cta-icon svg,
  #home .brand-intro .android-icon svg,
  #home .brand-intro .web-icon svg{
    width:16px!important;
    height:16px!important;
  }
}

@media(max-width:520px){
  #home .brand-intro{
    gap:12px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  #home .brand-intro .home-brand-logo{
    flex-basis:95px!important;
    width:95px!important;
    height:95px!important;
    min-width:95px!important;
    min-height:95px!important;
  }

  #home .brand-intro .brand-name{
    font-size:22px!important;
  }

  #home .brand-intro .brand-sub{
    font-size:12px!important;
  }

  #home .brand-intro .hero-cta{
    gap:4px!important;
  }

  #home .brand-intro .hero-cta .wood-cta{
    padding:7px 5px!important;
    font-size:8.5px!important;
    gap:3px!important;
    border-radius:10px!important;
  }

  #home .brand-intro .cta-icon,
  #home .brand-intro .android-icon,
  #home .brand-intro .web-icon,
  #home .brand-intro .cta-icon svg,
  #home .brand-intro .android-icon svg,
  #home .brand-intro .web-icon svg{
    width:13px!important;
    height:13px!important;
    flex-basis:13px!important;
  }
}



#home > .hero{
  margin-top:clamp(56px, 8vw, 110px) !important;
  padding-top:clamp(18px, 2.5vw, 30px) !important;
  margin-bottom:clamp(28px, 4vw, 52px) !important;
}

#home > .hero .eyebrow{
  margin-bottom:clamp(12px, 2vw, 18px) !important;
}

#home > .hero h1{
  margin-top:0 !important;
}

@media (max-width:768px){
  #home > .hero{
    margin-top:clamp(42px, 10vw, 72px) !important;
    padding-top:16px !important;
    margin-bottom:32px !important;
  }
}

@media (max-width:480px){
  #home > .hero{
    margin-top:42px !important;
    padding-top:14px !important;
    margin-bottom:28px !important;
  }
}






#home .finmate-about{
  margin:clamp(58px,8vw,108px) 0 clamp(58px,8vw,104px);
  padding:clamp(24px,4vw,42px);
  position:relative;
  border:1px solid rgba(187,123,54,.38);
  border-radius:30px;
  background:rgba(255,255,255,.035);
  box-shadow:0 20px 50px rgba(44,20,7,.08), inset 0 1px rgba(255,224,171,.16);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
#home .finmate-about-head{
  max-width:820px;
  margin:0 auto clamp(24px,4vw,36px);
  text-align:center;
}
#home .finmate-about-kicker{
  display:inline-block;
  margin-bottom:10px;
  color:#a76a35;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
}
#home .finmate-about-head h2{
  margin:0;
  color:#3b1d0b;
  font-size:clamp(25px,3.3vw,42px);
  line-height:1.08;
  letter-spacing:-.035em;
}
#home .finmate-about-head p{
  margin:13px auto 0;
  max-width:690px;
  color:#765b48;
  font-size:clamp(13px,1.45vw,16px);
  line-height:1.65;
}
#home .finmate-about-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
#home .finmate-about-card{
  min-width:0;
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:22px 18px;
  border-radius:22px;
  border:1px solid rgba(187,123,54,.34);
  background:rgba(255,255,255,.045);
  box-shadow:0 12px 28px rgba(44,20,7,.07), inset 0 1px rgba(255,225,176,.12);
  transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
}
#home .finmate-about-card:hover{
  transform:translateY(-5px);
  border-color:rgba(187,123,54,.62);
  background:rgba(255,255,255,.075);
  box-shadow:0 18px 34px rgba(44,20,7,.12), inset 0 1px rgba(255,225,176,.18);
}
#home .about-card-icon{
  width:45px;height:45px;flex:0 0 45px;
  display:grid;place-items:center;
  border-radius:14px;
  color:#f1c776;
  background:linear-gradient(145deg,rgba(217,155,72,.30),rgba(91,44,18,.25));
  border:1px solid rgba(217,155,72,.42);
}
#home .about-card-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
#home .finmate-about-card h3{margin:1px 0 7px;color:#43220e;font-size:17px;font-weight:900}
#home .finmate-about-card p{margin:0;color:#765b48;font-size:12px;line-height:1.62}
#home .finmate-about-card a{display:inline-flex;margin-top:11px;color:#9a5b24;font-size:11px;font-weight:900;text-decoration:none}
#home .finmate-about-card a:hover{text-decoration:underline}

.dark #home .finmate-about{background:rgba(7,16,31,.18);border-color:rgba(79,131,190,.30);box-shadow:0 20px 50px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.06)}
.dark #home .finmate-about-kicker{color:#e3ae5a}
.dark #home .finmate-about-head h2{color:#f7e4c1}
.dark #home .finmate-about-head p,.dark #home .finmate-about-card p{color:#b9c9dd}
.dark #home .finmate-about-card{background:rgba(8,20,35,.28);border-color:rgba(80,130,185,.30);box-shadow:0 12px 28px rgba(0,0,0,.12),inset 0 1px rgba(255,255,255,.05)}
.dark #home .finmate-about-card:hover{background:rgba(13,29,49,.40);border-color:rgba(100,155,215,.50)}
.dark #home .finmate-about-card h3{color:#f5e2c0}
.dark #home .finmate-about-card a{color:#f0bf69}

@media(max-width:1050px){
  #home .finmate-about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  #home .finmate-about{margin:46px 0 50px;padding:22px 15px;border-radius:24px}
  #home .finmate-about-head{margin-bottom:22px}
  #home .finmate-about-grid{grid-template-columns:1fr;gap:11px}
  #home .finmate-about-card{padding:17px 15px;border-radius:18px}
  #home .about-card-icon{width:41px;height:41px;flex-basis:41px}
}
@media(max-width:390px){
  #home .finmate-about{margin:40px 0 44px;padding:19px 11px}
  #home .finmate-about-head h2{font-size:23px}
  #home .finmate-about-head p{font-size:12px}
  #home .finmate-about-card p{font-size:11px}
}



#about-finmate.fm-about-section{
  position:relative!important;width:100%!important;box-sizing:border-box!important;
  margin:clamp(80px,10vw,150px) 0 clamp(80px,10vw,140px)!important;
  padding:0 clamp(14px,4vw,56px)!important;isolation:isolate!important;
}
#about-finmate .fm-about-shell{
  position:relative!important;max-width:1180px!important;margin:0 auto!important;
  padding:clamp(28px,4vw,52px)!important;box-sizing:border-box!important;
  border:1px solid rgba(232,176,88,.28)!important;border-radius:28px!important;
  background:linear-gradient(135deg,rgba(50,28,15,.52),rgba(24,15,10,.28))!important;
  box-shadow:0 22px 65px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.05)!important;
  backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;overflow:hidden!important;
}
#about-finmate .fm-about-heading{position:relative;z-index:1;max-width:760px;margin:0 auto 42px;text-align:center}
#about-finmate .fm-about-kicker{
  display:inline-flex;align-items:center;padding:7px 13px;margin-bottom:13px;border:1px solid rgba(232,176,88,.28);
  border-radius:999px;background:rgba(232,176,88,.08);color:#e8b058;font-size:11px;font-weight:800;letter-spacing:.18em
}
#about-finmate #fm-about-title{margin:0;color:#f6e2bd;font-size:clamp(27px,4vw,46px);line-height:1.08;letter-spacing:-.025em}
#about-finmate .fm-about-heading p{max-width:650px;margin:15px auto 0;color:rgba(246,226,189,.7);font-size:clamp(14px,1.7vw,17px);line-height:1.7}
#about-finmate .fm-about-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#about-finmate .fm-about-card{
  display:flex;align-items:flex-start;gap:18px;min-width:0;padding:24px;box-sizing:border-box;
  border:1px solid rgba(232,176,88,.19);border-radius:20px;background:rgba(255,255,255,.035);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 12px 28px rgba(0,0,0,.12);
  transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease
}
#about-finmate .fm-about-card:hover{transform:translateY(-4px);border-color:rgba(232,176,88,.43);background:rgba(232,176,88,.055);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 18px 38px rgba(0,0,0,.18)}
#about-finmate .fm-about-icon{
  flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center;box-sizing:border-box;
  border-radius:17px;color:#f3b85e;background:linear-gradient(145deg,rgba(232,176,88,.18),rgba(232,176,88,.055));
  border:1px solid rgba(232,176,88,.28);box-shadow:0 8px 22px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.07)
}
#about-finmate .fm-about-icon svg{display:block;width:29px;height:29px;color:inherit}
#about-finmate .fm-about-label{display:block;margin:1px 0 6px;color:#d99b4c;font-size:10px;font-weight:900;letter-spacing:.14em}
#about-finmate .fm-about-card h3{margin:0 0 8px;color:#f5dfba;font-size:clamp(17px,2vw,21px);line-height:1.25}
#about-finmate .fm-about-card p{margin:0;color:rgba(246,226,189,.65);font-size:14px;line-height:1.65}
#about-finmate .fm-about-download{
  display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:9px 13px;border:1px solid rgba(232,176,88,.3);
  border-radius:10px;color:#f8e5c2;background:rgba(232,176,88,.1);text-decoration:none;font-size:12px;font-weight:800
}
#about-finmate .fm-about-download:hover{background:rgba(232,176,88,.18);border-color:rgba(232,176,88,.48)}
@media(max-width:800px){
  #about-finmate.fm-about-section{margin-top:clamp(60px,10vw,95px)!important;padding-left:14px!important;padding-right:14px!important}
  #about-finmate .fm-about-shell{padding:26px 18px!important;border-radius:22px!important}
  #about-finmate .fm-about-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  #about-finmate .fm-about-card{gap:13px;padding:18px}
  #about-finmate .fm-about-icon{flex-basis:50px;width:50px;height:50px;border-radius:14px}
  #about-finmate .fm-about-icon svg{width:25px;height:25px}
  #about-finmate .fm-about-heading{margin-bottom:26px}
}



#home .fm-do-now{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  margin:0 0 clamp(55px,8vw,105px);padding:clamp(25px,4vw,42px);
  border:1px solid rgba(232,176,88,.28);border-radius:26px;
  background:linear-gradient(135deg,rgba(232,176,88,.12),rgba(30,18,10,.3));
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 18px 45px rgba(0,0,0,.12);
}
#home .fm-do-now-kicker{display:inline-block;margin-bottom:9px;color:#e8b058;font-size:10px;font-weight:900;letter-spacing:.18em}
#home .fm-do-now h2{margin:0;color:#f6e2bd;font-size:clamp(23px,3.2vw,36px);line-height:1.1}
#home .fm-do-now p{margin:11px 0 0;color:rgba(246,226,189,.68);font-size:14px;line-height:1.6}
#home .fm-do-now-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;flex:0 0 auto;padding:14px 20px;border:1px solid rgba(232,176,88,.45);border-radius:13px;background:linear-gradient(135deg,#e8b058,#b97832);color:#251507;font-weight:900;font-size:13px;cursor:pointer;box-shadow:0 10px 25px rgba(0,0,0,.16);transition:transform .2s ease,filter .2s ease}
#home .fm-do-now-btn:hover{transform:translateY(-3px);filter:brightness(1.08)}
@media(max-width:650px){#home .fm-do-now{flex-direction:column;align-items:flex-start;margin-bottom:48px}#home .fm-do-now-btn{width:100%}}



#home .brand-welcome{
  margin:2px 0 0!important;
  font-family:ui-rounded,"Trebuchet MS",system-ui,sans-serif!important;
  font-size:clamp(24px,3.2vw,42px)!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.045em!important;
  color:var(--text)!important;
  text-wrap:balance;
  text-shadow:0 5px 18px rgba(0,0,0,.08);
}
#home .brand-intro{
  margin-bottom:34px!important;
}
#home .hero{
  padding-bottom:34px!important;
  margin-bottom:22px!important;
}
#home .balance-card{
  margin-top:12px!important;
}
@media (max-width:768px){
  #home .brand-welcome{font-size:clamp(23px,7vw,34px)!important}
  #home .brand-intro{margin-bottom:38px!important}
  #home .hero{padding-bottom:30px!important;margin-bottom:20px!important}
}



#home .brand-intro{
  align-items:center!important;
  gap:clamp(34px,5vw,76px)!important;
}
#home .brand-logo-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 clamp(170px,20vw,230px)!important;
  width:clamp(170px,20vw,230px)!important;
  min-width:0!important;
  gap:18px!important;
}
#home .brand-logo-stack .home-brand-logo{
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  min-width:0!important;
  min-height:0!important;
}
#home .brand-logo-stack .brand-welcome{
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  font-size:clamp(23px,2.8vw,20px)!important;
  line-height:1.05!important;
}
#home .brand-copy{
  flex:1 1 auto!important;
}
@media(max-width:768px){
  #home .brand-intro{
    gap:22px!important;
  }
  #home .brand-logo-stack{
    flex:0 0 125px!important;
    width:125px!important;
    gap:12px!important;
  }
  #home .brand-logo-stack .brand-welcome{
    font-size:clamp(19px,4.5vw,28px)!important;
  }
}
@media(max-width:520px){
  #home .brand-intro{
    gap:14px!important;
  }
  #home .brand-logo-stack{
    flex-basis:95px!important;
    width:95px!important;
    gap:9px!important;
  }
  #home .brand-logo-stack .brand-welcome{
    font-size:clamp(14px,4.1vw,20px)!important;
    letter-spacing:-.035em!important;
  }
}


#home .dashboard-welcome{
  font-size:clamp(18px,2.2vw,28px);
  font-weight:700;
  line-height:1.15;
  color:#f2d19b;
  margin:8px 0 10px;
  letter-spacing:-.02em;
}



#home .fm-how-section{
  margin-top:clamp(34px,5vw,76px);
  margin-bottom:clamp(28px,4vw,58px);
}
#home .fm-how-grid{margin-top:26px;}
#home .fm-how-grid .fm-about-icon{
  display:grid;place-items:center;font-size:14px;font-weight:800;letter-spacing:.04em;
}
#home .fm-how-grid .fm-about-icon span{opacity:.95;}
#home .fm-how-note{
  margin-top:24px;padding:18px 20px;border:1px solid rgba(214,169,104,.24);
  border-radius:18px;background:linear-gradient(135deg,rgba(214,169,104,.10),rgba(255,255,255,.025));
  color:var(--muted,#b8aa98);line-height:1.7;font-size:14px;
}
#home .fm-how-note strong{color:#f2d19b;}


#home .fm-about-section{
  display:block!important;
  width:100%!important;
  margin:clamp(42px,7vw,88px) 0!important;
  padding:0 clamp(12px,3vw,28px)!important;
  box-sizing:border-box!important;
}
#home .fm-about-shell{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:clamp(24px,4vw,46px)!important;
  border:1px solid rgba(232,176,88,.30)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,rgba(50,28,15,.52),rgba(24,15,10,.28))!important;
  box-shadow:0 22px 65px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.06)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
#home .fm-about-heading{text-align:center!important;max-width:780px!important;margin:0 auto 34px!important}
#home .fm-about-kicker{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:7px 13px!important;margin-bottom:13px!important;border:1px solid rgba(232,176,88,.30)!important;border-radius:999px!important;background:rgba(232,176,88,.08)!important;color:#e8b058!important;font-size:11px!important;font-weight:800!important;letter-spacing:.18em!important}
#home .fm-about-heading h2{margin:0!important;color:#f6e2bd!important;font-size:clamp(26px,4vw,44px)!important;line-height:1.1!important;letter-spacing:-.025em!important}
#home .fm-about-heading p{max-width:700px!important;margin:15px auto 0!important;color:rgba(246,226,189,.75)!important;font-size:clamp(13px,1.6vw,16px)!important;line-height:1.7!important}
#home .fm-about-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
#home .fm-about-card{display:flex!important;align-items:flex-start!important;gap:16px!important;min-width:0!important;padding:22px!important;border:1px solid rgba(232,176,88,.20)!important;border-radius:20px!important;background:rgba(255,255,255,.035)!important;box-sizing:border-box!important}
#home .fm-about-icon{width:42px!important;height:42px!important;flex:0 0 42px!important;display:grid!important;place-items:center!important;border-radius:14px!important;background:rgba(232,176,88,.12)!important;border:1px solid rgba(232,176,88,.30)!important;color:#f2c778!important}
#home .fm-about-card h3{margin:3px 0 8px!important;color:#f6e2bd!important;font-size:17px!important;line-height:1.25!important}
#home .fm-about-card p{margin:0!important;color:rgba(246,226,189,.70)!important;font-size:13px!important;line-height:1.65!important}
#home .fm-about-label{color:#e8b058!important;font-size:10px!important;font-weight:800!important;letter-spacing:.10em!important}
#home .fm-how-note{margin-top:22px!important;padding:16px 18px!important;border-radius:16px!important;background:rgba(232,176,88,.08)!important;border:1px solid rgba(232,176,88,.18)!important;color:rgba(246,226,189,.78)!important;font-size:13px!important;line-height:1.6!important}
#home .dashboardWelcome{display:block!important;margin:8px 0 10px!important;font-size:clamp(20px,2.5vw,30px)!important;font-weight:800!important;color:#f2d19b!important;line-height:1.15!important}
@media(max-width:700px){#home .fm-about-section{margin:34px 0!important;padding:0 8px!important}#home .fm-about-shell{padding:22px 15px!important;border-radius:22px!important}#home .fm-about-grid{grid-template-columns:1fr!important;gap:12px!important}#home .fm-about-card{padding:17px!important;gap:12px!important}#home .fm-about-card h3{font-size:16px!important}#home .fm-about-card p{font-size:12px!important}}


#home .fm-how-section{margin-top:clamp(56px,8vw,110px)!important;margin-bottom:32px!important}
#home .fm-how-section .fm-about-shell{padding:clamp(20px,3vw,32px)!important;border-radius:22px!important}
#home .fm-how-section .fm-about-heading{margin-bottom:22px!important}
#home .fm-how-section .fm-about-heading h2{font-size:clamp(22px,3vw,34px)!important}
#home .fm-how-section .fm-about-heading p{font-size:13px!important;line-height:1.5!important;margin-top:10px!important}
#home .fm-how-grid{gap:12px!important;margin-top:0!important}
#home .fm-how-grid .fm-about-card{padding:16px!important;gap:12px!important;border-radius:15px!important}
#home .fm-how-grid .fm-about-icon{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:10px!important;font-size:20px!important;font-weight:800!important}
#home .fm-how-grid .fm-about-card h3{font-size:15px!important;margin:3px 0 5px!important}
#home .fm-how-grid .fm-about-card p{font-size:12px!important;line-height:1.45!important}
#home .fm-how-grid .fm-about-label{font-size:9px!important}
#home .fm-how-note{margin-top:14px!important;padding:12px 14px!important;font-size:12px!important}
@media(max-width:700px){#home .fm-how-section{margin-top:46px!important}#home .fm-how-section .fm-about-shell{padding:18px 13px!important}#home .fm-how-grid .fm-about-card{padding:13px!important}}


.brand-intro .hero-cta .theme-btn,
.brand-intro .hero-cta .logout-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.brand-intro .hero-cta .theme-btn svg,
.brand-intro .hero-cta .logout-btn svg {
  width: 18px;
  height: 18px;
}


@media (max-width: 680px) {
  #home .brand-intro .hero-cta #exploreBtn {
    display: none !important;
  }

  #home .brand-intro .hero-cta {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    justify-content: center !important;
  }

  #home .brand-intro .hero-cta #themeBtn,
  #home .brand-intro .hero-cta #logoutBtn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}


#home .brand-intro .hero-cta #exploreBtn {
  display: inline-flex !important;
}
#home .brand-intro .hero-cta #themeBtn,
#home .brand-intro .hero-cta #logoutBtn {
  display: inline-flex !important;
}
@media (max-width: 680px) {
  #home .brand-intro .hero-cta {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
  }
}



#home .brand-intro .hero-cta #exploreBtn { display: inline-flex !important; }
#home .brand-intro .hero-cta #themeBtn,
#home .brand-intro .hero-cta #logoutBtn { display: none !important; }

@media (max-width: 680px) {
  #home .brand-intro .hero-cta #exploreBtn,
  #home .brand-intro .hero-cta #themeBtn,
  #home .brand-intro .hero-cta #logoutBtn { display: inline-flex !important; }
  #home .brand-intro .hero-cta {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
  }
}


@media (max-width: 680px) {
  #home .brand-intro {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    row-gap: 22px !important;
    margin-bottom: 34px !important;
  }

  #home .brand-logo-stack {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 4px !important;
  }

  #home .brand-logo-stack .brand-welcome {
    margin: 0 !important;
    font-size: clamp(18px, 5vw, 25px) !important;
    line-height: 1.2 !important;
  }

  #home .brand-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
  }

  #home .brand-copy .brand-name,
  #home .brand-copy .brand-sub {
    margin: 0 !important;
  }

  #home .brand-copy .hero-cta {
    margin-top: 8px !important;
  }

  #home .fm-how-section {
    margin-top: 58px !important;
  }

  #home .fm-how-section .fm-about-heading {
    margin-bottom: 26px !important;
  }
}


@media (max-width: 680px) {
  #home .brand-copy {
    text-align: center !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
  }

  #home .brand-copy .brand-name {
    width: 100% !important;
    text-align: center !important;
    font-size: clamp(20px, 5.4vw, 28px) !important;
    line-height: 1.2 !important;
  }

  #home .brand-copy .brand-sub {
    width: 100% !important;
    text-align: center !important;
    line-height: 1.45 !important;
  }

  #home .brand-copy .hero-cta {
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
  }
}
.pfd-person-icon svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
@media (max-width:680px) {
}


@media (max-width:680px) {
  .bottom-nav { transition:transform .25s ease, opacity .25s ease; }
  #pfdFooter { scroll-margin-top:24px; }
}
main.content {
  padding-bottom: 0 !important;
}
@media (max-width: 680px) {
}
@media (max-width:680px) {
}


#finmate-android.fm-android-section{position:relative;margin:clamp(60px,9vw,110px) 0 0;padding:0 14px;overflow:hidden}
#finmate-android .fm-android-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:center;gap:clamp(28px,6vw,90px);max-width:1180px;margin:0 auto;padding:clamp(32px,5vw,70px);border:1px solid rgba(232,176,88,.22);border-radius:32px;background:radial-gradient(circle at 85% 15%,rgba(232,176,88,.12),transparent 34%),linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 24px 70px rgba(0,0,0,.16)}
#finmate-android .fm-android-copy{position:relative;z-index:2}
#finmate-android .fm-android-kicker{display:inline-flex;padding:8px 13px;border:1px solid rgba(232,176,88,.3);border-radius:999px;background:rgba(232,176,88,.08);color:#e8b058;font-size:11px;font-weight:900;letter-spacing:.17em}
#finmate-android #fm-android-title{margin:18px 0 15px;color:#f6e2bd;font-size:clamp(30px,4.5vw,58px);line-height:1.04;letter-spacing:-.04em;max-width:650px}
#finmate-android .fm-android-copy>p{max-width:590px;color:rgba(246,226,189,.7);font-size:clamp(14px,1.5vw,17px);line-height:1.8;margin:0}
#finmate-android .fm-android-points{display:flex;flex-wrap:wrap;gap:10px 18px;margin:24px 0;color:#f5dfba;font-size:12px;font-weight:800}
#finmate-android .fm-android-download{display:inline-flex;align-items:center;gap:12px;margin-top:6px;padding:13px 18px;border:1px solid rgba(232,176,88,.4);border-radius:15px;background:linear-gradient(135deg,#e8b058,#bd7a2c);color:#24170b;text-decoration:none;box-shadow:0 12px 28px rgba(0,0,0,.2);transition:transform .25s ease,filter .25s ease}
#finmate-android .fm-android-download:hover{transform:translateY(-3px);filter:brightness(1.08)}
#finmate-android .fm-android-download>span:first-child{font-size:27px;line-height:1}
#finmate-android .fm-android-download strong,#finmate-android .fm-android-download small{display:block}
#finmate-android .fm-android-download strong{font-size:14px}
#finmate-android .fm-android-download small{margin-top:3px;font-size:10px;font-weight:800;letter-spacing:.08em;opacity:.7}
#finmate-android .fm-android-note{margin-top:15px!important;font-size:12px!important;color:rgba(246,226,189,.48)!important}
#finmate-android .fm-android-device-wrap{position:relative;display:flex;justify-content:center;align-items:center;min-height:440px}
#finmate-android .fm-android-glow{position:absolute;width:290px;height:390px;border-radius:50%;background:rgba(232,176,88,.12);filter:blur(55px)}
#finmate-android .fm-android-device{position:relative;width:min(255px,75%);aspect-ratio:9/18.5;padding:10px;border:2px solid #5e4b36;border-radius:37px;background:linear-gradient(145deg,#3d3328,#171412);box-shadow:18px 25px 55px rgba(0,0,0,.45),inset 0 0 0 2px #17120e;transform:rotate(3deg);transition:transform .4s ease}
#finmate-android .fm-android-device:hover{transform:rotate(0deg) translateY(-6px)}
#finmate-android .fm-android-speaker{position:absolute;top:17px;left:50%;width:64px;height:5px;transform:translateX(-50%);border-radius:99px;background:#0d0b09;z-index:3}
#finmate-android .fm-android-screen{position:relative;height:100%;overflow:hidden;border-radius:28px;background:linear-gradient(180deg,#241e18,#100e0c);padding:24px 13px 14px;color:#f6e2bd}
#finmate-android .fm-android-status,#finmate-android .fm-android-appbar{display:flex;justify-content:space-between;font-size:8px;font-weight:800;opacity:.7}
#finmate-android .fm-android-appbar{margin-top:20px;font-size:14px;opacity:1}
#finmate-android .fm-android-preview-card{margin-top:20px;padding:17px 13px;border:1px solid rgba(232,176,88,.3);border-radius:18px;background:linear-gradient(145deg,#8c5d2c,#3c2b1b);box-shadow:0 10px 25px rgba(0,0,0,.2)}
#finmate-android .fm-android-preview-card small,#finmate-android .fm-android-preview-card span{display:block;font-size:8px;opacity:.7}
#finmate-android .fm-android-preview-card strong{display:block;margin:9px 0;font-size:24px;letter-spacing:-.06em}
#finmate-android .fm-android-preview-card em{font-size:9px;font-style:normal}
#finmate-android .fm-android-preview-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
#finmate-android .fm-android-preview-stats>div{padding:10px;border:1px solid rgba(246,226,189,.1);border-radius:12px;background:rgba(255,255,255,.035)}
#finmate-android .fm-android-preview-stats small,#finmate-android .fm-android-preview-stats b{display:block;font-size:8px}#finmate-android .fm-android-preview-stats b{margin-top:6px;color:#e8b058;font-size:11px}
#finmate-android .fm-android-preview-list{margin-top:18px;font-size:10px}#finmate-android .fm-android-preview-list i{display:block;height:26px;margin-top:7px;border-radius:9px;background:rgba(255,255,255,.055);border:1px solid rgba(246,226,189,.08)}
#finmate-android .fm-android-placeholder{margin-top:12px;padding:10px;border:1px dashed rgba(232,176,88,.35);border-radius:10px;text-align:center;font-size:8px;line-height:1.5;color:rgba(246,226,189,.55)}
#finmate-android .fm-android-home-indicator{position:absolute;bottom:17px;left:50%;width:70px;height:4px;transform:translateX(-50%);border-radius:99px;background:#f6e2bd;opacity:.5}
@media(max-width:760px){#finmate-android.fm-android-section{padding:0 10px}#finmate-android .fm-android-shell{grid-template-columns:1fr;gap:24px;padding:28px 20px;border-radius:24px}#finmate-android #fm-android-title{font-size:clamp(31px,9vw,46px)}#finmate-android .fm-android-device-wrap{min-height:390px}#finmate-android .fm-android-device{width:220px}#finmate-android .fm-android-points{gap:10px;font-size:11px}}



#home .brand-intro .hero-cta .desktop-only-hero-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
#home .brand-intro .hero-cta .desktop-only-hero-btn svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 680px) {
  #home .brand-intro .hero-cta .desktop-only-hero-btn { display: none !important; }
}





.sidebar-brand{
  gap:12px!important;
  align-items:center!important;
}
.sidebar-brand span{
  display:inline-flex!important;
  align-items:center;
  font-family:"Trebuchet MS","Segoe UI",sans-serif!important;
  font-size:24px!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
  line-height:1!important;
  color:#f7d58e!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 0 #3b1a08, 0 0 14px rgba(227,174,90,.18)!important;
  -webkit-text-stroke:.35px rgba(255,232,174,.55);
  position:relative;
}
.sidebar-brand span::after{
  content:"";
  position:absolute;
  left:0;
  right:.18em;
  bottom:-7px;
  height:2px;
  border-radius:99px;
  background:linear-gradient(90deg,#ffd987,#9b5b24,transparent);
  opacity:.9;
}
@media(max-width:620px){
  .sidebar-brand span{font-size:21px!important;letter-spacing:.14em!important}
}

.fm-android-screenshot {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: top center;
  border-radius: 24px;
}


@media (max-width: 480px){
  .app-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    box-sizing:border-box!important;
  }
  .content{
    padding-left:14px!important;
    padding-right:14px!important;
    padding-bottom:110px!important;
  }
  .bottom-nav{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    top:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    height:68px!important;
    margin:0!important;
    padding:7px 8px!important;
    border-radius:22px!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:4px!important;
    z-index:2500!important;
  }
  .nav-item{
    width:100%!important;
    min-width:0!important;
    min-height:52px!important;
    height:52px!important;
    flex:initial!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    padding:5px 0!important;
  }
  .nav-add{
    order:initial!important;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    justify-self:center!important;
    align-self:center!important;
  }
  .nav-item small{font-size:8px!important;line-height:1!important;white-space:nowrap!important}
  .nav-icon{width:20px!important;height:20px!important;flex:0 0 20px!important}
  .page{min-height:calc(100dvh - 40px)!important;padding-bottom:20px!important}
  #assistant{padding-bottom:100px!important}
}


@media (max-width: 620px){
  html, body{width:100%;max-width:100%;overflow-x:hidden!important}
  .app-shell{width:100%!important;max-width:100%!important;margin:0!important;overflow-x:clip}
  .content{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0!important}
  .bottom-nav{
    box-sizing:border-box!important;
    left:8px!important;right:8px!important;width:auto!important;
    max-width:none!important;min-width:0!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:2px!important;padding:6px 6px calc(6px + env(safe-area-inset-bottom))!important;
    height:auto!important;min-height:66px!important;
  }
  .bottom-nav .nav-item{flex:1 1 0!important;width:auto!important;min-width:0!important;max-width:none!important}
  .bottom-nav .nav-add{flex:0 0 46px!important;width:46px!important;min-width:46px!important;height:46px!important}
  .bottom-nav .nav-item small{font-size:clamp(7px,2.3vw,9px)!important;overflow:hidden;text-overflow:ellipsis}
  .bottom-nav .nav-icon{width:19px!important;height:19px!important}
  .page, .card, .section, .transactions, .analytics{max-width:100%;box-sizing:border-box}
  img,svg,video,canvas{max-width:100%}
}
@media (max-width:360px){
  .bottom-nav{left:4px!important;right:4px!important;padding-left:3px!important;padding-right:3px!important;gap:0!important}
  .bottom-nav .nav-add{flex-basis:40px!important;width:40px!important;min-width:40px!important;height:40px!important}
  .bottom-nav .nav-item{min-height:46px!important}
  .bottom-nav .nav-item small{font-size:7px!important}
  .bottom-nav .nav-icon{width:17px!important;height:17px!important}
}


@media (max-width: 480px){
  body{overflow-x:hidden!important;}
  .app-shell{padding-left:0!important;width:100%!important;max-width:none!important;}
  .content{padding-left:14px!important;padding-right:14px!important;padding-bottom:115px!important;}
  .bottom-nav{
    position:fixed!important;
    top:auto!important;
    left:50%!important;
    right:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    transform:translateX(-50%)!important;
    width:calc(100% - 16px)!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:2px!important;
    align-items:center!important;
    justify-items:stretch!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
  }
  .nav-item{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    height:48px!important;
    flex:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    padding:3px 0!important;
    overflow:hidden!important;
  }
  .nav-item small{font-size:9px!important;line-height:1!important;white-space:nowrap!important;}
  .nav-icon{width:19px!important;height:19px!important;}
  .nav-add{
    order:initial!important;
    width:44px!important;
    height:44px!important;
    min-width:0!important;
    min-height:44px!important;
    justify-self:center!important;
    margin:0!important;
    border-radius:14px!important;
  }
  .nav-add svg{width:25px!important;height:25px!important;}
  .nav-item[data-page="home"],
  .nav-item[data-page="transactionsPage"],
  .nav-item[data-page="analytics"],
  .nav-item[data-page="assistant"]{order:initial!important;}
}
@media (max-width:360px){
  .bottom-nav{width:calc(100% - 10px)!important;padding-left:2px!important;padding-right:2px!important;}
  .nav-item small{font-size:8px!important;}
  .nav-icon{width:18px!important;height:18px!important;}
  .nav-add{width:40px!important;height:40px!important;min-height:40px!important;}
}



@media (max-width: 620px){
  html, body{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  .desktop-sidebar{
    display:none!important;
  }
  .app-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:0!important;
    box-sizing:border-box!important;
  }
  .content{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:clamp(12px,4vw,22px)!important;
    padding-right:clamp(12px,4vw,22px)!important;
    padding-bottom:130px!important;
    box-sizing:border-box!important;
  }
  .bottom-nav{
    display:grid!important;
    position:fixed!important;
    top:auto!important;
    left:50%!important;
    right:auto!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    transform:translateX(-50%)!important;
    width:calc(100% - 16px)!important;
    max-width:620px!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:6px 4px calc(6px + env(safe-area-inset-bottom))!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
    gap:2px!important;
    align-items:center!important;
    justify-items:stretch!important;
    box-sizing:border-box!important;
    z-index:2500!important;
  }
  .bottom-nav .nav-item{
    display:flex!important;
    flex:initial!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:46px!important;
    height:46px!important;
    padding:3px 0!important;
    margin:0!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    gap:3px!important;
  }
  .bottom-nav .nav-item small{
    display:block!important;
    max-width:100%!important;
    font-size:clamp(7px,2.1vw,9px)!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .bottom-nav .nav-icon{
    width:clamp(16px,4.8vw,20px)!important;
    height:clamp(16px,4.8vw,20px)!important;
    flex:0 0 auto!important;
  }
  .bottom-nav .nav-add{
    display:grid!important;
    place-items:center!important;
    width:clamp(36px,11vw,48px)!important;
    height:clamp(36px,11vw,48px)!important;
    min-width:0!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    border-radius:14px!important;
  }
  .bottom-nav .nav-add svg{
    width:clamp(20px,6vw,26px)!important;
    height:clamp(20px,6vw,26px)!important;
  }
}

@media (max-width:360px){
  .bottom-nav{width:calc(100% - 8px)!important;padding-left:2px!important;padding-right:2px!important;}
  .bottom-nav .nav-item small{font-size:7px!important;}
  .bottom-nav .nav-icon{width:16px!important;height:16px!important;}
  .bottom-nav .nav-add{width:34px!important;height:34px!important;border-radius:11px!important;}
}


@media (max-width: 620px){
  body.transaction-modal-open .bottom-nav{
    transform:translateY(calc(100% + 32px)) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
}

/* Keep admin dashboard full-width when its screen is active. */
#adminScreen:not(.hidden) {
  width: 100% !important;
  min-height: 100vh !important;
}

#adminScreen:not(.hidden) .admin-wrap {
  width: 100% !important;
  max-width: 1400px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Mobile: hide the bottom navigation while the page footer is visible. */
@media (max-width: 620px){
}

/* Email verification */
.verification-box{margin-top:4px;text-align:center}
.verification-icon{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.08);display:grid;place-items:center;margin:0 auto 12px;font-size:25px}
.verification-box h2{margin:0;font-size:22px;color:#fff}
.verification-box>p{color:rgba(255,255,255,.65);font-size:12px;line-height:1.55;margin:8px 0 16px}
.verification-box>p strong{color:#fff;word-break:break-word}
.verification-code{text-align:center;letter-spacing:7px;font-size:22px;font-weight:800}
.auth-link-btn{display:block;width:100%;border:0;background:transparent;color:#fff;padding:11px 8px;margin-top:5px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.auth-link-btn.secondary{color:rgba(255,255,255,.55);font-weight:700}
body[data-theme] .verification-icon{background:rgba(255,255,255,.06)}
body[data-theme] .verification-box h2,body[data-theme] .verification-box>p strong{color:var(--wood-text)!important}

/* Password reset flow */
.forgot-password-btn{margin-top:6px;margin-bottom:2px;color:rgba(255,255,255,.82)}
.auth-flow-box{text-align:center}
.auth-flow-box h2{margin:0;font-size:22px;color:#fff}
.auth-flow-box>p{color:rgba(255,255,255,.65);font-size:12px;line-height:1.55;margin:8px 0 16px}
.auth-flow-box>p strong{color:#fff;word-break:break-word}
.auth-flow-box .auth-label{text-align:left}
.auth-flow-box .auth-submit{margin-top:18px}
body[data-theme] .auth-flow-box h2,body[data-theme] .auth-flow-box>p strong{color:var(--wood-text)!important}
body[data-theme] .forgot-password-btn{color:var(--wood-text)!important}

/* =========================================================
   FinMate Professional Authentication UI
   Responsive login / signup / password recovery
   ========================================================= */
.auth-screen{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  padding:24px;overflow:auto;background:
  radial-gradient(circle at 10% 10%,rgba(43,127,255,.18),transparent 30%),
  radial-gradient(circle at 90% 90%,rgba(20,109,245,.14),transparent 30%),#07101f;
}
.auth-screen.hidden{display:none}
.auth-shell{width:min(980px,100%);min-height:620px;display:grid;grid-template-columns:42% 58%;overflow:hidden;border:1px solid rgba(255,255,255,.10);border-radius:30px;background:#fff;box-shadow:0 30px 90px rgba(0,0,0,.42)}
.auth-brand-panel{position:relative;display:flex;flex-direction:column;padding:42px;background:linear-gradient(150deg,#0758d9 0%,#146df5 54%,#4d98ff 100%);color:#fff;overflow:hidden}
.auth-brand-panel:before,.auth-brand-panel:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13);pointer-events:none}
.auth-brand-panel:before{width:420px;height:420px;right:-220px;top:30px}.auth-brand-panel:after{width:300px;height:300px;left:-190px;bottom:-120px}
.auth-brand-top{position:relative;z-index:1;display:flex;align-items:center;gap:11px;font-size:22px;font-weight:900;letter-spacing:-.04em}
.auth-brand-logo{width:44px;height:44px;object-fit:contain;border-radius:13px;background:rgba(255,255,255,.15);padding:4px;box-sizing:border-box}
.auth-brand-copy{position:relative;z-index:1;margin:auto 0;max-width:330px}.auth-kicker,.flow-kicker{display:block;font-size:10px;font-weight:900;letter-spacing:.16em}.auth-kicker{opacity:.68;margin-bottom:17px}
.auth-brand-copy h2{font-size:42px;line-height:1.04;letter-spacing:-.055em;margin:0 0 18px}.auth-brand-copy h2 span{opacity:.68}.auth-brand-copy p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.76);margin:0}.auth-dot{width:7px;height:7px;border-radius:50%;background:#9dffca;box-shadow:0 0 0 5px rgba(157,255,202,.12)}
.auth-card{width:auto;min-height:620px;padding:48px 56px;box-sizing:border-box;background:#fff;color:#0b1220;display:flex;flex-direction:column;justify-content:center}
.auth-mobile-brand{display:none}.auth-heading{margin-bottom:24px}.auth-heading h1{font-size:31px;line-height:1.1;letter-spacing:-.045em;margin:0 0 8px;color:#0b1220}.auth-heading p{margin:0;color:#687386;font-size:13px;line-height:1.55}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:13px;background:#eef4fb;margin-bottom:22px}.auth-tab{border:0;border-radius:10px;padding:11px 10px;background:transparent;color:#7b8798;font:inherit;font-size:12px;font-weight:850;cursor:pointer;transition:.2s}.auth-tab.active{background:#fff;color:#146df5;box-shadow:0 3px 12px rgba(15,40,80,.08)}
.auth-label{display:block;margin:15px 0 7px;font-size:11px;font-weight:850;color:#354156}.auth-password-label{display:flex;align-items:end;justify-content:space-between}.auth-password-label .auth-label{margin-bottom:7px}
.auth-input-wrap{position:relative}.auth-input{box-sizing:border-box;width:100%;height:48px;border:1px solid #d9e3ef;outline:0;border-radius:13px;padding:0 14px 0 43px;background:#f9fbfe;color:#0b1220;font:inherit;font-size:13px;transition:.2s}.auth-input-wrap>.auth-input{padding-right:55px}.auth-input:focus{border-color:#70a9ff;background:#fff;box-shadow:0 0 0 4px rgba(20,109,245,.09)}.auth-input::placeholder{color:#a4afbe}.auth-input-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:1;color:#8a97a9;font-size:12px;font-weight:900;pointer-events:none}.password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#687386;font-size:10px;font-weight:850;cursor:pointer;padding:6px}.password-toggle:hover{color:#146df5}
.auth-submit{width:100%;height:48px;margin-top:20px;border:0;border-radius:13px;padding:0 16px;background:linear-gradient(135deg,#0b63ed,#287df5);color:#fff;font-weight:850;font-size:13px;cursor:pointer;box-shadow:0 10px 24px rgba(20,109,245,.20);display:flex;align-items:center;justify-content:center;gap:10px;transition:.2s}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(20,109,245,.25)}.auth-submit:disabled{opacity:.58;cursor:wait;transform:none}.auth-submit-arrow{font-size:17px;line-height:1}
.auth-link-btn{display:block;border:0;background:transparent;color:#146df5;padding:7px 4px;margin:8px auto 0;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.forgot-password-btn{margin:0 0 7px;padding:0;color:#146df5}.auth-link-btn:hover{text-decoration:underline}.auth-link-btn.secondary{color:#687386}
.auth-message{min-height:18px;margin:11px 0 0;text-align:center;font-size:11px;line-height:1.45;color:#687386}.auth-message.error{color:#dc4b4b}
.auth-inner-flow{position:relative}.auth-inner-flow h2{text-align:center;margin:10px 0 8px;font-size:25px;letter-spacing:-.04em;color:#0b1220}.auth-inner-flow>p:not(.auth-message){text-align:center;color:#687386;font-size:12px;line-height:1.6;margin:0 auto 18px;max-width:390px}.auth-inner-flow>p strong{color:#0b1220;overflow-wrap:anywhere}.flow-icon{width:58px;height:58px;margin:0 auto 13px;border-radius:18px;display:grid;place-items:center;background:#edf5ff;color:#146df5;font-size:25px;box-shadow:inset 0 0 0 1px #d8e8ff}.flow-kicker{text-align:center;color:#146df5;font-size:9px;margin-bottom:7px}.top-back{position:absolute;left:0;top:-28px;margin:0;color:#687386}.back-link{border:0;background:transparent;color:#687386;font:inherit;font-size:11px;font-weight:800;cursor:pointer;padding:8px 0}.back-link:hover{color:#146df5}.code-input{text-align:center;letter-spacing:.35em;font-size:20px;font-weight:850;padding-left:18px!important}.auth-legal{text-align:center;color:#a0aabb;font-size:9px;line-height:1.5;margin:24px 0 0}.hidden{display:none!important}
body[data-theme] .auth-card{background:#fff!important;color:#0b1220!important}body[data-theme] .auth-heading h1,body[data-theme] .auth-inner-flow h2,body[data-theme] .auth-inner-flow>p strong{color:#0b1220!important}body[data-theme] .auth-subtitle,body[data-theme] .auth-label,body[data-theme] .auth-message{color:#687386!important}
@media(max-width:780px){.auth-screen{padding:14px}.auth-shell{display:block;width:min(520px,100%);min-height:0;border-radius:24px}.auth-brand-panel{display:none}.auth-card{min-height:0;padding:34px 30px 28px;border-radius:24px}.auth-mobile-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin-bottom:24px;color:#0b1220;font-size:20px;font-weight:900}.auth-logo{width:42px;height:42px;object-fit:contain;border-radius:12px;background:#edf5ff;padding:4px}.auth-heading{text-align:center}.auth-heading h1{font-size:28px}.auth-legal{margin-top:20px}}
@media(max-width:430px){.auth-screen{padding:8px}.auth-card{padding:26px 18px 22px;border-radius:20px}.auth-mobile-brand{margin-bottom:20px}.auth-heading{margin-bottom:20px}.auth-heading h1{font-size:25px}.auth-tabs{margin-bottom:18px}.auth-input{height:46px}.auth-submit{height:46px}.auth-inner-flow h2{font-size:22px}.flow-icon{width:52px;height:52px;border-radius:16px}.top-back{top:-20px}.auth-legal{font-size:8px}}



/* ===== FinMate compact modern auth refresh ===== */
:root{
  --auth-black:#0b0806;
  --auth-black-2:#15100c;
  --auth-wood:#7a451f;
  --auth-wood-2:#9b6230;
  --auth-gold:#d9a65b;
  --auth-cream:#f5e7cf;
  --auth-muted:#b7a28c;
  --auth-line:rgba(217,166,91,.20);
}
.auth-screen{
  padding:18px;
  background:
    radial-gradient(circle at 18% 10%,rgba(155,98,48,.20),transparent 32%),
    radial-gradient(circle at 85% 90%,rgba(217,166,91,.08),transparent 34%),
    linear-gradient(145deg,#080605 0%,#120c08 52%,#090706 100%) !important;
}
.auth-shell{
  width:min(760px,100%);
  min-height:0;
  grid-template-columns:31% 69%;
  border:1px solid var(--auth-line);
  border-radius:22px;
  background:#100b08;
  box-shadow:0 22px 55px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,230,190,.06);
}
.auth-brand-panel{
  padding:25px;
  background:
    linear-gradient(145deg,rgba(155,98,48,.96),rgba(77,39,16,.98) 55%,rgba(18,10,6,.99));
}
.auth-brand-panel:before{width:260px;height:260px;right:-170px;top:-80px;border-color:rgba(255,224,171,.12)}
.auth-brand-panel:after{width:190px;height:190px;left:-130px;bottom:-95px;border-color:rgba(255,224,171,.10)}
.auth-brand-top{font-size:18px;gap:8px}
.auth-brand-logo{width:36px;height:36px;border-radius:10px;background:rgba(0,0,0,.18);padding:3px}
.auth-brand-copy{max-width:220px}
.auth-kicker{font-size:8px;margin-bottom:11px;color:#f6dfbd}
.auth-brand-copy h2{font-size:29px;line-height:1.06;margin-bottom:12px}
.auth-brand-copy p{font-size:11px;line-height:1.6;color:rgba(255,241,218,.72)}
.auth-dot{width:6px;height:6px;background:#e0b46e;box-shadow:0 0 0 4px rgba(224,180,110,.10)}

.auth-card{
  min-height:0;
  padding:31px 38px;
  background:linear-gradient(145deg,#17100c,#0e0a08) !important;
  color:var(--auth-cream) !important;
  justify-content:center;
}
.auth-mobile-brand{display:none}
.auth-heading{margin-bottom:17px}
.auth-heading h1,.auth-inner-flow h2{
  color:var(--auth-cream) !important;
  font-size:24px;
  letter-spacing:-.035em;
}
.auth-heading p,.auth-inner-flow>p:not(.auth-message){
  color:var(--auth-muted) !important;
  font-size:11px;
  line-height:1.5;
}
.auth-tabs{
  gap:3px;
  padding:3px;
  margin-bottom:15px;
  border-radius:11px;
  background:#0a0806 !important;
  border:1px solid rgba(217,166,91,.10);
}
.auth-tab{
  padding:9px 8px;
  border-radius:8px;
  color:#927d68 !important;
  font-size:11px;
}
.auth-tab.active{
  color:#f8e6c9 !important;
  background:linear-gradient(145deg,#714018,#4b260f) !important;
  box-shadow:inset 0 1px 0 rgba(255,224,171,.13),0 4px 12px rgba(0,0,0,.20);
}
.auth-label{
  margin:10px 0 5px;
  color:#d4bea1 !important;
  font-size:10px;
}
.auth-input{
  height:43px;
  border:1px solid rgba(217,166,91,.18) !important;
  border-radius:10px;
  background:#0b0806 !important;
  color:#f7ead5 !important;
  font-size:12px;
}
.auth-input:focus{
  border-color:rgba(217,166,91,.60) !important;
  background:#100b08 !important;
  box-shadow:0 0 0 3px rgba(155,98,48,.12) !important;
}
.auth-input::placeholder{color:#705f50}
.auth-input-icon{color:#a77a4b}
.password-toggle,.auth-link-btn,.forgot-password-btn{color:#d9a65b !important}
.auth-submit{
  height:43px;
  margin-top:14px;
  border-radius:10px;
  background:linear-gradient(145deg,#d7a45d,#8a4f20) !important;
  color:#211107 !important;
  box-shadow:0 8px 18px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,239,202,.32);
  font-size:12px;
}
.auth-submit:hover{transform:translateY(-1px);box-shadow:0 11px 22px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,239,202,.32)}
.auth-message{color:#bda990 !important;font-size:10px}
.auth-message.error{color:#ff9a82 !important}
.flow-icon{
  width:46px;height:46px;margin-bottom:9px;border-radius:13px;
  background:linear-gradient(145deg,#7c461e,#3c1c0b) !important;
  color:#f3cf91 !important;
  box-shadow:inset 0 0 0 1px rgba(217,166,91,.25);
  font-size:20px;
}
.flow-kicker{color:#c99555 !important;font-size:8px}
.auth-inner-flow h2{font-size:21px;margin:7px 0 6px}
.auth-inner-flow>p:not(.auth-message){margin-bottom:13px}
.top-back,.back-link{color:#a98d70 !important;font-size:10px}
.top-back:hover,.back-link:hover{color:#e0b36d !important}
.code-input{height:45px;letter-spacing:.3em;font-size:18px}
.auth-legal{color:#725f4d !important;font-size:8px;margin-top:16px}

@media(max-width:780px){
  .auth-screen{padding:12px}
  .auth-shell{width:min(430px,100%);display:block;border-radius:18px}
  .auth-brand-panel{display:none}
  .auth-card{padding:25px 22px 20px;border-radius:18px}
  .auth-mobile-brand{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin-bottom:18px;
    color:#f5e7cf !important;
    font-size:17px;
  }
  .auth-logo{
    width:34px;height:34px;
    border-radius:9px;
    background:#3e2110 !important;
    padding:3px;
  }
  .auth-heading{text-align:center}
}
@media(max-width:430px){
  .auth-screen{padding:7px}
  .auth-card{padding:22px 16px 18px;border-radius:16px}
  .auth-heading h1{font-size:22px}
  .auth-heading{margin-bottom:15px}
  .auth-tabs{margin-bottom:13px}
  .auth-input,.auth-submit{height:42px}
  .auth-label{margin-top:8px}
  .auth-inner-flow h2{font-size:20px}
  .auth-legal{margin-top:13px}
}


/* ===== Final FinMate brown/gold theme ===== */
:root{
  --bg:#100b07;
  --surface:#1b120d;
  --surface2:#24170f;
  --text:#f5e7cf;
  --muted:#b9a48e;
  --line:rgba(217,166,91,.18);
  --primary:#d9a65b;
  --primary2:#8a4f20;
  --shadow:0 16px 40px rgba(0,0,0,.28);
}
html,body{background:var(--bg)!important;color:var(--text)!important}

/* App surfaces */
.topbar{background:rgba(16,11,7,.90)!important;border-bottom:1px solid rgba(217,166,91,.10)}
.brand-mark{background:linear-gradient(135deg,#d9a65b,#8a4f20)!important;color:#211107!important;box-shadow:0 7px 18px rgba(0,0,0,.28)!important}
.icon-btn,.stat-card,.progress-card,.goal-card,.quick-add,.transactions,.analysis-card,.category-list,.chart-card,.finance-health,.creator-card,.modal-card,.chat,.quick-buttons button,.suggestions button{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important}
.balance-card{background:linear-gradient(140deg,#4d260f,#9b6230 55%,#d9a65b)!important;color:#211107!important;box-shadow:0 18px 38px rgba(0,0,0,.28)!important}
.balance-card .balance-meta button{background:rgba(33,17,7,.18)!important;color:#211107!important}
.progress span{background:linear-gradient(90deg,#8a4f20,#d9a65b)!important}
.quick-add .ai-orb{background:#2b1b10!important;color:#d9a65b!important}
.add-btn,.save-btn,.chat-input button,.nav-add{background:linear-gradient(135deg,#d9a65b,#8a4f20)!important;color:#211107!important;box-shadow:0 10px 22px rgba(0,0,0,.28)!important}
.insight-card{background:linear-gradient(135deg,#2a1b10,#1b120d)!important;color:var(--text)!important;border-color:var(--line)!important}
.insight-icon{background:#24170f!important;color:#d9a65b!important}
.bottom-nav{background:rgba(24,16,11,.96)!important;border-color:var(--line)!important;box-shadow:0 -12px 35px rgba(0,0,0,.30)!important}
.nav-item{color:#8e7963!important}.nav-item.active{color:#d9a65b!important}
.nav-add{border-color:#100b07!important}
.modal{background:rgba(0,0,0,.68)!important}
.close,.type-toggle{background:var(--surface2)!important;color:var(--text)!important}
.type-toggle .selected{background:#3a2414!important;color:#d9a65b!important}
.modal-card input,.modal-card select,.chat-input input{background:#100b07!important;color:var(--text)!important;border-color:var(--line)!important}

/* Authentication: dark panels only, no old white/blue theme */
.auth-screen{background:radial-gradient(circle at 18% 10%,rgba(155,98,48,.20),transparent 32%),radial-gradient(circle at 85% 90%,rgba(217,166,91,.08),transparent 34%),linear-gradient(145deg,#080605 0%,#120c08 52%,#090706 100%)!important}
.auth-shell{background:#100b08!important;border-color:rgba(217,166,91,.20)!important}
.auth-brand-panel{background:linear-gradient(145deg,#6b3b19,#3f210f 55%,#120a06)!important}
.auth-card{background:linear-gradient(145deg,#17100c,#0e0a08)!important;color:#f5e7cf!important;border-color:rgba(217,166,91,.16)!important}
.auth-brand-copy{margin:auto 0;max-width:220px!important}
.auth-brand-simple h2{font-size:30px!important;color:#f5e7cf!important;margin:12px 0 4px!important}
.auth-brand-simple p{color:#bfa990!important;font-size:11px!important;margin:0!important}
.auth-brand-mark-line{display:block;width:34px;height:3px;border-radius:99px;background:linear-gradient(90deg,#d9a65b,#8a4f20)}
.auth-heading h1,.auth-inner-flow h2{color:#f5e7cf!important}
.auth-heading p,.auth-inner-flow>p:not(.auth-message){color:#b9a48e!important}
.auth-tabs{background:#0a0806!important;border-color:rgba(217,166,91,.10)!important}
.auth-tab{color:#927d68!important}.auth-tab.active{background:linear-gradient(145deg,#714018,#4b260f)!important;color:#f8e6c9!important}
.auth-label{color:#d4bea1!important}
.auth-input{background:#0b0806!important;color:#f7ead5!important;border-color:rgba(217,166,91,.18)!important}
.auth-input:focus{background:#100b08!important;border-color:rgba(217,166,91,.60)!important;box-shadow:0 0 0 3px rgba(155,98,48,.12)!important}
.auth-submit{background:linear-gradient(145deg,#d7a45d,#8a4f20)!important;color:#211107!important}
.flow-icon{background:linear-gradient(145deg,#7c461e,#3c1c0b)!important;color:#f3cf91!important}
.auth-logo{background:#3e2110!important}
body[data-theme] .auth-card{background:linear-gradient(145deg,#17100c,#0e0a08)!important;color:#f5e7cf!important}
body[data-theme] .auth-heading h1,body[data-theme] .auth-inner-flow h2,body[data-theme] .auth-inner-flow>p strong{color:#f5e7cf!important}
body[data-theme] .auth-label,body[data-theme] .auth-message{color:#b9a48e!important}

/* Keep the existing theme toggle functional while using the same brown/gold palette. */
body.dark{
  --bg:#100b07;
  --surface:#1b120d;
  --surface2:#24170f;
  --text:#f5e7cf;
  --muted:#b9a48e;
  --line:rgba(217,166,91,.18);
  --primary:#d9a65b;
  --primary2:#8a4f20;
  --accent:#d9a65b;
  --shadow:0 16px 40px rgba(0,0,0,.28);
}
.dark .bottom-nav{background:rgba(24,16,11,.96)!important;border-color:var(--line)!important}
.dark .nav-theme{background:#24170f!important;color:#d9a65b!important}
.dark #assistant .ai-orb{background:linear-gradient(135deg,#8a4f20,#d9a65b)!important;color:#211107!important}
.dark #assistant .suggestions button{background:#1b120d!important;border-color:var(--line)!important}

/* FinMate auth refresh: simple single-card brown/wood UI */
.auth-screen{padding:28px 18px!important;background:linear-gradient(135deg,#ead8bf 0%,#c7a47a 48%,#8b5a2b 100%)!important;min-height:100vh!important;display:grid!important;place-items:center!important}
.auth-shell{width:min(520px,100%)!important;min-height:0!important;display:block!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
.auth-brand-panel{display:none!important}
.auth-card{width:100%!important;min-height:0!important;padding:42px 44px 40px!important;border-radius:26px!important;background:linear-gradient(145deg,#2b1b12,#1c100b)!important;border:1px solid rgba(217,166,91,.28)!important;box-shadow:0 26px 70px rgba(55,31,13,.32)!important;color:#f5e7cf!important}
.auth-card-brand{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;margin:0 auto 28px!important;color:#f5e7cf!important;font-size:27px!important;font-weight:900!important;letter-spacing:-.04em!important}
.auth-card-brand .auth-logo{display:block!important;width:54px!important;height:54px!important;object-fit:contain!important;border-radius:15px!important;background:#3e2110!important;padding:5px!important;margin:0!important}
.auth-heading{text-align:center!important;margin-bottom:25px!important}
.auth-heading h1{font-size:32px!important;line-height:1.1!important;margin:0!important;color:#f5e7cf!important}
.auth-tabs{background:#100b08!important;border:1px solid rgba(217,166,91,.12)!important;margin-bottom:24px!important}
.auth-tab{color:#bfa990!important;padding:13px 10px!important}
.auth-tab.active{background:#d9a65b!important;color:#24140b!important;box-shadow:0 5px 15px rgba(217,166,91,.18)!important}
.auth-label{color:#d8c1a5!important}
.auth-input-wrap{background:#120c09!important;border:1px solid rgba(217,166,91,.24)!important;border-radius:12px!important}
.auth-input{color:#f5e7cf!important;background:transparent!important;height:50px!important}
.auth-input::placeholder{color:#907b66!important}
.auth-input:focus{border-color:#d9a65b!important;box-shadow:0 0 0 3px rgba(217,166,91,.12)!important}
.password-toggle,.auth-link-btn,.back-link{color:#d9a65b!important}
.auth-submit{min-height:50px!important;border-radius:12px!important;background:linear-gradient(135deg,#d9a65b,#a86d32)!important;color:#211208!important;box-shadow:0 9px 20px rgba(168,109,50,.22)!important;font-weight:900!important}
.auth-submit:hover{transform:translateY(-1px)!important}
.auth-message{color:#d9b98e!important}
.auth-inner-flow h2{color:#f5e7cf!important;font-size:28px!important}
.auth-inner-flow>p:not(.auth-message){color:#bfa990!important}
.auth-inner-flow>p strong{color:#f5e7cf!important}
.auth-inner-flow .auth-input{background:#120c09!important}
.auth-inner-flow .auth-label{color:#d8c1a5!important}
.top-back{top:-8px!important}
.hidden{display:none!important}
@media(max-width:560px){
  .auth-screen{padding:16px 10px!important}
  .auth-card{padding:34px 24px 30px!important;border-radius:22px!important}
  .auth-card-brand{font-size:24px!important;margin-bottom:24px!important}
  .auth-card-brand .auth-logo{width:50px!important;height:50px!important}
  .auth-heading h1{font-size:29px!important}
}
@media(max-width:390px){
  .auth-card{padding:28px 17px 24px!important}
  .auth-card-brand{font-size:22px!important}
  .auth-heading h1{font-size:26px!important}
}

/* Final auth sizing/flow adjustments */
.auth-shell{width:min(600px,100%)!important}
.auth-card{width:100%!important}
.forgot-password-btn{display:block!important;width:max-content!important;margin:12px auto 0!important;padding:4px 8px!important;background:transparent!important;border:0!important;font-size:12px!important;font-weight:800!important}
.auth-inner-flow{width:100%!important}
@media(max-width:560px){.auth-shell{width:100%!important}.auth-card{padding:34px 24px 30px!important}}

/* Final auth polish */
.auth-shell{width:min(640px,100%)!important}
.auth-card{padding:34px 52px 32px!important}
.auth-card-brand{margin-bottom:20px!important}
.auth-heading{display:none!important}
.auth-tabs{margin-bottom:20px!important}
.auth-submit{min-height:48px!important}
.auth-inner-flow .top-back{position:relative!important;top:auto!important;left:auto!important;display:inline-flex!important;margin:0 0 18px!important;transform:translateY(-4px)!important}
.auth-inner-flow h2{margin-top:0!important}
@media (max-width:700px){
  .auth-screen{padding:20px 12px!important}
  .auth-card{padding:28px 24px 26px!important;border-radius:22px!important}
  .auth-card-brand{font-size:24px!important;margin-bottom:18px!important}
}

/* Financial Wallet: keep bot suggestion text readable on hover in every theme. */
#assistant .suggestions button,
#assistant .suggestions button:hover,
#assistant .suggestions button:focus-visible,
.dark #assistant .suggestions button,
.dark #assistant .suggestions button:hover,
.dark #assistant .suggestions button:focus-visible,
body[data-theme] #assistant .suggestions button,
body[data-theme] #assistant .suggestions button:hover {
  color: var(--wood-text, #f7ead6) !important;
}

.page-splash-description{
  max-width:360px;
  margin-top:12px;
  color:var(--muted,#8d765f);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:13px;
  line-height:1.65;
  font-weight:600;
  letter-spacing:.01em;
  text-wrap:balance;
  text-shadow:0 1px 10px rgba(0,0,0,.04);
}
.page-splash-progress{
  width:min(330px,78vw);
  margin-top:25px;
  text-align:center;
}
.page-splash-progress-track{
  width:100%;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(120,80,40,.16);
  border:1px solid rgba(120,80,40,.18);
}
.page-splash-progress-track span{
  display:block;
  width:0%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#7f461a,#e2ae5b);
  transition:width .08s linear;
}
.page-splash-percent{display:none}
#pageSplashPercent{
  margin-top:8px;
  font-size:11px;
  font-weight:800;
  color:var(--muted,#8d765f);
}
@media(max-width:480px){
  .page-splash-description{font-size:11px;max-width:290px}
  .page-splash-progress{margin-top:21px}
}

/* ===== Financial Wallet developers section ===== */
#financial-wallet-developers.fw-developers-section{
  position:relative;
  margin:34px 0 54px;
  padding:clamp(30px,5vw,54px) clamp(18px,4vw,42px);
  border:1px solid rgba(232,176,88,.22);
  border-radius:32px;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 10%,rgba(232,176,88,.10),transparent 34%),
    radial-gradient(circle at 90% 80%,rgba(64,104,155,.10),transparent 38%),
    rgba(255,255,255,.025);
  box-shadow:0 22px 55px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.045);
}
#financial-wallet-developers .fw-developers-shell{max-width:1040px;margin:0 auto}
#financial-wallet-developers .fw-developers-heading{text-align:center;max-width:760px;margin:0 auto 34px}
#financial-wallet-developers .fw-developers-kicker{
  display:inline-block;margin-bottom:9px;color:#d99b4c;font-size:10px;font-weight:900;letter-spacing:.16em
}
#financial-wallet-developers #fw-developers-title{
  margin:0;color:#f6e2bd;font-size:clamp(28px,4vw,43px);line-height:1.08;letter-spacing:-.025em
}
#financial-wallet-developers .fw-developers-heading p{
  max-width:680px;margin:14px auto 0;color:rgba(246,226,189,.68);font-size:clamp(13px,1.7vw,16px);line-height:1.7
}
#financial-wallet-developers .fw-developers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#financial-wallet-developers .fw-developer-card{
  display:flex;align-items:center;gap:20px;min-width:0;padding:20px;border:1px solid rgba(232,176,88,.20);border-radius:24px;
  background:rgba(8,18,30,.30);box-shadow:inset 0 1px rgba(255,255,255,.04),0 14px 32px rgba(0,0,0,.12);
  transition:transform .25s ease,border-color .25s ease,background .25s ease
}
#financial-wallet-developers .fw-developer-card:hover{transform:translateY(-4px);border-color:rgba(232,176,88,.42);background:rgba(13,29,49,.42)}
#financial-wallet-developers .fw-developer-photo{
  width:96px;height:96px;flex:0 0 96px;border-radius:50%;object-fit:cover;display:grid;place-items:center;
  border:2px solid rgba(232,176,88,.42);box-shadow:0 12px 26px rgba(0,0,0,.25),inset 0 0 0 4px rgba(255,255,255,.04)
}
#financial-wallet-developers .fw-developer-photo-wa{
  color:#f6e2bd;font-size:27px;font-weight:950;letter-spacing:-.04em;
  background:radial-gradient(circle at 35% 25%,#a8753e,#51321d 58%,#24160e)
}
#financial-wallet-developers .fw-developer-copy{min-width:0}
#financial-wallet-developers .fw-developer-role{display:block;margin-bottom:6px;color:#d99b4c;font-size:9px;font-weight:900;letter-spacing:.15em}
#financial-wallet-developers .fw-developer-copy h3{margin:0 0 7px;color:#f5dfba;font-size:clamp(18px,2vw,23px);line-height:1.2}
#financial-wallet-developers .fw-developer-copy p{margin:0;color:rgba(246,226,189,.66);font-size:13px;line-height:1.6}
@media(max-width:760px){
  #financial-wallet-developers.fw-developers-section{margin:28px 0 42px;padding:27px 15px;border-radius:24px}
  #financial-wallet-developers .fw-developers-grid{grid-template-columns:1fr;gap:12px}
  #financial-wallet-developers .fw-developer-card{padding:17px;gap:16px;border-radius:20px}
  #financial-wallet-developers .fw-developer-photo{width:78px;height:78px;flex-basis:78px}
  #financial-wallet-developers .fw-developer-photo-wa{font-size:22px}
  #financial-wallet-developers .fw-developer-copy p{font-size:12px}
}
@media(max-width:430px){
  #financial-wallet-developers .fw-developer-card{align-items:flex-start}
  #financial-wallet-developers .fw-developer-photo{width:68px;height:68px;flex-basis:68px}
}


/* Admin dashboard: hide the normal application left sidebar completely. */
body.admin-mode .desktop-sidebar{display:none !important;}
