:root{--bg:#f5f7fb;--ink:#1b263b;--muted:#8791a5;--line:#e9edf5;--primary:#6358e8;--teal:#69bbb0;--purple:#aaa3f3;--navy:#1e2b48;--radius:19px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.55;cursor:wait}a{color:var(--primary)}[hidden]{display:none!important}.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}.icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.brand{color:var(--ink);display:flex;align-items:center;font-size:32px;font-weight:750;letter-spacing:-1.8px;text-decoration:none;gap:9px;line-height:1}.brand-symbol{width:34px;height:35px;border-radius:11px;background:var(--primary);color:#fff;font-size:29px;letter-spacing:-1px;text-align:center;line-height:32px;font-family:Georgia,serif;font-style:italic}.brand-period{color:var(--primary);margin-left:-9px}.app-shell{display:flex;min-height:100dvh}.sidebar{width:230px;background:#fff;position:fixed;top:0;bottom:0;left:0;padding:35px 22px 25px;display:flex;flex-direction:column;border-right:1px solid var(--line);z-index:3}.sidebar .brand{margin:0 14px 37px}.household-card{display:flex;align-items:center;gap:10px;background:#f7f8fc;border:1px solid #eef0f6;padding:13px 12px;border-radius:12px;margin-bottom:37px}.household-card strong{display:block;font-size:11px}.household-card span:not(.household-mark){display:block;font-size:9px;color:var(--muted);margin-top:2px}.household-mark{background:#eeebff;color:var(--primary);height:33px;width:33px;display:grid;place-items:center;border-radius:9px}.household-mark .icon{width:18px}.nav-label{font-size:8px;font-weight:700;letter-spacing:1.4px;color:#a0a9ba;margin:0 14px 12px}.navigation{display:grid;gap:7px}.nav-item{border:0;background:none;display:flex;align-items:center;gap:12px;padding:13px 14px;color:#8b94a6;font-size:11px;border-radius:10px;text-align:left;font-weight:500}.nav-item .icon{width:19px;height:19px}.nav-item.active{background:#efedff;color:var(--primary);font-weight:650}.nav-item:hover{background:#f5f5fb}.sidebar-bottom{margin-top:auto}.sync-indicator{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted);margin:30px 13px 22px}.status-dot{width:6px;height:6px;background:#75bba2;border-radius:50%}.sync-indicator.offline .status-dot{background:#d7a44f}.user-profile{display:flex;align-items:center;gap:10px;background:none;border:0;border-top:1px solid var(--line);padding:20px 7px 0;width:100%;text-align:left;color:var(--ink)}.avatar{display:inline-grid;place-items:center;width:33px;height:33px;background:#e9e6ff;color:#756cd2;border-radius:50%;font-size:12px;font-weight:650;flex:none}.user-profile strong{font-size:11px;display:block}.user-profile small{color:var(--muted);font-size:9px;display:block}.user-profile>span:last-child{margin-left:auto;color:var(--muted)}.main-content{margin-left:230px;width:calc(100% - 230px);padding:42px 40px 0;max-width:1720px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:29px}.eyebrow{font-size:9px;font-weight:650;letter-spacing:1.7px;color:var(--muted);display:block;margin:0 0 10px}h1{font-size:29px;letter-spacing:-1.05px;font-weight:650;line-height:1.25;margin:0}h1 span{color:var(--primary)}.header-subtitle{font-size:11px;color:var(--muted);margin:10px 0 0}.header-actions{display:flex;align-items:center;gap:12px}.month-picker input{width:145px;border:1px solid var(--line);background:white;padding:10px 12px;font-size:11px;border-radius:10px;color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:11px 17px;font-size:11px;font-weight:600;text-decoration:none;background:#fff;color:var(--ink);min-height:42px;white-space:nowrap}.button .icon{width:17px;height:17px}.button.primary{background:var(--primary);border-color:var(--primary);color:white;box-shadow:0 4px 9px #6358e818}.button.primary:hover{background:#5148cb}.button.secondary:hover{background:#f5f4ff;border-color:#d9d5ff}.button.small{padding:8px 12px;min-height:35px;font-size:10px}.button.danger{color:#ba5b65;border-color:#f0d8dc;margin-right:auto}.full{width:100%}.text-button{border:0;background:transparent;color:var(--primary);font-size:11px;font-weight:550;display:inline-flex;align-items:center;gap:6px;padding:8px 0}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.kpi{position:relative;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:23px 25px;display:flex;flex-direction:column;gap:11px;overflow:hidden}.kpi-icon{position:absolute;right:23px;top:22px;width:35px;height:35px;border-radius:11px;display:grid;place-items:center}.mint{background:#e9f6f0;color:#58a48d}.peach{background:#fff0e7;color:#d8956a}.purple{background:#eeebff;color:#8478d7}.kpi-label{font-size:11px;color:var(--muted)}.kpi strong{font-size:33px;letter-spacing:-1.3px;line-height:1.25;font-weight:650;font-variant-numeric:tabular-nums}.kpi-foot{font-size:9px;color:#99a1b1}.balance-kpi{background:#f0eefe;border-color:#e9e5ff}.balance-kpi strong{color:#6259be}.negative{color:#bc6b74!important}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px}h2{font-size:15px;letter-spacing:-.3px;font-weight:650;margin:0}h3{font-size:13px;font-weight:600;margin:0}.panel-heading p{font-size:10px;color:var(--muted);margin:5px 0 0}.dashboard-top{display:grid;grid-template-columns:1.65fr 1fr;gap:24px;margin-bottom:24px}.trend-panel{min-width:0}.chart-legend{display:flex;gap:10px;font-size:8px;color:var(--muted)}.chart-legend span{display:flex;align-items:center;gap:5px}.legend-dot{display:inline-block;height:6px;width:6px;border-radius:2px}.violet{background:var(--purple)}.teal{background:var(--teal)}.annual-chart{display:flex;height:207px;gap:13px;border-bottom:1px solid var(--line);padding:10px 3px 0;background:repeating-linear-gradient(to top,transparent 0,transparent 49px,#f3f5fa 49px,#f3f5fa 50px);margin-bottom:23px}.annual-month{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;position:relative}.bar-pair{display:flex;gap:4px;align-items:flex-end;height:172px;justify-content:center}.chart-bar{max-width:18px;min-width:3px;flex:1;border-radius:4px 4px 0 0;background:var(--purple)}.chart-bar.expense{background:var(--teal)}.chart-month-label{font-size:8px;text-align:center;margin:12px -5px -21px;color:#9ba4b6}.annual-month.selected .chart-month-label{color:var(--primary);font-weight:700}.portfolio-hero{position:relative;overflow:hidden;border-radius:var(--radius);background:linear-gradient(130deg,#263251,#18253f);color:white;padding:25px 27px;display:flex;flex-direction:column;min-width:0}.hero-tag{font-size:8px;letter-spacing:1.5px;color:#a5b0cd;z-index:1}.portfolio-hero h2{font-size:20px;letter-spacing:-.5px;margin:13px 0 18px;font-weight:500;z-index:1}.hero-label{font-size:9px;color:#a5b2cd;z-index:1}.portfolio-hero>strong{font-size:34px;letter-spacing:-1.2px;margin-top:5px;font-weight:550;z-index:1}.portfolio-hero>p{font-size:9px;color:#93a4c6;margin:3px 0 17px;z-index:1}.portfolio-people{display:flex;gap:10px;z-index:1}.portfolio-person{flex:1;min-width:0;border-right:1px solid #ffffff1c;font-size:8px;color:#9caacd}.portfolio-person:last-child{border:0}.portfolio-person strong{display:block;color:#e9edfa;font-size:10px;font-weight:500;margin-top:3px}.hero-link{border:0;border-top:1px solid #ffffff1c;background:transparent;color:#b5b6fc;text-align:left;font-size:9px;padding:13px 0 0;margin-top:18px;z-index:1}.hero-decoration{position:absolute;width:260px;height:260px;right:-160px;top:-60px;border:1px solid #ffffff13;border-radius:50%;box-shadow:0 0 0 35px #ffffff03,0 0 0 70px #ffffff03,0 0 0 105px #ffffff02}.dashboard-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:start}.category-layout{display:flex;align-items:center;gap:29px;min-height:167px}.category-ring{height:145px;width:145px;flex:none;position:relative}.category-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-center span{font-size:8px;color:var(--muted)}.ring-center strong{font-size:19px;letter-spacing:-.8px;margin-top:4px}.category-list{flex:1;min-width:0}.category-row{display:flex;gap:8px;align-items:center;font-size:9px;margin:10px 0}.category-dot{width:6px;height:6px;border-radius:2px;flex:none}.category-label{flex:1;color:#8490a5}.category-amount{font-weight:550;white-space:nowrap;font-variant-numeric:tabular-nums}.nowi-strip{display:flex;gap:11px;align-items:center;border-top:1px solid var(--line);padding-top:19px;margin-top:22px}.nowi-heart{background:#f1edfa;color:#a693cc;border-radius:10px;height:33px;width:33px;display:grid;place-items:center;flex:none}.nowi-heart .icon{width:16px;height:16px}.nowi-strip>div{flex:1;min-width:0}.nowi-strip strong{font-size:10px;font-weight:550}.nowi-strip span:not(.nowi-heart){display:block;font-size:8px;color:#a2aabb;margin-top:3px}.nowi-strip>strong{font-size:15px;white-space:nowrap;color:#8c79b6;letter-spacing:-.4px}.subtle{font-size:10px;color:var(--muted)}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:210px;text-align:center;padding:22px 12px}.empty-icon{height:49px;width:49px;border-radius:15px;background:#f1f1fb;color:#a2a0cf;display:grid;place-items:center;margin-bottom:14px}.empty-icon .icon{height:25px;width:25px}.empty h3{font-size:13px;color:#69758c}.empty p{font-size:10px;line-height:1.8;color:#a0a8b9}.empty .button{font-size:10px;margin-top:8px;min-height:34px}.receipt-row{display:flex;align-items:center;gap:11px;background:none;border:0;border-top:1px solid var(--line);padding:17px 0;width:100%;text-align:left;color:var(--ink)}.receipt-icon{height:37px;width:37px;border-radius:10px;background:#f1f0fb;color:#9891ca;display:grid;place-items:center;flex:none}.receipt-icon .icon{width:18px;height:18px}.receipt-main{flex:1;min-width:0}.receipt-name{font-size:11px;font-weight:600;display:block;overflow-wrap:anywhere}.receipt-meta{display:block;margin-top:4px;color:var(--muted);font-size:9px}.receipt-price{font-size:12px;font-weight:550;white-space:nowrap;font-variant-numeric:tabular-nums}.receipt-arrow{color:#b4bdce;margin-left:7px}.receipt-row:hover .receipt-name{color:var(--primary)}.receipt-category-list{display:flex;flex-wrap:wrap;gap:5px;margin:0 12px;max-width:210px}.category-chip{font-size:8px;color:#8d83bd;background:#f1eefb;border-radius:5px;padding:3px 6px;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.documents-toolbar{display:flex;align-items:center;gap:15px;margin-bottom:20px}.search-box{flex:1}.search-box input{width:100%;max-width:420px;background:#fff}.documents-list .receipt-row{padding:20px 0}.table-head{display:grid;grid-template-columns:1fr 1fr 90px;font-size:9px;color:var(--muted);padding-bottom:15px}.table-head span:last-child{text-align:right}.finance-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;align-items:start}.entry-row{display:flex;align-items:center;gap:10px;width:100%;border:0;border-top:1px solid var(--line);background:none;padding:15px 0;text-align:left;color:var(--ink)}.entry-row>div{flex:1;min-width:0}.entry-row strong{font-size:11px;display:block}.entry-row span{display:block;font-size:9px;color:var(--muted);margin-top:4px}.entry-row>strong{font-size:12px;white-space:nowrap}.entry-row:hover strong{color:var(--primary)}.data-note{font-size:10px;color:var(--muted);margin:20px 5px;line-height:1.8}.investment-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0 27px}.investment-heading h2{font-size:28px;letter-spacing:-.7px}.investment-heading p{color:var(--muted);font-size:11px;margin-top:8px}.investment-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.investment-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;position:relative}.investment-card.nowi-card{background:#f3effb;border-color:#e9e2f4}.investment-card .avatar{margin-bottom:20px}.investment-card h3{position:absolute;top:31px;left:69px;font-size:13px}.investment-card>strong{font-size:30px;letter-spacing:-1px;font-weight:600;display:block}.investment-card>span:not(.avatar){font-size:9px;color:var(--muted);display:block;margin-top:4px}.investment-card .contribution-label{border-top:1px solid var(--line);padding-top:15px;margin-top:20px;font-size:10px}.contribution-label b{font-weight:550;float:right;color:#6c7690}.contribution-chart{display:flex;gap:16px;align-items:flex-end;height:175px;padding:10px 8px 23px;border-bottom:1px solid var(--line)}.contribution-month{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;position:relative}.contribution-stack{width:min(35px,100%);display:flex;flex-direction:column-reverse;border-radius:5px 5px 0 0;overflow:hidden}.contribution-segment{width:100%}.contribution-month>span{position:absolute;bottom:-23px;font-size:9px;color:var(--muted)}.investment-history{margin-top:24px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:10px;white-space:nowrap}th{font-weight:500;color:var(--muted);padding:0 16px 15px 0}td{border-top:1px solid var(--line);padding:14px 16px 14px 0;color:#6f7b93}td:first-child{font-weight:550;color:var(--ink)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.small-note{font-size:10px;color:var(--muted);line-height:1.8;margin:19px 0 0}.member-row{display:flex;align-items:center;gap:11px;margin:14px 0}.member-row>div{flex:1}.member-row strong{font-size:11px;display:block}.member-row span:not(.avatar){font-size:9px;color:var(--muted)}.you-badge{background:#eeebff;color:var(--primary);padding:3px 7px;border-radius:5px}.app-icon{height:39px;width:39px;border-radius:11px}.install-steps{padding-left:20px;color:#727e93;font-size:11px;line-height:1.9}.install-steps li{padding-left:5px;margin:10px 0}.install-steps strong{font-weight:550;color:var(--ink)}.excel-actions{display:flex;gap:10px;flex-wrap:wrap}.file-button{cursor:pointer}.ai-model-row{display:flex;gap:11px;align-items:center}.model-badge{height:36px;width:36px;display:grid;place-items:center;border-radius:11px;background:#eeebff;color:var(--primary);font-size:11px;font-weight:650}.ai-model-row strong{display:block;font-size:12px}.ai-model-row .subtle{display:block;font-size:9px;margin-top:3px}.invitation-box{margin-top:17px;background:#f8f8fc;border:1px solid var(--line);padding:15px;border-radius:10px}.invitation-box label{display:block;font-size:10px}.invitation-box input{width:100%;margin:7px 0 12px;font-size:10px}.password-form{display:grid;gap:15px}.password-form label{display:flex;flex-direction:column;gap:6px;font-size:10px}.password-form .button{justify-self:start}.logout-button{margin-top:15px;color:#ac6b76}footer{display:flex;justify-content:space-between;color:#a0a9ba;font-size:9px;padding:28px 2px;margin-top:16px;gap:15px}.footer-dot{color:#a29bea;font-size:7px;margin-left:6px}.mobile-nav{display:none}.notice{border:1px solid #eee0bd;background:#fff8e9;color:#917542;padding:12px 14px;border-radius:10px;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.notice.error{border-color:#f1d4d8;background:#fff0f2;color:#aa6570}#page-error{margin-bottom:20px}.auth-screen{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{position:relative;overflow:hidden;background:#202c49;color:white;padding:45px 65px;display:flex;flex-direction:column}.brand.light{color:#fff;font-size:35px}.light .brand-symbol{background:#7369e8}.light .brand-period{color:#a19aef}.auth-story-content{margin:auto 0;padding:70px 0;position:relative}.label-chip{background:#ffffff0d;border:1px solid #ffffff13;border-radius:20px;padding:7px 13px;font-size:8px;letter-spacing:1.5px;color:#bcbfe5}.auth-story h1{font-size:clamp(40px,4vw,61px);line-height:1.17;font-weight:550;letter-spacing:-2px;margin:27px 0}.auth-story-content>p{font-size:13px;line-height:1.9;color:#aeb9d3}.auth-orbit{position:absolute;right:-140px;bottom:-50px;width:210px;height:210px;border:1px solid #ffffff15;border-radius:50%;box-shadow:0 0 0 45px #ffffff03,0 0 0 90px #ffffff03}.auth-orbit>div{position:absolute;inset:40px;background:linear-gradient(160deg,#6c62db,#5a51b0);border:1px solid #8178e8;display:grid;place-items:center;border-radius:30px;transform:rotate(-12deg);font-size:68px;font-weight:300;box-shadow:0 20px 40px #131d3240}.auth-orbit>span{position:absolute;width:42px;height:42px;background:#d2eae3;color:#4f8e7b;border-radius:13px;display:grid;place-items:center;font-size:23px;top:5px;left:5px;transform:rotate(12deg)}.auth-orbit>span:last-child{top:auto;left:auto;right:0;bottom:15px;background:#e3ddf6;color:#8172b0}.auth-footnote{font-size:10px;color:#828eac}.auth-form-wrap{display:grid;place-items:center;padding:35px}.auth-form{width:100%;max-width:330px}.auth-form h2{font-size:33px;letter-spacing:-1.3px}.auth-form>p{font-size:12px;color:var(--muted);line-height:1.8;margin:16px 0 30px}.auth-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:21px;font-size:11px}.auth-form input{padding:13px}.auth-form .button{width:100%;justify-content:space-between;padding:13px 18px}.auth-form .auth-note{font-size:10px;margin:20px 0 0}.auth-form .notice.error{margin:10px 0 20px;color:#aa6570}input,select{border:1px solid #e1e6f0;background:#fff;color:var(--ink);padding:11px 12px;border-radius:9px;min-width:0;font-size:12px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid #aba5f1;outline-offset:3px}dialog{width:min(740px,calc(100% - 24px));border:1px solid #ebeef6;border-radius:23px;padding:29px;background:#fff;color:var(--ink);max-height:90dvh;overflow:auto;box-shadow:0 30px 120px #17274640}dialog::backdrop{background:#1a274875;backdrop-filter:blur(6px)}#scan-dialog{width:min(495px,calc(100% - 24px))}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-heading h2{font-size:23px;font-weight:600;letter-spacing:-.8px}.dialog-heading .eyebrow{font-size:8px;margin-bottom:8px}.icon-button{border:0;background:none;color:#a0a9ba;min-width:35px;min-height:35px;font-size:25px;padding:4px 8px}.dialog-intro{margin:14px 0 22px;font-size:11px;line-height:1.8}.upload-zone{border:1.5px dashed #c9c5ed;border-radius:15px;background:#f8f7ff;display:flex;flex-direction:column;align-items:center;gap:10px;padding:31px 15px;cursor:pointer;text-align:center}.upload-icon{background:#eeebff;color:var(--primary);border-radius:13px;height:47px;width:47px;display:grid;place-items:center;margin-bottom:3px}.upload-icon .icon{width:23px;height:23px}.upload-zone strong{font-size:12px;overflow-wrap:anywhere}.upload-zone>span:last-of-type{font-size:9px;color:var(--muted)}#photo{position:absolute;opacity:0;width:1px;height:1px}.upload-zone:focus-within{outline:2px solid var(--primary);outline-offset:3px}.upload-preview{width:100%;max-height:220px;object-fit:contain;background:var(--bg);border-radius:12px;margin-top:14px}.privacy{color:var(--muted);font-size:10px;line-height:1.8;margin:15px 0 21px}.manual{display:flex;justify-content:space-between;width:100%;padding:18px 0 0}.form-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:13px;margin:24px 0}.form-grid label,.finance-fields label{display:flex;flex-direction:column;gap:7px;font-size:11px}.items-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.item-row{border-top:1px solid var(--line);padding:13px 0;display:grid;grid-template-columns:1fr 168px 100px 30px;gap:8px}.item-amount{text-align:right}.item-remove{font-size:20px;padding:0;min-width:30px}.totals-box{background:#f8f9fc;border:1px solid var(--line);border-radius:13px;padding:19px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:15px}.totals-box label{display:flex;flex-direction:column;gap:7px;font-size:10px;width:170px}.totals-box>div{text-align:right;font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:10px}.totals-box strong{font-size:24px;color:var(--ink);font-weight:600;letter-spacing:-.6px}.checkbox-label{display:flex;align-items:flex-start;gap:9px;font-size:10px;line-height:1.7;margin:15px 0}.checkbox-label input{margin:4px 0 0;flex:none}.editor-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}#original-link{font-size:11px}#finance-editor{max-width:480px}.finance-fields{display:grid;gap:17px;margin-top:25px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:#fff;padding:14px 23px;border-radius:12px;font-size:12px;z-index:10;box-shadow:0 8px 30px #1e2b4830;max-width:90%;text-align:center}
.annual-month{border:0;background:transparent;padding:0;cursor:pointer}
@media(max-width:1200px){.sidebar{width:200px;padding:30px 16px 20px}.main-content{margin-left:200px;width:calc(100% - 200px);padding:32px 25px 0}.page-header{flex-wrap:wrap}.header-actions{margin-left:auto}.kpi{padding:20px}.kpi strong{font-size:29px}.kpi-icon{right:19px;top:18px;width:31px;height:31px}.dashboard-top{grid-template-columns:1.35fr 1fr;gap:18px}.dashboard-bottom{grid-template-columns:1fr 1fr;gap:18px}.panel{padding:22px}.category-layout{gap:16px;flex-wrap:wrap;justify-content:center}.category-ring{width:127px;height:127px}.category-list{min-width:145px}.annual-chart{gap:9px}.settings-grid,.finance-grid{gap:18px}.portfolio-hero{padding:23px}.portfolio-hero h2{font-size:18px}.portfolio-hero>strong{font-size:30px}.auth-story{padding:45px}}
@media(max-width:950px){.dashboard-top,.dashboard-bottom,.finance-grid{grid-template-columns:1fr}.category-layout{flex-wrap:nowrap;justify-content:flex-start;gap:35px}.category-ring{width:145px;height:145px}.portfolio-hero{min-height:280px}.portfolio-hero>strong{font-size:37px}.portfolio-people{max-width:350px}.settings-grid{grid-template-columns:1fr}.kpi-grid{gap:12px}.kpi strong{font-size:25px}.kpi-icon{width:25px;height:25px;right:15px;top:15px}.kpi-icon .icon{width:16px;height:16px}.kpi-label{font-size:10px}.kpi-foot{font-size:8px}.kpi{padding:18px 16px}.investment-cards{gap:12px}.investment-card{padding:19px}.investment-card h3{left:60px;top:26px}.investment-card>strong{font-size:24px}.receipt-category-list{display:none}.table-head{grid-template-columns:1fr 90px}.table-head span:nth-child(2){display:none}}
@media(max-width:700px){.sidebar{display:none}.main-content{margin:0;width:100%;padding:29px 19px 80px}.page-header{align-items:flex-start;margin-bottom:24px;gap:20px}.page-header h1{font-size:27px}.header-subtitle{font-size:11px;max-width:310px;line-height:1.8}.header-actions{margin:0;width:100%;justify-content:space-between}.month-picker input{font-size:12px;width:151px;padding:12px}.button{font-size:12px;padding:12px 16px;min-height:45px}.button.small{font-size:10px;min-height:35px;padding:8px 11px}.kpi-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:19px}.balance-kpi{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.balance-kpi .kpi-icon{display:none}.balance-kpi strong{grid-column:2;grid-row:1/3;font-size:30px}.kpi strong{font-size:28px}.kpi-label{font-size:10px}.kpi-foot{font-size:9px}.kpi{padding:20px 18px;border-radius:16px}.kpi-icon{top:17px;right:16px}.balance-kpi .kpi-foot{font-size:8px}.dashboard-top,.dashboard-bottom{gap:19px;margin-bottom:19px}.panel{padding:21px;border-radius:17px}.panel-heading{margin-bottom:21px}h2{font-size:15px}.panel-heading p{font-size:10px}.trend-panel .panel-heading{align-items:flex-start;gap:7px}.chart-legend{flex-direction:column;gap:5px;font-size:8px;padding-top:3px}.annual-chart{gap:8px;padding:5px 0 0;height:177px}.bar-pair{height:145px;gap:3px}.chart-month-label{font-size:8px;margin-left:-4px;margin-right:-4px}.portfolio-hero{padding:25px;min-height:292px;border-radius:17px}.portfolio-hero h2{font-size:23px}.portfolio-hero>strong{font-size:39px}.portfolio-people{gap:25px;margin-top:4px}.portfolio-person strong{font-size:12px}.hero-link{font-size:10px;margin-top:20px;padding-top:17px}.category-layout{gap:20px}.category-ring{width:128px;height:128px}.category-list{min-width:0}.category-row{font-size:9px;margin:13px 0}.ring-center strong{font-size:17px}.nowi-strip{gap:9px}.nowi-strip>div strong{font-size:9px;line-height:1.6}.nowi-strip>strong{font-size:14px}.recent-panel .text-button{font-size:9px;white-space:nowrap}.receipt-row{padding:17px 0}.receipt-name{font-size:12px}.receipt-price{font-size:13px}.receipt-meta{font-size:9px}.documents-toolbar{gap:9px;flex-wrap:wrap}.search-box{flex-basis:100%}.search-box input{max-width:none;font-size:16px}.documents-toolbar select{font-size:16px}.documents-list .receipt-row{padding:17px 0}.documents-list{padding:20px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;min-height:65px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:#ffffffef;border-top:1px solid var(--line);backdrop-filter:blur(15px);z-index:4}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:none;color:#a3adbd;width:20%;font-size:8px;min-height:43px}.mobile-nav button.active{color:var(--primary);font-weight:650}.mobile-nav .icon{width:20px;height:20px}.investment-heading{flex-direction:column;align-items:flex-start;gap:12px}.investment-heading h2{font-size:25px}.investment-cards{grid-template-columns:1fr}.investment-card{padding:23px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:5px}.investment-card .avatar{margin:0;grid-column:1;grid-row:1/3;width:36px;height:36px}.investment-card h3{top:25px;left:73px;font-size:14px}.investment-card>strong{grid-column:2;grid-row:1/3;font-size:28px}.investment-card>span:not(.avatar){grid-column:1/-1;margin-top:11px}.investment-card .contribution-label{grid-column:1/-1;width:100%;padding-top:14px;font-size:11px}.contribution-chart{gap:9px;padding:10px 2px 23px}.contribution-month>span{font-size:8px}.contribution-stack{max-width:22px}.investment-history{margin-top:20px}footer{font-size:8px;line-height:1.8;align-items:center;padding:24px 0;margin:0}.footer-dot{display:none}.settings-grid{gap:19px}.install-steps{font-size:12px}.password-form label{font-size:12px}.password-form input{font-size:16px}.excel-actions{gap:10px}.excel-actions .button{font-size:11px}.member-row strong{font-size:12px}.member-row span:not(.avatar){font-size:10px}.toast{bottom:calc(83px + env(safe-area-inset-bottom));font-size:11px;width:max-content;max-width:90%}.auth-screen{grid-template-columns:1fr}.auth-story{min-height:310px;padding:28px 27px}.auth-story-content{padding:35px 0 18px}.auth-story h1{font-size:37px;letter-spacing:-1.2px;line-height:1.13;margin:22px 0 18px}.auth-story h1 br:last-child{display:none}.auth-story-content>p{font-size:11px;margin:0}.auth-footnote{display:none}.auth-orbit{height:150px;width:150px;right:-88px;bottom:6px}.auth-orbit>div{inset:31px;font-size:44px;border-radius:20px}.auth-orbit>span{width:32px;height:32px;font-size:20px}.auth-form-wrap{padding:32px 25px 45px}.auth-form{max-width:370px}.auth-form h2{font-size:29px}.auth-form label{font-size:12px}.auth-form input{font-size:16px}.auth-form>p{font-size:12px;margin:13px 0 23px}dialog{padding:23px 19px;border-radius:19px;max-height:92dvh}.dialog-heading h2{font-size:21px}.dialog-intro{font-size:11px}.form-grid{grid-template-columns:1.2fr 1fr;gap:13px 10px}.form-grid label:last-child{grid-column:1/-1}.form-grid input,.form-grid select{font-size:16px;padding:11px 9px}.item-row{grid-template-columns:1fr 93px 25px;gap:8px}.item-description{grid-column:1/3;font-size:16px}.item-category{grid-column:1;font-size:13px;padding:12px 9px}.item-amount{grid-column:2;font-size:16px;padding:10px 8px}.item-remove{grid-column:3;grid-row:1/3;align-self:center;min-width:25px;font-size:21px}.totals-box{padding:15px;gap:12px}.totals-box label{width:147px;font-size:9px}.totals-box input{font-size:16px}.totals-box strong{font-size:21px}.totals-box>div{font-size:9px}.editor-actions{gap:9px}.editor-actions .button{font-size:11px;padding:11px 12px}.finance-fields input,.finance-fields select{font-size:16px}.finance-fields label{font-size:12px}.upload-zone{padding:28px 12px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,color .15s}.view{animation:fade-in .2s ease-out}@keyframes fade-in{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}}

/* Household category settings */
.category-manager{grid-column:1/-1}.managed-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.managed-category{display:flex;align-items:center;gap:10px;min-width:0;border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px;text-align:left;color:var(--ink)}.managed-category:hover{background:#f7f6ff}.managed-category .category-dot{width:10px;height:10px}.managed-category-label{flex:1;min-width:0}.managed-category strong{display:block;font-size:11px;font-weight:550;overflow-wrap:anywhere}.managed-category small{display:block;color:var(--muted);font-size:10px;overflow-wrap:anywhere}.managed-category>span:last-child{color:var(--muted)}#category-editor{width:min(480px,calc(100% - 28px))}#category-editor label{display:grid;gap:6px;margin:16px 0;color:var(--muted);font-size:12px}#category-color{width:90px;height:44px;padding:4px}.category-list{max-height:240px;overflow:auto}@media(max-width:800px){.managed-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.managed-categories{grid-template-columns:1fr}}

/* De Geldlade wordmark */
.brand{gap:10px;letter-spacing:0}.brand-symbol{display:grid;place-items:center;flex:none}.brand-symbol .icon{width:27px;height:27px;stroke-width:1.5}.brand-wordmark{display:flex;flex-direction:column;gap:3px}.brand-wordmark>span{font-size:9px;line-height:1;letter-spacing:2px;text-transform:uppercase;font-weight:650}.brand-wordmark strong{font-size:25px;line-height:1;letter-spacing:-1.1px;font-weight:700}.brand-wordmark .brand-period{margin-left:0}.auth-story .brand-wordmark strong{font-size:29px}@media(max-width:1200px)and(min-width:701px){.sidebar .brand{margin-left:5px;margin-right:0;gap:8px}.sidebar .brand-wordmark strong{font-size:23px}}
