:root{color:#203b35;font-synthesis:none;--green:#098766;--muted:#87918a;--border:#e9ede7;--ink:#203b35;background:#f7f9f6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 8l5 5 5-5' stroke='%2387918a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;padding-right:32px}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.5;cursor:wait}button,input,select{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid #098766}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h2{letter-spacing:-.35px;font-size:16px;font-weight:650}h3{letter-spacing:-.45px;font-size:18px}svg{flex-shrink:0}button{transition:background .15s,transform .15s}button:hover{filter:brightness(.97)}.app-shell{min-height:100vh}.sidebar{border-right:1px solid var(--border);z-index:20;background:#fff;flex-direction:column;width:236px;padding:22px 21px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;margin-left:5px;display:flex}.brand-lockup{flex-shrink:0;width:144px;height:auto;display:block}.brand-mark{flex-shrink:0;width:40px;height:40px;display:none}.nav-caption{letter-spacing:1.3px;color:#9ba59e;margin:22px 12px 17px;font-size:8px;font-weight:650}.sidebar nav{gap:7px;display:grid}.sidebar nav button{color:#7a867e;text-align:left;border-radius:8px;align-items:center;gap:12px;min-height:45px;padding:13px 15px;font-size:12px;display:flex}.sidebar nav button.active{color:#098766;background:#eaf5ed;font-weight:650}.sidebar nav button:hover{background:#f1f6f0}.nav-count{text-align:center;background:#dceee2;border-radius:5px;min-width:19px;margin-left:auto;padding:3px;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:30px}.settings-button{color:#7a867e;align-items:center;gap:12px;padding:9px 13px;font-size:12px;display:flex}.profile-mini{border-top:1px solid var(--border);align-items:center;gap:9px;margin-top:18px;padding-top:20px;display:flex}.profile-mini img{object-fit:cover;border-radius:50%;width:34px;height:34px}.profile-mini strong{font-size:11px;display:block}.profile-mini small{color:var(--muted);margin-top:5px;font-size:8px;display:block}.profile-mini .icon-button{margin-left:auto;padding:2px}.workspace{margin-left:236px}.topbar{border-bottom:1px solid var(--border);background:#ffffffb0;justify-content:space-between;align-items:center;height:78px;padding:0 40px;display:flex}.breadcrumb{color:#929c95;font-size:11px}.breadcrumb span{color:#c0c7c0;padding:0 15px}.breadcrumb strong{color:#53645a;font-weight:500}.topbar-actions{align-items:center;gap:23px;display:flex}.local-pill{color:#738274;align-items:center;gap:6px;font-size:10px;display:flex}.local-pill>span,.green-dot,.peach-dot{background:#4ba782;border-radius:50%;flex-shrink:0;width:6px;height:6px;display:inline-block}.peach-dot{background:#e8ad8c}.icon-button{color:#7b897f;border-radius:8px;justify-content:center;align-items:center;padding:8px;display:inline-flex}.icon-button:hover{background:#eef2ec}.notification{position:relative}.notification i{background:#dcac7a;border:1px solid #fff;border-radius:50%;width:5px;height:5px;position:absolute;top:8px;right:8px}.avatar-button{padding:0;display:flex}.avatar-button img{object-fit:cover;border:2px solid #fff;border-radius:50%;width:33px;height:33px}main{max-width:1460px;margin:auto;padding:36px 40px 18px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.eyebrow{letter-spacing:1.6px;color:#8a998c;margin-bottom:12px;font-size:8px;font-weight:650}h1{letter-spacing:-1.1px;font-size:28px;font-weight:620;line-height:1.25}.wave{color:#d7ae65;padding-left:10px;font-size:31px}.page-heading p{color:#8b958e;margin-top:10px;font-size:11px}.heading-actions{align-items:center;gap:10px;padding-top:13px;display:flex}.primary{color:#fff;background:#0b8866;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:12px 16px;font-size:11px;font-weight:550;display:inline-flex;box-shadow:0 3px 5px #0c78520c}.primary:hover{background:#087958}.month-button{color:#738174;background:#fff;border:1px solid #e4e9e0;border-radius:8px;align-items:center;gap:8px;padding:11px 12px;font-size:10px;display:flex}.overview-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;display:grid}.balance-card{color:#fff;background:linear-gradient(112deg,#08785e,#0f9470);border:1px solid #087759;border-radius:13px;grid-column:span 3;min-height:214px;padding:22px 25px 0;position:relative;overflow:hidden}.balance-label{color:#deeee5;z-index:1;justify-content:space-between;align-items:center;font-size:11px;display:flex;position:relative}.balance-label>span{align-items:center;gap:9px;display:flex}.balance-eye{color:#d0e9dd;padding:0;display:flex}.big-balance{letter-spacing:-1px;z-index:1;margin-top:17px;font-size:38px;font-weight:580;position:relative}.balance-note{z-index:1;color:#b4deca;margin-top:11px;font-size:10px;position:relative}.balance-note span{align-items:center;gap:5px;display:flex}.balance-wave{pointer-events:none;width:100%;height:75px;position:absolute;bottom:40px;left:0;right:0}.balance-footer{border-top:1px solid #ffffff1a;align-items:center;gap:0;height:45px;margin-top:23px;display:flex;position:relative}.mini-bank{color:#275c3c;background:#d6eac2;border:2px solid #198265;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;display:flex}.mini-bank.blue{color:#38628e;background:#d4e2f2;margin-left:-6px}.balance-footer>span{color:#c4e1d1;margin-left:7px;font-size:9px}.balance-footer>button{color:#d7f0e0;margin-left:auto;display:flex}.stat-card{border:1px solid var(--border);background:#fff;border-radius:13px;grid-column:span 1;padding:22px 20px}.income-card{grid-column:span 1}.expense-card{grid-column:span 2}.overview-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.balance-card{grid-column:span 6}.stat-card{grid-column:span 3}.stat-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.icon-tile{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.mint{color:#16926c;background:#e7f4ec}.peach{color:#c69269;background:#fcf0e6}.rose{color:#c75b65;background:#fae9e9}.blue{color:#6b96b5;background:#eaf1f8}.lavender{color:#9b84b3;background:#f0edf7}.subtle{color:#9aa399;font-size:10px}.stat-top>.subtle{font-size:9px}.stat-label{color:#8a948b;margin-bottom:7px;font-size:11px;display:block}.stat-card>strong{letter-spacing:-.8px;white-space:nowrap;font-size:25px;font-weight:610;display:block}.stat-foot{color:#99a194;align-items:center;gap:5px;margin-top:17px;font-size:8px;display:flex}.stat-foot>span{width:4px;height:4px}.penn-banner{background:#edf4e8;border:1px solid #e3ecda;border-radius:12px;grid-column:span 12;align-items:center;gap:20px;min-height:113px;padding:15px 27px 15px 137px;display:flex;position:relative;overflow:hidden}.penn-banner>img{object-fit:cover;mix-blend-mode:multiply;width:132px;height:137px;position:absolute;bottom:-20px;left:0;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.penn-label{letter-spacing:1.3px;color:#8c9f7e;align-items:center;gap:5px;margin-bottom:8px;font-size:7px;font-weight:600;display:flex}.penn-banner h3{font-size:17px;font-weight:600}.penn-banner p{color:#87957e;max-width:440px;margin-top:6px;font-size:10px;line-height:1.7}.penn-banner>button{white-space:nowrap;color:#69815b;z-index:1;background:#ffffff42;border:1px solid #ccdabc;border-radius:7px;align-items:center;gap:18px;margin-left:auto;padding:11px 13px;font-size:10px;display:flex}.banner-leaf{opacity:.08;color:#64864f;pointer-events:none;position:absolute;bottom:-25px;right:-22px;transform:rotate(-18deg)}.panel{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:0;padding:21px 23px}.panel-heading{justify-content:space-between;align-items:center;gap:10px;min-height:26px;display:flex}.panel-heading h2{align-items:center;gap:8px;display:flex}.panel-subtitle{color:#98a094;margin-top:5px;font-size:10px;line-height:1.6}.spending-panel,.bills-panel{grid-column:span 6}.spending-body{justify-content:space-evenly;align-items:center;gap:25px;min-height:224px;padding:25px 0 20px;display:flex}.donut{border-radius:50%;flex-shrink:0;width:178px;height:178px;padding:24px;transform:rotate(-15deg)}.donut>div{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex;transform:rotate(15deg)}.donut small{color:#929b90;font-size:9px}.donut strong{letter-spacing:-1px;margin:7px 0 3px;font-size:24px;font-weight:620}.donut span{color:#939c91;font-size:9px}.legend{flex:1;gap:16px;max-width:180px;display:grid}.legend>div{color:#83907f;align-items:center;gap:8px;font-size:10px;display:flex}.legend-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.legend strong{color:#50634e;margin-left:auto;font-size:11px;font-weight:550}.legend strong small{color:#9ba496;margin-left:1px;font-size:9px}.panel-footer-link{color:#7b9270;border-top:1px solid #f0f2eb;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 0 0;font-size:10px;display:flex}.text-button{color:#82937a;white-space:nowrap;align-items:center;gap:4px;padding:5px 0;font-size:9px;display:inline-flex}.count-badge{color:#8a9977;border:1px solid #e7eadd;border-radius:5px;padding:2px 5px;font-size:9px}.bill-row{border-bottom:1px solid #f0f2ed;align-items:center;gap:12px;padding:16px 0;display:flex}.row-main{flex-direction:column;flex:1;gap:6px;display:flex}.row-main strong{font-size:11px;font-weight:550}.row-main small{color:#9ba292;font-size:9px}.row-amount{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.row-amount strong{font-size:11px;font-weight:550}.due-badge{color:#82a087;background:#eff5ee;border-radius:4px;padding:3px 6px;font-size:8px;display:inline-block}.due-badge.soon{color:#c39868;background:#fff3df}.bill-total{color:#97a08e;justify-content:space-between;align-items:center;padding-top:14px;font-size:9px;display:flex}.bill-total strong{color:#6e805f;font-size:11px;font-weight:550}.recent-panel{grid-column:span 8}.goals-panel{grid-column:span 4}.table-head,.transaction-row{grid-template-columns:minmax(0,2.2fr) 1fr .7fr 1fr;align-items:center;gap:10px;display:grid}.table-head{color:#a5ab9f;border-bottom:1px solid #edf0e8;padding:18px 0 10px;font-size:8px}.table-head>span:last-child{text-align:right}.transaction-row{text-align:left;border-bottom:1px solid #f1f3ed;width:100%;padding:13px 0}.transaction-row:last-child{border-bottom:0}.transaction-row:hover{background:#fbfcf8}.transaction-name{align-items:center;gap:10px;min-width:0;display:flex}.transaction-name .icon-tile{border-radius:10px;width:33px;height:33px}.transaction-name svg{width:17px}.transaction-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:550;display:block;overflow:hidden}.transaction-name small{color:#a2a89c;margin-top:5px;font-size:8px;display:block}.table-account,.table-date{color:#919d86;font-size:9px}.transaction-row>strong{text-align:right;white-space:nowrap;font-size:10px;font-weight:600}.positive{color:#20946b!important}.mini-goal{margin-top:22px}.goal-title{align-items:center;gap:9px;display:flex}.goal-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:40px;display:flex}.goal-title strong{font-size:10px;font-weight:550;display:block}.goal-title small{color:#72886a;margin-top:7px;font-size:9px;display:block}.goal-title small span{color:#a3ae98;margin-left:3px;font-size:8px}.goal-title b{color:#8e9d7e;margin-left:auto;font-size:9px;font-weight:500}.progress{background:#eef1e8;border-radius:5px;height:5px;margin-top:13px;overflow:hidden}.progress>span{background:#71b99a;border-radius:5px;height:100%;transition:width .3s;display:block}.page-footer{color:#a6ae9f;justify-content:space-between;align-items:center;padding-top:24px;font-size:8px;display:flex}.page-footer>span:first-child{align-items:center;gap:5px;display:flex}.mobile-brand,.mobile-nav{display:none}.full-panel{padding:22px 25px}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.segments{background:#eef2ec;border-radius:9px;gap:3px;padding:4px;display:flex}.segments button{color:#8b9783;border-radius:7px;min-height:34px;padding:9px 22px;font-size:11px}.segments button.selected{color:#fff;background:#0d8b67;box-shadow:0 2px 5px #1a624d12}.search{border:1px solid var(--border);color:#9ca893;border-radius:8px;align-items:center;gap:8px;margin-left:auto;padding:8px 10px;display:flex}.search input{width:160px;color:var(--ink);background:0 0;border:0;outline:none;font-size:11px}.month-input{border:1px solid var(--border);color:#7f8b77;background:#fff;border-radius:7px;max-width:145px;padding:7px;font-size:10px}.empty{text-align:center;color:#95a08b;padding:50px 20px;font-size:12px;line-height:1.8}.empty>svg{color:#a1b697;margin-bottom:12px}.empty h3{color:#5d7858;margin-bottom:6px;font-size:17px}.section-summary{flex-direction:column;gap:9px;padding:5px 0 32px;display:flex}.section-summary>span{color:#8b9981;font-size:12px}.section-summary>strong{letter-spacing:-1.5px;font-size:38px;font-weight:600}.section-summary>small{color:#a0aa95;font-size:10px}.cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.account-card h2{margin:28px 0 10px}.account-balance{letter-spacing:-.8px;font-size:28px;font-weight:550;display:block}.account-bottom{border-top:1px solid var(--border);color:#9bab8d;justify-content:space-between;align-items:center;margin-top:28px;padding-top:16px;font-size:10px;display:flex}.add-card{color:#779469;background:#f3f7ef;border:1px dashed #cfdac5;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:220px;display:flex}.add-card strong{font-size:14px;font-weight:500}.add-card span{font-size:10px}.info-strip{color:#8b9b7d;background:#edf3e9;border-radius:9px;align-items:center;gap:10px;margin:25px 0;padding:15px 18px;font-size:11px;line-height:1.7;display:flex}.bills-summary{background:linear-gradient(110deg,#e7f3e7,#f0f5e8);border:1px solid #e1ebda;border-radius:12px;align-items:center;gap:80px;margin-bottom:25px;padding:30px;display:flex}.bills-summary>div{flex-direction:column;gap:10px;display:flex}.bills-summary span{color:#8d9f7c;font-size:11px}.bills-summary strong{letter-spacing:-1px;font-size:30px;font-weight:550}.bills-summary small{font-size:15px}.bills-summary>svg{color:#95b887;margin-left:auto}.subscription-card h2{margin-top:24px;font-size:18px}.subscription-card p{color:#9aa78e;margin-top:8px;font-size:10px}.subscription-price{letter-spacing:-.8px;margin-top:27px;font-size:27px;font-weight:550}.subscription-price small{color:#9dab91;letter-spacing:0;margin-left:5px;font-size:10px;font-weight:400}.subscription-bottom{border-top:1px solid var(--border);color:#93a185;justify-content:space-between;align-items:center;margin-top:23px;padding-top:16px;font-size:10px;display:flex}.goal-art{color:#60935e;background:linear-gradient(130deg,#f0f5e5,#d3e8c8);border-radius:8px;justify-content:center;align-items:center;height:140px;margin-bottom:22px;display:flex;position:relative}.goal-art.plane{color:#75a8b5;background:linear-gradient(150deg,#e7f6f2,#d1e5ed)}.goal-art.laptop{color:#9299bd;background:linear-gradient(150deg,#edebf8,#e1e9f4)}.art-spark{opacity:.6;font-size:29px;position:absolute;top:20%;right:29%}.goal-card h2{font-size:18px}.goal-card p{color:#9aa78e;margin-top:8px;font-size:11px;line-height:1.7}.goal-amount{align-items:baseline;gap:8px;margin-top:24px;display:flex}.goal-amount strong{letter-spacing:-.7px;font-size:21px;font-weight:550}.goal-amount span{color:#9caa8f;font-size:10px}.goal-card-footer{color:#97a38c;justify-content:space-between;align-items:center;margin-top:14px;font-size:9px;display:flex}.insights-grid{grid-template-columns:1.2fr 1fr;gap:22px;display:grid}.chart{border-bottom:1px solid var(--border);justify-content:space-around;align-items:end;gap:23px;height:250px;margin:35px 0 15px;display:flex}.chart-column{text-align:center;color:#9baa90;flex-direction:column;flex:1;justify-content:end;gap:10px;max-width:55px;height:100%;font-size:10px;display:flex}.chart-bars{align-items:end;gap:4px;height:calc(100% - 25px);display:flex}.chart-bars>div{border-radius:4px 4px 0 0;width:50%;min-height:2px}.income-bar{background:#70bd98}.expense-bar{background:#e6b69b}.chart-legend{color:#92a083;justify-content:center;gap:20px;margin:20px;font-size:10px;display:flex}.chart-legend span{align-items:center;gap:7px;display:flex}.category-line{border-bottom:1px solid var(--border);color:#889c76;align-items:center;gap:12px;padding:21px 0;font-size:12px;display:flex}.category-line strong{color:#566d48;margin-left:auto;font-size:12px;font-weight:500}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:12px;margin-top:24px;display:grid}.calendar-grid>span{color:#a0ad95;justify-content:center;align-items:center;min-height:36px;font-size:11px;display:flex}.calendar-grid>button{border-radius:50%;width:40px;height:40px;margin:auto;font-size:12px;position:relative}.calendar-grid>button:hover{background:#eff5e8}.calendar-grid>button.selected{color:#fff;background:#078866}.calendar-grid>button.today{box-shadow:0 0 0 1px #79b68f}.calendar-grid i{background:#c9b280;border-radius:50%;width:4px;height:4px;position:absolute;bottom:5px;left:calc(50% - 2px)}.settings-panel{max-width:680px;margin:auto}.settings-profile{align-items:center;gap:20px;padding:15px 0 30px;display:flex}.settings-profile img{object-fit:cover;border-radius:50%;width:80px;height:80px}.settings-profile h2{font-size:22px}.settings-profile p{color:#91a180;margin:8px 0;font-size:11px}.settings-avatar{flex-shrink:0;position:relative}.settings-avatar-edit{color:#fff;background:#0b8866;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:-2px;right:-2px}.settings-avatar-edit:hover{background:#087958}.settings-row{border-top:1px solid var(--border);text-align:left;align-items:center;gap:13px;width:100%;padding:20px 0;font-size:12px;display:flex}.settings-row>svg{color:#91a180}.settings-row>span{flex:1}.settings-row>strong{color:#879879;font-size:11px;font-weight:450}.settings-section-label{letter-spacing:1.2px;color:#9ba59e;text-transform:uppercase;margin:24px 0 0;font-size:8px;font-weight:650}.settings-row-volume input[type=range]{accent-color:#0b8866;flex:1;max-width:140px}.settings-about{text-align:center;border-top:1px solid var(--border);color:#86a477;padding:30px 0 10px}.settings-about h3{margin:10px 0;font-size:18px}.settings-about p{margin-bottom:10px;font-size:11px}.settings-about small{color:#a0af91;font-size:9px}.toast{z-index:100;color:#e4f1e8;background:#1c4e3c;border-radius:11px;align-items:center;gap:10px;max-width:90vw;padding:14px 20px;font-size:12px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 8px 40px #234e3826}.modal-overlay{z-index:80;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#163d344d;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fbfcf9;border-radius:20px;width:450px;max-width:100%;max-height:90dvh;padding:25px;overflow-y:auto;box-shadow:0 25px 100px #173b3226}.modal .panel-heading h2{font-size:20px}.form-segments{justify-content:center;margin-top:20px}.form-segments button{flex:1}.amount-entry{text-align:center;padding:25px 0;display:block}.amount-entry>span{color:#9ca990;font-size:10px}.amount-entry>div{justify-content:center;align-items:center;gap:8px;margin-top:12px;font-size:35px;font-weight:550;display:flex}.amount-entry input{color:#204c36;letter-spacing:-1px;background:0 0;border:0;outline:none;width:220px;padding:0;font-size:38px;font-weight:550}.amount-entry input::placeholder{color:#c0caba}.field{color:#7c8e70;margin-bottom:16px;font-size:11px;display:block}.field input,.field select,.field textarea{color:#45643c;background-color:#f4f6f0;border:1px solid #e4e9de;border-radius:8px;width:100%;min-height:42px;margin-top:7px;padding:12px;font-size:12px;display:block}.field select{padding-right:32px}.field input::placeholder,.field textarea::placeholder{color:#acb5a3}.optional{color:#aab69e;font-size:9px}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.save-button{width:100%;min-height:45px;margin-top:6px;font-size:12px}.save-button svg{margin-left:auto}.save-button{justify-content:space-between}.form-error,.error-banner{color:#ae6b59;background:#fbece8;border-radius:7px;margin-bottom:10px;padding:13px;font-size:12px}.form-status{color:#1c7a52;background:#eaf6ee;border-radius:7px;margin-bottom:10px;padding:13px;font-size:12px}.auth-helper-text{color:#7c8e70;margin-bottom:16px;font-size:11px;line-height:1.6}.forgot-password-link{text-align:center;margin-top:12px;font-size:11px}.error-banner button{text-decoration:underline}.loading{text-align:center;color:#8a9e79;padding:80px}.detail-center{text-align:center;padding:30px}.detail-center>.icon-tile{width:60px;height:60px;margin:auto}.detail-center h3{margin:20px 0}.detail-center>strong{font-size:35px;font-weight:550}.detail-note{color:#8fa37f;background:#eff4e9;border-radius:8px;margin-top:20px;padding:15px;font-size:12px}@media (width>=1550px){main{padding-top:44px}.overview-grid{gap:24px}.stat-card{padding:24px}.balance-card{min-height:235px}.big-balance{font-size:43px}.balance-footer{margin-top:29px}.stat-top{margin-bottom:30px}.stat-card>strong{font-size:30px}.penn-banner{min-height:125px}.spending-body{min-height:250px}.donut{width:194px;height:194px}.bill-row{padding:20px 0}.transaction-row{padding:17px 0}}@media (width<=1199px){.sidebar{width:205px;padding-left:14px;padding-right:14px}.workspace{margin-left:205px}.topbar{padding:0 26px}main{padding:28px 26px 20px}.heading-actions{gap:7px}.heading-actions>.month-button{display:none}.page-heading h1{font-size:25px}.balance-card{padding-left:20px;padding-right:20px}.stat-card{padding:20px 14px}.stat-card>strong{font-size:22px}.stat-top>.subtle{display:none}.stat-foot{font-size:7px}.overview-grid{gap:16px}.panel{padding:18px}.spending-body{gap:15px}.donut{width:145px;height:145px;padding:20px}.donut strong{font-size:21px}.legend{gap:14px}.legend>div{font-size:9px}.panel h2{font-size:14px}.penn-banner{padding-left:115px;padding-right:17px}.penn-banner>img{width:113px;height:125px}.penn-banner p{font-size:9px}.penn-banner>button{gap:5px;font-size:9px}.recent-panel,.goals-panel{grid-column:span 6}.recent-panel .table-head{grid-template-columns:2fr 1fr}.recent-panel .table-head>span:nth-child(2),.recent-panel .table-head>span:nth-child(3),.recent-panel .table-account,.recent-panel .table-date{display:none}.recent-panel .transaction-row{grid-template-columns:2fr 1fr}.cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.insights-grid{grid-template-columns:1fr}.bills-summary{gap:35px}.search{margin-left:0}.mini-goal{margin-top:30px}}@media (width<=900px) and (width>=701px){.sidebar{width:78px;padding:29px 10px}.brand{justify-content:center;margin:0 auto}.brand-mark{display:block}.brand-lockup,.nav-caption,.sidebar nav button span,.sidebar-bottom{display:none}.sidebar nav{margin-top:30px}.sidebar nav button{justify-content:center;padding:15px}.workspace{margin-left:78px}}@media (width<=700px){:root{font-size:14px}.sidebar{display:none}.workspace{margin:0}.topbar{height:74px;padding:max(10px,env(safe-area-inset-top)) 22px 10px;background:#f7f9f6;border:0}.breadcrumb{display:none}.mobile-brand{align-items:center;display:flex}.mobile-brand .brand-lockup{width:104px}.topbar-actions{gap:13px}.local-pill{font-size:8px}.avatar-button img{width:31px;height:31px}main{padding:12px 20px 105px}.page-heading{align-items:flex-start;gap:10px;margin-bottom:24px}.eyebrow{letter-spacing:1.25px;margin-bottom:10px;font-size:7px}.page-heading h1{letter-spacing:-1px;font-size:25px}.page-heading p{margin-top:7px;font-size:10px;line-height:1.65}.wave{padding-left:6px;font-size:25px}.heading-actions{padding:16px 0 0}.heading-actions .primary{border-radius:50%;width:35px;height:35px;min-height:35px;padding:0}.heading-actions .primary>span{display:none}.overview-grid{gap:14px}.balance-card{grid-column:span 12;min-height:208px;padding:21px 23px 0}.big-balance{font-size:38px}.balance-note{font-size:10px}.balance-footer>span{font-size:9px}.stat-card{background:#f0f6ef;grid-column:span 6;min-height:162px;padding:17px}.expense-card{background:#fbf2ec}.stat-top{margin-bottom:12px}.stat-top>.subtle{font-size:8px;display:block}.stat-top .icon-tile{border-radius:10px;width:31px;height:31px}.stat-top svg{width:18px}.stat-label{font-size:10px}.stat-card>strong{font-size:23px}.stat-foot{letter-spacing:-.1px;margin-top:12px;font-size:7px}.penn-banner{gap:0;min-height:122px;padding:18px 14px 18px 99px}.penn-banner>img{width:97px;height:120px;bottom:-3px;left:-2px}.penn-label{letter-spacing:1px;gap:4px;margin-bottom:7px;font-size:6px}.penn-label svg{width:11px}.penn-banner h3{max-width:205px;font-size:14px;line-height:1.4}.penn-banner p{font-size:9px;line-height:1.65}.penn-banner>button{display:none}.spending-panel,.bills-panel,.recent-panel,.goals-panel{grid-column:span 12}.panel{border-radius:13px;padding:20px}.panel h2{font-size:15px}.panel-subtitle{font-size:10px}.spending-body{justify-content:space-around;gap:24px;min-height:205px;padding:24px 0}.donut{width:166px;height:166px;padding:23px}.donut strong{font-size:23px}.legend{gap:15px;max-width:140px}.legend>div{gap:7px;font-size:10px}.legend strong{font-size:10px}.panel-footer-link{padding-top:15px;font-size:10px}.text-button{font-size:9px}.bill-row{padding:17px 0}.row-main strong,.row-amount strong{font-size:12px}.row-main small{font-size:10px}.due-badge{font-size:8px}.recent-panel .transaction-row{padding:14px 0}.transaction-name strong{font-size:11px}.transaction-name small{font-size:9px}.transaction-row>strong{font-size:11px}.transaction-name .icon-tile{width:37px;height:37px}.mini-goal{margin-top:22px}.goal-title strong{font-size:12px}.goal-title small{font-size:10px}.goal-title small span{font-size:9px}.goal-title b{font-size:10px}.page-footer{padding-top:27px;font-size:8px}.page-footer>span:last-child{display:none}.mobile-nav{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:30;padding:10px 10px max(13px,env(safe-area-inset-bottom));background:#ffffffed;border-top:1px solid #e9ede3;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 25px #294c3205}.mobile-nav>button{color:#9aaa8d;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:53px;min-height:42px;display:flex}.mobile-nav>button.active{color:#088864}.mobile-nav>button>span{font-size:8px}.mobile-nav>button.mobile-add{color:#fff;box-sizing:content-box;background:#0c8c68;border:4px solid #f7f9f6;border-radius:50%;width:47px;min-width:47px;height:47px;margin-top:-18px;box-shadow:0 4px 13px #0a8f682a}.cards-grid{grid-template-columns:1fr;gap:16px}.section-summary{padding:5px 0 24px}.section-summary>strong{font-size:35px}.account-card{padding:24px}.account-card h2{font-size:18px}.account-balance{font-size:30px}.add-card{min-height:160px}.toolbar{gap:12px;margin-bottom:18px}.segments{flex:1}.segments button{flex:1;padding:9px 12px;font-size:11px}.search{order:3;width:100%}.search input{width:100%;padding:3px}.full-panel{padding:17px}.full-panel .toolbar .month-input{width:calc(100% - 48px);min-width:0;max-width:none}.full-panel .table-head{grid-template-columns:2fr 1fr}.full-panel .table-head>span:nth-child(2),.full-panel .table-head>span:nth-child(3){display:none}.full-panel .transaction-row{grid-template-columns:2fr 1fr;padding:15px 0}.full-panel .table-account,.full-panel .table-date{display:none}.bills-summary{gap:28px;padding:22px}.bills-summary strong{font-size:25px}.bills-summary>svg{display:none}.bills-summary span{font-size:10px}.subscription-card h2{font-size:21px}.subscription-card p,.subscription-bottom,.subscription-bottom .text-button{font-size:11px}.goal-art{height:135px}.goal-card h2{font-size:20px}.goal-amount strong{font-size:25px}.goal-card-footer{font-size:10px}.goal-card-footer .text-button{font-size:11px}.insights-grid{gap:16px}.chart{gap:15px;height:210px}.calendar-grid{gap:7px}.calendar-grid>button{width:36px;height:36px}.settings-profile h2{font-size:21px}.settings-row{gap:9px;font-size:11px}.settings-row>strong{font-size:10px}.modal-overlay{align-items:flex-end;padding:0}.modal{padding:24px 23px max(27px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0;width:100%;max-height:92dvh}.modal .panel-heading h2{font-size:19px}.field input,.field select,.field textarea{font-size:16px}.amount-entry input{font-size:38px}.search input,.month-input{font-size:16px}.toast{width:max-content;max-width:90vw;padding:12px 15px;font-size:11px;bottom:94px}.info-strip{align-items:flex-start;font-size:10px}.loading{padding:60px 20px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.service-icon{border:1px solid #203b3508;overflow:hidden}.service-icon.tone-fresh{color:#168566;background:#e9f5ee;border-color:#dcece3}.service-icon.tone-warm{color:#bf7744;background:#fcf0e5;border-color:#f2e1d1}.service-icon.tone-blue{color:#4d83a7;background:#eaf2f8;border-color:#dce8f0}.service-icon.tone-lilac{color:#886aa9;background:#f2edf8;border-color:#e7ddf0}.service-icon.tone-gold{color:#a47b28;background:#f8f2e2;border-color:#eee4c9}.service-icon.brand-netflix{color:#e50914;background:#151515;border-color:#151515}.service-icon.brand-spotify{color:#1ed760;background:#191414;border-color:#191414}.service-icon>svg{width:22px;height:22px;display:block}.service-icon>img{object-fit:contain;width:23px;height:23px;display:block}.service-icon.has-transaction-image{background:0 0;border-color:#0000}.service-icon>img.transaction-icon{object-fit:contain;width:100%;height:100%}.service-icon.brand-netflix>svg{width:21px;height:25px}@media (width<=700px){.mobile-nav{padding:8px max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#fffffff5;grid-template-columns:1fr 1fr 68px 1fr 1fr;gap:4px;display:grid;box-shadow:0 -4px 24px #203b3508}.mobile-nav>button{color:#77867d;border-radius:14px;justify-self:center;gap:5px;width:100%;min-width:0;min-height:52px;padding:6px 0;position:relative}.mobile-nav>button>svg{width:22px;height:22px}.mobile-nav>button>span{letter-spacing:.1px;font-size:10px;font-weight:500;line-height:14px}.mobile-nav>button.active{color:#087d5d;background:#edf7f1}.mobile-nav>button.mobile-add{box-sizing:border-box;aspect-ratio:1;background:#098766;border:0;border-radius:50%;align-self:center;width:56px;min-width:56px;max-width:56px;height:56px;min-height:56px;max-height:56px;margin:0;padding:0;box-shadow:0 4px 10px #09876626}.mobile-nav>button.mobile-add>svg{width:26px;height:26px}.mobile-nav>button:active{transform:translateY(1px)}}.service-icon.item-coffee,.service-icon.item-food,.service-icon.item-groceries{background:#fbf1e6;border-color:#f0e3d4}.service-icon.item-ride,.service-icon.item-shield,.service-icon.item-wallet{background:#edf5ec;border-color:#e0ecdf}.service-icon.item-travel,.service-icon.item-wifi,.service-icon.item-cloud,.service-icon.item-laptop{background:#edf4fa;border-color:#dfeaf2}.service-icon.item-shopping,.service-icon.item-entertainment{background:#f3eef8;border-color:#e9e0f1}.service-icon.item-goal,.service-icon.item-home,.service-icon.item-utilities{background:#f8f4e7;border-color:#eee8d4}.goal-art .goal-illustration{border-radius:26px;width:92px;height:92px;transform:rotate(-6deg);box-shadow:0 8px 20px #203b3508}.goal-art .goal-illustration>svg{width:72px;height:72px}.bank-icon{background:#fff;border:0;overflow:hidden}.bank-icon>img{object-fit:contain;width:24px;height:24px;display:block}.bank-icon>img.bank-logo{width:100%;height:100%;padding:7px}.bank-icon>img.account-kind-icon{object-fit:cover;width:100%;height:100%}.bank-icon.bank-generic{background:#eef5e9}.balance-footer>.mini-bank{border:2px solid #198265;border-radius:50%;flex-shrink:0;width:27px;height:27px;margin-left:-5px}.balance-footer>.mini-bank:first-child{margin-left:0}.account-card .bank-icon{border-radius:15px;width:60px;height:60px}.account-card .bank-icon>img.bank-logo{padding:0}.account-card .bank-icon.bank-icon-bare{background:0 0;border-radius:0}.account-card .bank-icon.bank-icon-bare>img.account-kind-icon{object-fit:contain}.penn-mascot{object-fit:contain;object-position:center bottom;display:block}.penn-banner>.penn-mascot{object-fit:contain;object-position:center bottom;flex-shrink:0;align-self:flex-end;width:112px;height:126px;margin:0 14px 0 0;-webkit-mask-image:none;mask-image:none}.empty>.penn-mascot{width:104px;height:118px;margin:0 auto 18px}.empty-compact>.penn-mascot{width:72px;height:82px;margin-bottom:12px}.loading>.penn-mascot{width:104px;height:118px;margin:0 auto 20px}.add-card>.penn-mascot{width:90px;height:102px}.bills-summary>.penn-mascot{flex-shrink:0;width:88px;height:100px;margin-left:auto}@media (width<=700px){.bills-summary{flex-wrap:wrap;gap:16px}.bills-summary>.penn-mascot{width:56px;height:64px}}.mascot-note{background:#edf5e9;border:1px solid #dfead9;border-radius:16px;align-items:center;gap:20px;margin-bottom:22px;padding:14px 22px;display:flex}.mascot-note>.penn-mascot{flex-shrink:0;width:90px;height:102px}.mascot-note p{color:var(--muted);margin-top:8px;font-size:12px}@media (width<=700px){.penn-banner>.penn-mascot{width:80px;height:100px;margin-right:9px}.goal-art .goal-illustration>svg{width:72px;height:72px}}.bank-monogram{letter-spacing:-1px;font-size:15px;font-weight:800;line-height:1}.bank-monogram-wide{letter-spacing:-.5px;font-size:11px}.mini-bank .bank-monogram{letter-spacing:-.6px;font-size:9px}.mini-bank .bank-monogram-wide{letter-spacing:-.3px;font-size:7px}.card-actions{align-items:center;gap:2px;display:flex}.account-number{color:#9aa78e;letter-spacing:.3px;margin:2px 0 12px;font-size:10px;display:block}.goal-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.detail-actions{justify-content:center;gap:10px;margin-top:20px;display:flex}.receipt-gallery{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.receipt-thumb{background:#f4f6f0;border:1px solid #e4e9de;border-radius:10px;flex-shrink:0;width:76px;height:76px;padding:0;position:relative;overflow:hidden}.receipt-thumb img{object-fit:cover;width:100%;height:100%;display:block}.receipt-thumb-pdf{color:#7c8e70;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;height:100%;font-size:9px;display:flex}.receipt-thumb-remove{color:#fff;background:#20302799;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:3px;right:3px}.receipt-thumb-remove:hover{background:#203027cc}.field>.receipt-gallery{margin-top:7px;margin-bottom:16px}.receipt-lightbox{z-index:120;background:#0d201ae0;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.receipt-lightbox img{border-radius:10px;max-width:100%;max-height:100%;box-shadow:0 25px 100px #00000040}.receipt-lightbox .icon-button{color:#fff;background:#ffffff26;position:absolute}.receipt-lightbox .icon-button:hover{background:#ffffff40}.receipt-lightbox-close{top:20px;right:20px}.receipt-lightbox-prev{top:50%;left:20px;transform:translateY(-50%)}.receipt-lightbox-next{top:50%;right:20px;transform:translateY(-50%)}.receipt-lightbox-count{color:#fff;background:#ffffff26;border-radius:20px;padding:5px 10px;font-size:11px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.danger-text{color:#c75b65}.delete-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.primary.danger{box-shadow:none;background:#c75b65}.primary.danger:hover{background:#b14e57}.icon-field{margin-bottom:16px}.icon-field>span{color:#7c8e70;font-size:11px;display:block}.icon-picker{background:#f4f6f0;border:1px solid #e4e9de;border-radius:8px;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:6px;max-height:196px;margin-top:7px;padding:9px;display:grid;overflow-y:auto}.icon-group-label{letter-spacing:1.1px;text-transform:uppercase;color:#a3ae98;grid-column:1/-1;padding:9px 2px 1px;font-size:8px;font-weight:650}.icon-choice{color:#7c8e70;background:#fff;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;height:46px;padding:4px;display:flex}.icon-choice:hover{background:#eef4ec}.icon-choice img{object-fit:contain;width:27px;height:27px;display:block}.icon-choice.selected{background:#e7f4ec;border-color:#0b8866;box-shadow:0 0 0 1px #0b8866}.icon-choice.auto-choice{grid-column:1/-1;gap:8px;height:38px;font-size:11px}.icon-choice.auto-choice small{font-size:10px}:root[data-theme=dark] .icon-picker{background:#161d19;border-color:#262f29}:root[data-theme=dark] .icon-choice{color:#9db1a4;background:#1c2420}:root[data-theme=dark] .icon-choice:hover{background:#233029}:root[data-theme=dark] .icon-choice.selected{background:#17332699;border-color:#2fbb87;box-shadow:0 0 0 1px #2fbb87}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e7ede8;--border:#262f29;--muted:#93a099;--ink:#e7ede8;--green:#2fbb87;background:#12181f}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .panel,:root[data-theme=dark] .modal,:root[data-theme=dark] .month-input,:root[data-theme=dark] .field input,:root[data-theme=dark] .field select,:root[data-theme=dark] .field textarea,:root[data-theme=dark] .donut>div,:root[data-theme=dark] .reminders-popover,:root[data-theme=dark] .lock-pad input{color:#e7ede8;background:#161d19;border-color:#262f29}:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5 8l5 5 5-5' stroke='%238a9a90' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important}:root[data-theme=dark] .topbar{background:#12181fcc}:root[data-theme=dark] .breadcrumb strong,:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3{color:#eef3ee}:root[data-theme=dark] .search{background:0 0}:root[data-theme=dark] .segments{background:#1c2420}:root[data-theme=dark] .add-card{color:#8fae82;background:#161d19;border-color:#2b352f}:root[data-theme=dark] .sidebar nav button.active{background:#17332699}:root[data-theme=dark] .icon-button:hover,:root[data-theme=dark] .transaction-row:hover,:root[data-theme=dark] .calendar-grid>button:hover{background:#1e2822}:root[data-theme=dark] .avatar-button img,:root[data-theme=dark] .profile-mini img{border-color:#12181f}:root[data-theme=dark] .settings-avatar-edit{border-color:#161d19}:root[data-theme=dark] .mobile-nav{background:#12181fed;border-color:#232d27}:root[data-theme=dark] .modal-overlay,:root[data-theme=dark] .mobile-drawer-overlay{background:#00000080}:root[data-theme=dark] .info-strip{color:#a9b7a1;background:#1a231d}:root[data-theme=dark] .stat-card{background:#161d19}:root[data-theme=dark] .field input::placeholder,:root[data-theme=dark] .field textarea::placeholder,:root[data-theme=dark] .amount-entry input::placeholder{color:#5a6a61}:root[data-theme=dark] .amount-entry input{color:#eef3ee}:root[data-theme=dark] .form-error,:root[data-theme=dark] .error-banner{color:#e7998a;background:#2a1a18}:root[data-theme=dark] .form-status{color:#7fd6a8;background:#16281f}:root[data-theme=dark] .subscription-notice{color:#f0d996;background:#302815;border-color:#66542d}:root[data-theme=dark] .subscription-notice.expired{color:#e7998a;background:#2a1a18;border-color:#663d36}.subscription-notice{color:#795f25;background:#fff7df;border:1px solid #ead9ad;border-radius:9px;align-items:flex-start;gap:11px;margin-bottom:20px;padding:14px 16px;display:flex}.subscription-notice>div{gap:4px;display:grid}.subscription-notice strong{font-size:12px}.subscription-notice span{font-size:10px;line-height:1.5}.subscription-notice.expired{color:#945647;background:#fbece8;border-color:#edc8be}:root[data-theme=dark] .detail-note{color:#a9b7a1;background:#1a231d}:root[data-theme=dark] .receipt-thumb{background:#1a231d;border-color:#262f29}:root[data-theme=dark] .receipt-thumb-pdf{color:#a9b7a1}:root[data-theme=dark] .bills-summary{color:#203b35}.budget-row{border-bottom:1px solid #f0f2ed;padding:16px 0}.budget-row:last-child{border-bottom:0}.budget-row-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:11px;display:flex}.budget-row-head strong{font-weight:550}.budget-row-head span{color:var(--muted);font-size:10px}.budget-bar{background:#eef1e8;border-radius:5px;height:6px;overflow:hidden}.budget-bar>span{background:#71b99a;border-radius:5px;height:100%;transition:width .3s;display:block}.budget-bar.over>span{background:#c75b65}.budget-bar.near>span{background:#d7ae65}.unbudgeted-categories{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.unbudgeted-categories button{color:#779469;border:1px dashed #cfdac5;border-radius:7px;padding:7px 11px;font-size:10px}:root[data-theme=dark] .budget-bar{background:#1e2822}:root[data-theme=dark] .unbudgeted-categories button{color:#8fae82;border-color:#2f3a33}.neutral-amount{color:var(--muted)!important}.repeat-badge{color:#9aa78e;vertical-align:-1px;margin-left:5px}.notification-wrap{position:relative}.reminders-popover{border:1px solid var(--border);z-index:90;background:#fff;border-radius:12px;width:290px;max-width:80vw;padding:8px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 20px 60px #17302614}.reminders-popover h3{color:#5d7858;padding:10px 10px 6px;font-size:12px}.reminder-row{text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px;display:flex}.reminder-row:hover{background:#f1f6f0}.reminder-row .row-main{flex:1}.reminders-empty{text-align:center;color:var(--muted);padding:20px 10px;font-size:11px}:root[data-theme=dark] .reminder-row:hover{background:#1e2822}.notification-badge{color:#fff;text-align:center;box-sizing:border-box;pointer-events:none;background:#d9534f;border:2px solid #fff;border-radius:9px;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:650;line-height:14px;position:absolute;top:-3px;right:-5px}.notifications-heading{justify-content:space-between;align-items:center;gap:10px;padding-right:10px;display:flex}.notifications-heading .text-button{color:var(--green);font-size:11px}.notification-row{position:relative}.notification-row.unread{background:#f3f8f2}.notification-row.unread strong{font-weight:650}.notification-icon{border-radius:10px;width:33px;height:33px}.unread-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:8px;height:8px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root[data-theme=dark] .notification-badge{border-color:#161d19}:root[data-theme=dark] .notification-row.unread{background:#1b241f}.mobile-menu-button{display:none}.mobile-drawer-overlay{z-index:85;background:#16302644;position:fixed;inset:0}.mobile-drawer{z-index:90;box-shadow:0 0 40px #17302633}.mobile-drawer .settings-button{margin-top:12px}@media (width<=700px){.mobile-menu-button{display:flex}.mobile-drawer{display:flex!important}}.lock-screen{z-index:200;text-align:center;background:#f7f9f6;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:20px;display:flex;position:fixed;inset:0}.lock-screen .penn-mascot{width:104px;height:118px}.lock-screen h2{font-size:20px}.lock-screen p{color:var(--muted);max-width:260px;font-size:11px}.lock-pad{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:260px;display:flex}.lock-pad input{border:1px solid var(--border);text-align:center;letter-spacing:10px;width:100%;color:var(--ink);background:#fff;border-radius:10px;padding:14px;font-size:22px}.lock-biometric{color:#0b8866;align-items:center;gap:8px;padding:8px 14px;font-size:11px;display:flex}:root[data-theme=dark] .lock-screen{background:#12181f}.load-more{text-align:center;color:#0b8866;width:100%;padding:16px 0;font-size:11px;font-weight:550}.load-more:hover{text-decoration:underline}.balance-card{isolation:isolate;background:radial-gradient(at 94% 0,#12b98a66,#0000 58%),linear-gradient(125deg,#007962,#059b77 70%,#0ba47d);border:1px solid #ffffff24;border-radius:22px;flex-direction:column;min-width:0;min-height:244px;padding:24px 25px 0;display:flex;box-shadow:0 12px 28px -18px #00664f80,inset 0 1px #ffffff30}.balance-card:before{content:"";z-index:-1;pointer-events:none;border:1px solid #bdffe82b;border-radius:50%;width:80%;height:65%;position:absolute;bottom:-36%;right:-24%;transform:rotate(-22deg);box-shadow:0 -16px 0 12px #b8ffe808,0 -35px 0 30px #b8ffe805}.balance-atmosphere{z-index:-1;pointer-events:none;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.balance-atmosphere canvas{width:100%;height:100%;display:block}.balance-label{color:#e0fff3;font-size:12px;font-weight:500}.balance-label>span{gap:10px}.balance-wallet{color:#e0fff2;background:linear-gradient(145deg,#9fffd83d,#61e9b913);border-radius:50%;justify-content:center;align-items:center;width:43px;height:43px;display:flex;box-shadow:inset 0 1px #ffffff24}.balance-eye{color:#d0f6e6;border-radius:50%;justify-content:center;align-items:center;min-width:32px;min-height:32px}.balance-eye:hover,.balance-link:hover{background:#ffffff18}.balance-link{color:#e4fff4;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.balance-amount-row{min-width:0;margin-top:17px}.big-balance{letter-spacing:-1.8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-shadow:0 2px 14px #00433114;margin:0;font-size:clamp(28px,3.1vw,48px);font-weight:650;line-height:1.13}.balance-hidden{letter-spacing:3px}.balance-note{color:#c6eddd;margin-top:12px;margin-bottom:27px;font-size:10px}.balance-note span{gap:6px}.balance-footer{border-top:1px solid #d3ffec26;flex-shrink:0;gap:9px;height:55px;margin-top:auto}.balance-banks{background:#064f3d2e;border:1px solid #ffffff2b;border-radius:999px;align-items:center;padding:3px 8px 3px 3px;display:flex;box-shadow:inset 0 1px #ffffff1f,0 5px 15px #004c3917}.balance-banks .mini-bank{background:#fff;border:2px solid #d9fff0;width:30px;height:30px;margin-left:-6px;box-shadow:0 2px 7px #004c3938}.balance-banks .mini-bank:first-child{margin-left:0}.balance-banks .mini-bank>img.bank-logo{border-radius:50%;padding:2px}.balance-banks .mini-bank.bank-generic{color:#176b54;background:#d9f3e8}.balance-banks .mini-bank.bank-generic>svg{stroke-width:1.7px;width:17px;height:17px}.balance-banks .mini-bank.bank-icon-bare{background:#fff}.balance-banks .mini-bank.bank-icon-bare>img.account-kind-icon{object-fit:contain;padding:3px}.balance-banks:empty{display:none}.balance-footer>span{color:#d0f1e4;margin:0;font-size:10px}.balance-footer>button{color:#e5fff4;align-items:center;gap:8px;min-height:40px;padding:0 0 0 6px;font-size:10px}.stat-card{background:linear-gradient(145deg,#f1faf5,#eaf6f0);border-color:#e0eee6;border-radius:20px;flex-direction:column;justify-content:center;min-width:0;padding:24px 21px;display:flex}.expense-card{background:linear-gradient(145deg,#fff5f5,#fcecef);border-color:#f4e5e8}.stat-label{color:#526d63;font-weight:500}.stat-card>strong{overflow-wrap:anywhere;white-space:normal;font-size:clamp(21px,2.05vw,30px)}.stat-foot{color:#6d8579;line-height:1.5}.expense-card .stat-foot{color:#9b7e81}.expense-card .icon-tile{color:#e57686;background:#ffdee3}.income-card .icon-tile{color:#00956c;background:#cef0df}.panel,.account-card,.subscription-card,.goal-card{border-radius:18px;box-shadow:0 4px 20px -15px #274a3820}.primary{border-radius:12px;transition:transform .2s,background .2s,box-shadow .2s}.primary:hover{transform:translateY(-2px);box-shadow:0 7px 16px -8px #08795880}.primary:active{transform:scale(.97)}.sidebar nav button,.mobile-nav>button{transition:background .2s,color .2s,transform .2s}.sidebar nav button:hover>svg,.mobile-nav>button:active>svg{transform:translateY(-2px)rotate(-6deg)}.sidebar nav button>svg,.mobile-nav>button>svg{transition:transform .25s}.penn-mascot{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.penn-banner:hover .penn-mascot,.mascot-note:hover .penn-mascot{transform:translateY(-4px)rotate(-3deg)}.page-content{animation:.38s ease-out page-arrive}.overview-grid>section{animation:.5s both card-arrive}.overview-grid>section:nth-child(2){animation-delay:55ms}.overview-grid>section:nth-child(3){animation-delay:.1s}.overview-grid>section:nth-child(n+4){animation-delay:.14s}.modal{animation:.28s cubic-bezier(.2,.8,.2,1) dialog-arrive}.toast{animation:.25s ease-out page-arrive}.goal-progress>span,.progress>span{transition:width .65s cubic-bezier(.2,.8,.2,1)}@keyframes page-arrive{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes card-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-arrive{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}:root[data-theme=dark] .stat-card{background:linear-gradient(145deg,#17362b,#17251f);border-color:#294638}:root[data-theme=dark] .expense-card{background:linear-gradient(145deg,#322329,#241d22);border-color:#423038}:root[data-theme=dark] .stat-label,:root[data-theme=dark] .stat-foot{color:#b0c2b8}@media (width<=700px){.balance-card{border-radius:20px;min-height:224px;padding:19px 21px 0}.balance-label{font-size:12px}.balance-wallet{width:38px;height:38px}.balance-amount-row{margin-top:16px}.big-balance{letter-spacing:-1.3px;font-size:clamp(30px,9.5vw,42px)}.balance-note{margin-top:9px;margin-bottom:24px;font-size:10px}.balance-footer{gap:7px;height:49px}.balance-footer>span,.balance-footer>button{font-size:9px}.balance-banks{padding:2px 7px 2px 2px}.balance-banks .mini-bank{width:27px;height:27px}.account-card .bank-icon{border-radius:16px;width:64px;height:64px}.stat-card{border-radius:17px;min-height:150px;padding:18px}.stat-top{margin-bottom:11px}.stat-label{font-size:11px}.stat-card>strong{font-size:25px}.stat-foot{font-size:9px}.page-heading h1{font-weight:680}.page-heading p{font-size:11px}.panel{border-radius:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.primary:hover,.penn-banner:hover .penn-mascot,.mascot-note:hover .penn-mascot,.sidebar nav button:hover>svg,.mobile-nav>button:active>svg{transform:none}.balance-atmosphere{display:none}}@media (width<=700px){.stat-card{container-type:inline-size}.stat-card>strong{letter-spacing:-.7px;font-size:clamp(16px,15cqw,25px)}}@media (width<=340px){.mobile-brand .brand-lockup{width:72px}}.bills-summary{position:relative;overflow:hidden}.bills-summary.has-mascot{min-height:175px;padding-right:210px}.bills-summary>.penn-mascot{object-position:center bottom;width:155px;height:175px;margin-left:0;position:absolute;bottom:0;right:30px}@media (width<=700px){.bills-summary.has-mascot{min-height:150px;padding-right:145px;overflow:hidden}.bills-summary>.penn-mascot{object-position:center bottom;width:125px;height:142px;margin-left:0;position:absolute;bottom:0;right:8px}}.goal-icon.has-transaction-image{width:40px;height:40px}.goal-art .goal-illustration.has-transaction-image{width:104px;height:104px;box-shadow:none;border-radius:0;transform:none}@media (width<=700px){.goal-art .goal-illustration.has-transaction-image{width:96px;height:96px}}.goal-card-actions{align-items:center;gap:14px;display:flex}.goal-history .settings-row:first-child{border-top:0}.savings-quick-amounts{flex-wrap:wrap;justify-content:center;gap:8px;margin:-8px 0 22px;display:flex}.savings-quick-amounts button{border:1px solid var(--border);min-height:40px;color:var(--ink);background:#f1f5ee;border-radius:10px;padding:9px 14px;font-size:12px;transition:background .2s,border-color .2s}.savings-quick-amounts button:hover{border-color:var(--green)}.savings-quick-amounts button[aria-pressed=true]{border-color:var(--green);color:#08785b;background:#e0f2e7}:root[data-theme=dark] .savings-quick-amounts button{background:#1d2c23}:root[data-theme=dark] .savings-quick-amounts button[aria-pressed=true]{color:#a9e7c3;background:#274c37}.goal-account{color:var(--muted);align-items:center;gap:6px;margin-top:10px;font-size:10px;display:flex}.goal-modal-total{border:1px solid var(--border);background:#f1f5ee;border-radius:12px;margin-top:16px;padding:14px 16px}.goal-modal-total-head{color:var(--muted);justify-content:space-between;gap:10px;font-size:10px;display:flex}.goal-modal-total-amount{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.goal-modal-total-amount strong{letter-spacing:-.5px;color:var(--ink);font-size:20px;font-weight:600}.goal-modal-total-amount strong.positive{color:#20946b}.goal-modal-total-amount strong.goal-modal-down{color:#c08a5f}.goal-modal-progress{background:#e3eadf;border-radius:6px;height:6px;margin-top:12px;position:relative;overflow:hidden}.goal-modal-progress>span{background:#71b99a;border-radius:6px;transition:width .3s;position:absolute;inset:0 auto 0 0}.goal-modal-progress>i{transition:left .3s,width .3s;position:absolute;top:0;bottom:0}.goal-modal-progress>i.add{background:repeating-linear-gradient(-45deg,#a7dcc2 0 4px,#8fd0b1 4px 8px)}.goal-modal-progress>i.withdraw{background:repeating-linear-gradient(-45deg,#f1cfb6 0 4px,#e8b994 4px 8px)}.goal-modal-total p{color:var(--muted);margin-top:9px;font-size:10px}.goal-modal-total p.goal-modal-warning{color:#ae6b59}:root[data-theme=dark] .goal-modal-total{background:#1c2420}:root[data-theme=dark] .goal-modal-progress{background:#2a352f}.amount-entry input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.amount-entry input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.amount-entry input[type=number]{appearance:textfield}.history-account{color:var(--muted);margin-top:4px;font-size:10px;display:block}.sidebar{overscroll-behavior:contain;overflow-y:auto}.sidebar>.brand,.sidebar>nav,.sidebar-bottom{flex-shrink:0}.greeting-sun{object-fit:contain;vertical-align:middle;width:40px;height:40px;margin-left:10px;display:inline-block}.about-sprout{object-fit:contain;width:44px;height:44px;display:inline-block}@media (width<=700px){.greeting-sun{width:32px;height:32px;margin-left:6px}}.welcome-shell{max-width:1100px;margin:0 auto;padding:0 24px 60px}.welcome-header{justify-content:space-between;align-items:center;gap:16px;padding:28px 0;display:flex}.welcome-header .brand-lockup{width:130px}.welcome-nav{align-items:center;gap:18px;display:flex}.welcome-nav .primary{padding:11px 20px}.welcome-hero{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:30px 0 50px;display:flex}.welcome-hero .penn-mascot{width:120px;height:135px}.welcome-hero h1{letter-spacing:-1.3px;max-width:620px;font-size:38px;font-weight:650;line-height:1.15}.welcome-hero>p{color:var(--muted);max-width:480px;font-size:13px;line-height:1.7}.welcome-cta{margin-top:10px}.welcome-cta .primary{padding:14px 24px;font-size:12px}.welcome-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-bottom:60px;display:grid}.feature-card{border:1px solid var(--border);text-align:left;background:#fff;border-radius:16px;padding:22px 20px}.feature-card .icon-tile{margin-bottom:14px}.feature-card h3{margin-bottom:8px;font-size:13px}.feature-card p{color:var(--muted);font-size:11px;line-height:1.6}.welcome-pricing{text-align:center;padding-bottom:60px}.welcome-pricing .eyebrow{justify-content:center;display:flex}.welcome-pricing h2{letter-spacing:-.8px;margin-bottom:30px;font-size:26px;font-weight:640}.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:640px;margin:0 auto;display:grid}.plan-card{text-align:left;padding:26px 24px}.plan-card h3{font-size:16px}.plan-price{letter-spacing:-.8px;margin:14px 0;font-size:30px;font-weight:600}.plan-price small{color:var(--muted);letter-spacing:0;margin-left:4px;font-size:11px;font-weight:400}.plan-card>p{color:var(--muted);margin-bottom:16px;font-size:11px;line-height:1.6}.plan-features{gap:10px;margin-bottom:22px;padding:0;list-style:none;display:grid}.plan-features li{color:var(--ink);align-items:center;gap:8px;font-size:11px;display:flex}.plan-features li>svg{color:var(--green);flex-shrink:0}.welcome-footer{text-align:center;color:var(--muted);border-top:1px solid var(--border);padding-top:20px;font-size:10px}.welcome-footer span{align-items:center;gap:6px;display:inline-flex}.auth-divider{color:var(--muted);align-items:center;gap:10px;margin:18px 0;font-size:10px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.google-button{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:12px;font-size:12px;font-weight:550;display:flex}.google-button:hover{background:#f7f9f6}:root[data-theme=dark] .feature-card,:root[data-theme=dark] .google-button{background:#161d19;border-color:#262f29}:root[data-theme=dark] .google-button:hover{background:#1c2420}@media (width<=900px){.welcome-features{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.welcome-shell{padding:0 18px 40px}.welcome-header{padding:20px 0}.welcome-header .brand-lockup{width:108px}.welcome-hero{padding:16px 0 40px}.welcome-hero h1{letter-spacing:-.9px;font-size:28px}.welcome-hero>p{font-size:12px}.welcome-features,.plan-grid{grid-template-columns:1fr}}.subscription-plan-list>.panel-subtitle{margin:14px 0 8px}.subscription-plan-option{border-bottom:1px solid var(--border);text-align:left;align-items:center;gap:14px;width:100%;padding:18px 4px;display:flex}.subscription-plan-option>span{flex:1;gap:5px;display:grid}.subscription-plan-option>span>strong{font-size:14px}.subscription-plan-option>span>small{color:var(--muted);font-size:10px;line-height:1.5}.subscription-plan-option>b{text-align:right;gap:3px;font-size:15px;font-weight:600;display:grid}.subscription-plan-option>b>small{color:var(--muted);font-size:9px;font-weight:400}.subscription-plan-option>svg{color:#8ba080}.subscription-plan-option.selected{background:var(--surface-alt,#8ba0801a);border-radius:12px}.subscription-plan-option.selected>span>small{color:#5a8f5a;font-weight:600}.tour-overlay{z-index:210;background:#12181f66;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.tour-spotlight{z-index:1;pointer-events:none;border-radius:10px;transition:top .3s cubic-bezier(.2,.8,.2,1),left .3s cubic-bezier(.2,.8,.2,1),width .3s cubic-bezier(.2,.8,.2,1),height .3s cubic-bezier(.2,.8,.2,1);position:fixed;box-shadow:0 0 0 9999px #12181f66}.tour-spotlight:after{content:"";border-radius:inherit;border:2px solid var(--green);animation:1.6s ease-in-out infinite tour-ring;position:absolute;inset:-4px}@keyframes tour-ring{0%,to{opacity:.9;inset:-4px}50%{opacity:.3;inset:-9px}}.tour-card{z-index:2;background:#fbfcf9;border-radius:16px;width:380px;max-width:100%;padding:22px 22px 18px;animation:.28s cubic-bezier(.2,.8,.2,1) dialog-arrive;position:relative;box-shadow:0 25px 100px #173b3226}.tour-card.floating{animation:.25s ease-out card-arrive;position:fixed}.tour-overlay.has-spotlight{background:0 0}.tour-card{overscroll-behavior:contain;max-height:calc(100dvh - 32px);overflow-y:auto}.tour-guide{align-items:center;gap:14px;margin:8px 0 18px;padding-top:10px;display:flex}.tour-guide .penn-mascot{object-fit:contain;flex-shrink:0;width:82px;height:94px}.tour-guide strong{margin-top:6px;font-size:13px;display:block}.tour-guide .eyebrow{font-size:9px}.tour-step-label{color:var(--muted);justify-content:space-between;gap:12px;margin-bottom:9px;font-size:11px;display:flex}.tour-progress{background:var(--border);border-radius:4px;height:4px;margin-bottom:18px;overflow:hidden}.tour-progress>span{border-radius:inherit;background:var(--green);height:100%;transition:width .2s;display:block}.tour-skip{min-height:32px;font-size:11px;position:absolute;top:12px;right:16px}.tour-card h3{font-size:20px;line-height:1.3}.tour-card p{color:var(--muted);margin-top:12px;font-size:13px;line-height:1.65}.tour-card .tour-tip{background:var(--bg);border-radius:10px;align-items:flex-start;gap:9px;padding:12px;font-size:12px;display:flex}.tour-tip svg{color:var(--green);flex-shrink:0;margin-top:2px}.tour-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.tour-actions .primary{padding:10px 16px}:root[data-theme=dark] .tour-card{color:var(--ink);background:#161d19}:root[data-theme=dark] .tour-progress>span{background:var(--green)}:root[data-theme=dark] .tour-progress>span.done{background:#1f4534}@media (width<=700px){.tour-overlay{align-items:flex-end;padding:0}.tour-card{max-height:calc(100dvh - env(safe-area-inset-top) - 16px);width:100%;padding:22px 20px max(22px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.tour-card.floating{max-height:50dvh;width:100%!important;position:fixed!important;inset:auto 0 0!important}.tour-card.floating .tour-guide{margin:0 0 10px;padding-top:4px}.tour-card.floating .tour-guide .penn-mascot{width:48px;height:54px}.tour-card.floating h3{font-size:18px}.tour-card.floating .tour-actions{margin-top:12px}}.field textarea{resize:vertical;min-height:100px;line-height:1.5}.what-if-field{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.safe-to-spend-block{z-index:1;border-top:1px solid #ffffff1a;flex-direction:column;gap:4px;margin-top:14px;padding-top:14px;display:flex;position:relative}.safe-to-spend-cta{text-align:left;color:inherit;width:100%}.safe-to-spend-label{color:#f1fff7;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.safe-to-spend-sub{color:#b4deca;padding-left:20px;font-size:10px}@media (width<=700px){.safe-to-spend-block{margin-top:11px;padding-top:11px}.safe-to-spend-label{font-size:12px}.safe-to-spend-sub{font-size:9px}}.subscription-row-details{text-align:right;gap:4px;max-width:55%;display:grid}.subscription-row-details small{font-size:inherit;line-height:1.5}.spending-breakdown{margin-top:18px}.spending-breakdown summary,.recap-panel summary{cursor:pointer;align-items:center;min-height:44px;font-weight:600;display:flex}.recap-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.recap-totals div{gap:5px;display:grid}.recap-totals small{color:var(--muted)}.recap-totals strong{overflow-wrap:anywhere}.finding-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.finding-actions button{min-height:44px}.safe-to-spend-cta{cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0}.safe-to-spend-cta:focus-visible{outline-offset:4px;outline:2px solid #fff}.what-if-field>div{align-items:center;gap:8px;display:flex}.what-if-field input{flex:1;min-width:0}.spending-breakdown summary,.recap-panel summary{gap:6px}details[open]>summary svg{transform:rotate(90deg)}@media (width<=700px){.insights-grid .panel-heading{flex-wrap:wrap;gap:8px}.insights-grid .month-input{max-width:100%}}.offline-status{color:#6f5314;background:#fff7dd;border:1px solid #d7b866;border-radius:10px;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:12px;display:flex}.scheduled-panel{margin-bottom:18px}.scheduled-panel .bill-row{flex-wrap:wrap}.scheduled-actions{gap:6px;margin-left:auto;display:flex}.scheduled-actions .primary{padding:9px 12px}.quick-transactions{gap:8px;padding:4px 0 16px;display:flex;overflow-x:auto}.quick-transactions>span{color:var(--readable-muted);white-space:nowrap;align-self:center;font-size:12px}.quick-transactions button{white-space:nowrap;border:1px solid var(--border);background:var(--bg);color:var(--ink);border-radius:999px;padding:8px 12px}.reconcile-fields{gap:14px;display:grid}:root[data-theme=dark] .offline-status{color:#ead99f;background:#302914;border-color:#66572c}@media (width<=700px){.scheduled-actions{justify-content:flex-end;width:100%}.scheduled-panel .bill-row>strong{margin-left:auto}}.app-shell{--modal-surface:#fbfcf9;--readable-muted:#65785e;--field-error:#a34437}:root[data-theme=dark] .app-shell{--modal-surface:#161d19;--readable-muted:#a6b9aa;--field-error:#f0a697}.app-shell select,:root[data-theme=dark] .app-shell select{background-position:right 12px center;background-repeat:no-repeat;background-size:14px}.user-modal{flex-direction:column;max-height:90dvh;padding:0;animation:none;display:flex;overflow:hidden}.modal-enter-active{transition:opacity .24s ease-out}.modal-enter-active .user-modal{transition:transform .24s cubic-bezier(.2,.8,.2,1)}.modal-leave-active{pointer-events:none;transition:opacity .15s ease-in}.modal-leave-active .user-modal{transition:transform .15s ease-in}.modal-enter-from,.modal-leave-to{opacity:0}.modal-enter-from .user-modal,.modal-leave-to .user-modal{transform:translateY(12px)}.user-modal>.panel-heading{background:var(--modal-surface);border-bottom:1px solid var(--border);flex-shrink:0;gap:16px;padding:20px 24px 16px}.user-modal .panel-heading h2{overflow-wrap:anywhere;line-height:1.35}.user-modal .panel-heading>.icon-button{flex-shrink:0;width:44px;height:44px}.modal-content{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:0 24px 24px;overflow:auto}.modal-content:has(>form){scrollbar-gutter:auto;padding:0;display:flex;overflow:hidden}.modal-content>form{flex-direction:column;width:100%;max-width:100%;min-height:0;display:flex}.modal-fields{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:16px 24px 8px;overflow:auto}.modal-footer{border-top:1px solid var(--border);background:var(--modal-surface);flex-shrink:0;padding:16px 24px 24px}.modal-footer .save-button{min-height:48px;margin:0;font-size:14px}.modal-footer .form-error{line-height:1.5}.user-modal .field,.user-modal .amount-entry>span{color:var(--readable-muted);font-size:13px}.user-modal .field input,.user-modal .field select{min-height:46px;font-size:14px}.user-modal .optional{color:var(--readable-muted);font-size:11px}.app-shell .segments button{min-height:44px}.user-modal .form-segments button{padding:10px 8px;font-size:13px}.user-modal .form-grid input{min-width:0}.user-modal .form-grid{gap:16px}.user-modal .amount-entry{padding:18px 0 24px}.user-modal .amount-entry input{width:230px;max-width:100%}.modal-helper{color:var(--readable-muted);margin:12px 0;font-size:13px;line-height:1.6}.field-error{color:var(--field-error);text-align:left;margin-top:7px;font-size:12px;line-height:1.5;display:block}.app-shell [aria-invalid=true]{border-color:var(--field-error)}.user-modal .amount-entry:has([aria-invalid=true]){outline:1px solid var(--field-error);outline-offset:-4px;border-radius:10px;padding-left:12px;padding-right:12px}.more-details{border-top:1px solid var(--border);margin:8px 0 0}.more-details>summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;padding:10px 0;font-size:13px;font-weight:600;list-style:none;display:flex}.more-details>summary::-webkit-details-marker{display:none}.more-details>summary>.optional{margin-left:auto;font-weight:400}.more-details-content{padding:8px 0}.more-details-content>.field:last-child{margin-bottom:8px}.app-shell summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:5px}.app-shell .text-button{white-space:normal;min-height:44px;color:var(--readable-muted);border-radius:8px;padding:10px 8px;font-size:12px;line-height:1.4}.app-shell .text-button:hover{background:#0987660a}.app-shell .danger-text{color:var(--field-error)}.app-shell .card-actions>.icon-button{min-width:44px;min-height:44px}.app-shell .card-actions{flex-wrap:wrap;justify-content:flex-end}.app-shell .card-actions .subtle,.app-shell .card-actions .due-badge{margin-right:4px}.app-shell .row-main{min-width:0}.app-shell .row-main strong,.app-shell .row-main small{overflow-wrap:anywhere}.app-shell .row-amount{flex-shrink:0}.app-shell .panel-subtitle,.app-shell .subtle,.app-shell .transaction-name small,.app-shell .row-main small{color:var(--readable-muted)}.app-shell .panel-subtitle{font-size:12px}.app-shell .empty>p{color:var(--readable-muted);font-size:13px;line-height:1.6}.app-shell .empty>.primary,.app-shell .empty>.text-button{margin-top:18px}.app-shell .settings-section-label{letter-spacing:.6px;color:var(--readable-muted);margin:28px 0 8px;font-size:12px;font-weight:650}.settings-helper{color:var(--readable-muted);padding:8px 0 16px;font-size:12px;line-height:1.6}.app-shell .settings-row{gap:12px;min-height:64px;font-size:14px}.app-shell .settings-row>span{min-width:0}.app-shell .settings-row>strong{text-align:right;overflow-wrap:anywhere;max-width:48%;color:var(--readable-muted);font-size:12px}.app-shell .settings-row:disabled{cursor:default;opacity:.7}.app-shell .settings-profile>div{min-width:0}.app-shell .settings-profile h2,.app-shell .settings-profile p{overflow-wrap:anywhere}.app-shell .delete-actions>button{min-height:46px;padding:12px 18px;font-size:13px}.app-shell .detail-note{color:var(--readable-muted);line-height:1.6}.app-shell .subscription-plan-option>span{min-width:0}.app-shell .subscription-plan-option>span>small{color:var(--readable-muted);font-size:12px}.app-shell .goal-card-head{align-items:flex-start;gap:12px}.app-shell .goal-card-head h2,.app-shell .account-card h2,.app-shell .subscription-card h2{overflow-wrap:anywhere;min-width:0}.app-shell .goal-card-footer{flex-wrap:wrap;gap:12px;font-size:12px}.app-shell .goal-card-actions{flex-wrap:wrap;gap:8px;margin-left:auto}.app-shell .goal-card-actions>.text-button:last-child{color:var(--green);background:#0987660c;padding:10px 12px}:root[data-theme=dark] .app-shell .goal-card-actions>.text-button:last-child{color:#8bd4b4;background:#09876624}.app-shell .subscription-bottom{flex-wrap:wrap;gap:12px}.app-shell .info-strip{align-items:flex-start;font-size:12px;line-height:1.6}.app-shell .balance-footer{flex-wrap:wrap;height:auto;min-height:49px;padding:8px 0}.app-shell .balance-footer>button{min-height:36px}.app-shell .balance-eye{justify-content:center;align-items:center;min-width:36px;min-height:36px}.app-shell .balance-label>span{min-width:0}.app-shell .notification-wrap .reminders-popover{overscroll-behavior:contain;max-height:min(440px,70dvh);overflow:auto}.app-shell .reminders-popover h3{font-size:14px}.app-shell .reminders-empty{color:var(--readable-muted);line-height:1.6}.app-shell .load-more{min-height:44px}.app-shell .receipt-lightbox{padding:72px 24px}.app-shell .receipt-lightbox .icon-button{min-width:44px;min-height:44px}.app-shell .receipt-lightbox-close{top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right))}.app-shell .receipt-lightbox-count{bottom:max(20px,env(safe-area-inset-bottom))}@media (width<=700px){.user-modal{border-radius:22px 22px 0 0;width:100%;max-height:94dvh}.user-modal>.panel-heading{padding:16px 20px 12px}.modal-content{padding:0 20px max(24px,env(safe-area-inset-bottom))}.modal-content:has(>form){padding:0}.modal-fields{padding:12px 20px 8px}.modal-footer{padding:12px 20px max(20px,env(safe-area-inset-bottom))}.user-modal .field input,.user-modal .field select{font-size:16px}.app-shell .heading-actions .primary{width:44px;height:44px;min-height:44px}.app-shell .mobile-nav>button>span{font-size:10px}.app-shell .full-panel .toolbar{grid-template-columns:minmax(0,1fr) 44px;gap:12px;display:grid}.app-shell .full-panel .toolbar>.segments,.app-shell .full-panel .toolbar>.search,.app-shell .full-panel .toolbar>.account-filter{grid-column:1/-1}.app-shell .full-panel .toolbar .month-input{width:100%;min-height:44px}.app-shell .full-panel .toolbar>.search{order:0;min-height:44px}.app-shell .search input,.app-shell .transaction-name>div{min-width:0}.app-shell .transaction-name strong{font-size:13px}.app-shell .transaction-name small{font-size:11px}.app-shell .transaction-row>strong{overflow-wrap:anywhere;font-size:12px}.app-shell .spending-body{flex-wrap:wrap;gap:20px}.app-shell .legend{min-width:125px;max-width:100%}.app-shell .legend>div{font-size:12px}.app-shell .bills-summary.has-mascot{min-height:140px;padding-right:100px}.app-shell .bills-summary>.penn-mascot{width:90px;height:115px;right:4px}.app-shell .bills-summary strong{overflow-wrap:anywhere;font-size:clamp(19px,6vw,25px)}.app-shell .bills-summary{gap:16px;padding:20px}.app-shell .recap-totals{grid-template-columns:1fr;gap:14px}.app-shell .recap-totals>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.app-shell .recap-totals small{font-size:12px}.app-shell .topbar{gap:8px;padding-left:16px;padding-right:16px}.app-shell .topbar-actions{gap:8px}.app-shell .local-pill{display:none}.app-shell .icon-button.mobile-menu-button,.app-shell .avatar-button{justify-content:center;align-items:center;min-width:44px;min-height:44px}.app-shell .reminders-popover{width:calc(100vw - 32px);max-width:360px;position:fixed;top:78px;right:16px}.app-shell .goal-card-head .card-actions{flex-shrink:0}.app-shell .goal-card-footer>span{width:100%}.app-shell .goal-card-actions{justify-content:space-between;width:100%;margin-left:0}.app-shell .card-actions .subtle{font-size:11px}.app-shell .card-actions .due-badge{font-size:10px}.app-shell .settings-row-volume{flex-wrap:wrap}.app-shell .settings-row-volume input[type=range]{min-height:44px}.app-shell .section-summary>strong{overflow-wrap:anywhere;font-size:clamp(24px,8vw,35px)}.app-shell .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.app-shell .calendar-grid>button{width:100%;min-width:0;height:44px;padding:0}.app-shell .calendar-grid>span{min-width:0;font-size:11px}.modal-enter-from .user-modal,.modal-leave-to .user-modal{transform:translateY(24px)}}@media (width<=360px){.user-modal .form-grid{grid-template-columns:1fr}}.support-launch{justify-content:flex-end;margin-bottom:16px;display:flex}.support-modal{width:min(900px,100%)}.support-modal>.modal-content{scrollbar-gutter:auto;padding:0}.support-modal .support-panel{border:0;border-radius:0;margin:0}@media (width<=540px){.support-launch .text-button{min-height:44px;font-size:12px}.support-modal{width:100%}}@media (prefers-reduced-motion:reduce){.tour-spotlight,.tour-progress>span,.tour-card,.tour-card.floating{transition:none;animation:none}.tour-spotlight:after{animation:none}}.due-attention{animation:1.1s ease-out 2 due-attention}@keyframes due-attention{0%,to{box-shadow:0 0 #0000}45%{box-shadow:0 0 0 5px #d99b4526}}.mobile-due-count{color:#fff;background:#8c491d;border-radius:10px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;display:inline-flex}.sidebar nav button.active>svg,.mobile-nav>button.active>svg{animation:.24s ease-out nav-confirm}@keyframes nav-confirm{50%{transform:translateY(-3px)}to{transform:translateY(0)}}.page-heading h1:focus{outline:none}.toast{flex-wrap:wrap;width:max-content;max-width:min(90vw,540px);animation:none}.feedback-icon{flex-shrink:0;display:inline-flex;position:relative}.toast>span:nth-child(2){flex:1;min-width:0}.feedback-action{color:inherit;text-underline-offset:3px;align-items:center;gap:6px;min-height:44px;font-weight:600;text-decoration:underline;display:flex}.feedback-enter-active,.feedback-leave-active{transition:opacity .2s,transform .2s}.feedback-enter-from,.feedback-leave-to{opacity:0;transform:translate(-50%,8px)}.goal-celebration .feedback-icon{animation:.65s ease-out goal-confirm}.celebration-spark{color:#ffe398;animation:.8s ease-out goal-confirm;position:absolute;top:-10px;right:-9px}@keyframes goal-confirm{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@media (width<=700px){.toast{bottom:calc(88px + env(safe-area-inset-bottom))}.feedback-action{margin-left:30px}}.transaction-detail-actions{grid-template-columns:1fr 1fr;gap:12px;margin:0 0 20px;display:grid}.transaction-detail-actions button{border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:12px;font-size:12px;font-weight:650;display:flex}.transaction-delete-button{color:#b43c2c;background:#fff0ed;border:1px solid #efc8c0}.transaction-delete-button:hover{background:#ffe3dc}.transaction-repeat-button{color:#0b8866;background:#fff;border:1px solid #cfe3d6}.transaction-repeat-button:hover{background:#eef7f1}.transaction-detail-actions>button:nth-child(3){grid-column:1/-1}:root[data-theme=dark] .transaction-repeat-button{color:#5fd3a6;background:#18211c;border-color:#2b4a3b}:root[data-theme=dark] .transaction-repeat-button:hover{background:#1e2a23}:root[data-theme=dark] .transaction-delete-button{color:#f0a493;background:#2a1b18;border-color:#5a2f27}@media (width<=380px){.transaction-detail-actions{grid-template-columns:1fr}}.transaction-note{border:1px solid var(--border);background:var(--modal-surface,#f7f9f6);border-radius:12px;margin-top:20px;padding:16px 18px}.transaction-note h4{color:var(--muted);align-items:center;gap:7px;margin:0 0 9px;font-size:11px;font-weight:650;display:flex}.transaction-note p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.65}.transaction-note p.transaction-note-empty{color:var(--muted)}.mobile-brand .brand-mark{object-fit:contain;width:36px;height:36px;display:block}.transaction-table .table-head,.transaction-table .transaction-row{padding-left:12px;padding-right:12px}.transaction-table .transaction-row{filter:none;border-radius:0;transition:background-color .15s}.transaction-table .transaction-row:hover{background:#f3f6f0}.transaction-table .transaction-row:focus-visible{outline:2px solid var(--green);outline-offset:-2px}@media (width<=700px){.transaction-table .table-head,.transaction-table .transaction-row{padding-left:8px;padding-right:8px}}
