*{box-sizing:border-box}body{margin:0;background:#f3f5f9;color:#17243b;font:16px/1.5 'Segoe UI',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button,.btn{border:0;border-radius:9px;padding:11px 17px;background:#2158d5;color:white;font-weight:600}button:hover{filter:brightness(.94)}.secondary{background:#eaf0fb;color:#224b98}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}aside{background:#10223f;color:#c1cee2;padding:30px 20px;display:flex;flex-direction:column;gap:32px}.brand{font-size:23px;color:white;font-weight:750;letter-spacing:-.6px}.brand span{color:#72a2ff}.brand small{display:block;font-size:12px;letter-spacing:2px;margin-top:5px;color:#91a5c5}nav{display:grid;gap:8px}nav button{text-align:left;background:transparent;color:#b8c8e1;font-weight:500}nav button.active{background:#29466f;color:white}.account{margin-top:auto;font-size:14px;border-top:1px solid #30435e;padding-top:20px}.account strong{color:white;display:block}main{min-width:0;padding:28px 38px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;font-size:14px;color:#63718a}.demo{padding:7px 12px;border-radius:6px;background:#fff2d9;color:#875d12}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px}h1{font-size:30px;letter-spacing:-1px;margin:0}h2{font-size:18px;margin:0}p{color:#68758b;margin:5px 0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px}.card{border:1px solid #e1e6f0;background:white;border-radius:13px;padding:22px}.card small{color:#64738a;font-size:14px}.card strong{display:block;font-size:27px;letter-spacing:-.6px;margin:12px 0 3px}.card.total{background:#174bb8;color:white;border:0}.card.total small,.card.total p{color:#d5e3ff}.panel{background:white;border:1px solid #e0e6ee;border-radius:13px;overflow:hidden;margin-bottom:22px}.panel-head{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #edf0f5}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-bottom:20px}input,select{padding:10px 12px;border:1px solid #d5dce7;border-radius:8px;background:white;color:#24344c;max-width:100%}label{display:grid;gap:6px;font-size:14px;color:#56647c}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:14px}th{text-align:left;background:#f8fafd;color:#738097;font-weight:600;padding:14px 23px}td{padding:16px 23px;border-top:1px solid #eef1f6}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td strong{font-weight:650}.pill{padding:5px 10px;border-radius:20px;font-size:12px;background:#e7f5ee;color:#26784a}.pill.wait{background:#fff3dc;color:#94630f}.foot{padding:16px 24px;color:#78859a;font-size:13px;background:#fafbfd}.notice{padding:16px 20px;border:1px solid #dde7fa;border-radius:10px;color:#375781;background:#eaf1ff;margin-bottom:22px}.form{padding:24px;display:grid;gap:18px;max-width:620px}.form input,.form select{width:100%}.sum{display:flex;justify-content:space-between;background:#edf3ff;padding:18px;border-radius:8px;color:#1647ae;font-size:20px}.actions{display:flex;gap:10px;justify-content:flex-end}dialog{border:0;border-radius:16px;padding:26px;width:min(480px,94vw);box-shadow:0 20px 100px #15213c55}dialog::backdrop{background:#10223f88}dialog .form{padding:18px 0 0}#toast{position:fixed;bottom:24px;right:24px;background:#143859;color:white;border-radius:10px;padding:14px 20px;display:none;z-index:10}.login{max-width:430px;margin:10vh auto;padding:30px;background:white;border-radius:16px}.muted{font-size:13px;color:#8894a7}.meter{height:6px;border-radius:6px;background:#edf1f7;overflow:hidden;width:110px;margin-top:5px}.meter i{display:block;height:100%;background:#4276df}.mobile-brand{display:none}@media(max-width:1100px){main{padding:24px}.cards{grid-template-columns:repeat(2,1fr)}.shell{grid-template-columns:190px 1fr}aside{padding:24px 12px}.card strong{font-size:25px}}@media(max-width:700px){.shell{display:block}aside{padding:14px;gap:14px}.brand{font-size:20px}.brand small,.account{display:none}nav{display:flex;overflow:auto;gap:4px}nav button{white-space:nowrap;font-size:14px;padding:9px 12px}main{padding:20px 14px}.top{margin-bottom:18px;gap:8px;flex-wrap:wrap}.heading{align-items:flex-start}h1{font-size:25px}.heading button{font-size:14px;padding:10px}.cards{gap:10px}.card{padding:15px}.card strong{font-size:22px}.card small{font-size:13px}.panel-head{padding:16px;flex-wrap:wrap}td,th{padding:13px 16px}.filters>*{flex:1;min-width:135px}.demo{font-size:12px}}@media print{aside,.top,.heading button,.filters,.actions,.demo{display:none!important}.shell{display:block}main{padding:0}.cards{grid-template-columns:repeat(4,1fr)}.panel{overflow:visible}.table-wrap{overflow:visible}table{font-size:11px}td,th{padding:8px}.card strong{font-size:20px}}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.5px;color:#6080af;display:block;margin-bottom:6px}.closing-meta{display:flex;align-items:end;gap:16px;margin-bottom:24px}.closing-meta label:first-child{min-width:230px}.closing-meta .pill{margin-bottom:10px}.closing-layout{display:grid;grid-template-columns:minmax(0,1fr) 325px;gap:22px;align-items:start}.entry-panel{min-height:440px}.entry-tabs{display:flex;gap:0;overflow:auto;background:#fafbfd;border-bottom:1px solid #e1e7f0;padding:8px}.entry-tabs button{flex:1;min-width:76px;white-space:nowrap;background:transparent;color:#718097;font-size:14px;padding:12px 10px;border-radius:7px}.entry-tabs button span{display:block;font-size:12px;color:#95a6c0;margin-bottom:4px}.entry-tabs button.chosen{background:#e7efff;color:#174bb8}.entry-tabs button.chosen span{color:#4776c9}.amount-grid{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:22px}.amount-label{font-size:15px;color:#34445d}.amount-input{display:flex;align-items:center;border:1px solid #d8e0ec;border-radius:9px;overflow:hidden;background:#fafbfd}.amount-input input{width:100%;min-width:0;border:0;background:white;font-size:19px;font-weight:600;border-radius:0;padding:14px}.amount-input span{padding:0 13px;color:#8794a9;font-size:14px}.amount-label small{font-size:12px;color:#7b8ba3}.cash-field{grid-column:1/-1;border-top:1px solid #e4eaf4;padding-top:20px}.closing-summary{background:white;border:1px solid #dce5f1;border-radius:13px;padding:24px;color:#263750;gap:17px;position:sticky;top:20px}.summary-total strong{display:block;font-size:30px;color:#174bb8;letter-spacing:-1px}.summary-total small{font-size:14px;color:#73819a}.summary-lines{display:grid;gap:11px;border-top:1px solid #e6ecf4;padding-top:18px;font-size:13px}.summary-lines>div{display:flex;justify-content:space-between;gap:8px}.summary-lines b{white-space:nowrap}.difference{padding:14px;background:#ecf5f1;border-radius:9px;color:#267455}.difference span{display:block;font-size:13px}.difference strong{font-size:25px}.difference.negative{background:#fff0ed;color:#b24d39}.explanation{margin-top:16px;font-size:13px;line-height:1.7}.expense-list{padding:20px}.expense-row{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;padding:16px;border:1px solid #e1e7f0;border-radius:9px;margin-bottom:14px;position:relative}.expense-row input,.expense-row select{width:100%;min-width:0}.remove{background:#faeae7;color:#ad4a40;position:absolute;right:5px;top:-12px;padding:1px 8px}.empty-box{padding:40px 15px;text-align:center;color:#566b8b}.week-row{background:#eef3fc;font-weight:650}tfoot{background:#e1ebff;font-weight:700}.report-tabs button{min-width:115px}.closing-summary .muted{font-size:12px}.report-tabs{padding:10px}.closing-summary label{width:100%}@media(max-width:1200px){.closing-layout{grid-template-columns:minmax(0,1fr) 285px}.closing-summary{padding:18px}.amount-grid{padding:18px;gap:15px}.entry-tabs button{min-width:85px}.closing-layout .panel-head{padding:18px;flex-wrap:wrap}}@media(max-width:950px){.closing-layout{grid-template-columns:1fr}.closing-summary{position:static}.summary-lines{grid-template-columns:1fr 1fr;gap:16px}.closing-summary{display:grid;grid-template-columns:1fr 1fr}.closing-summary .summary-lines{grid-column:1/-1}.closing-summary>.eyebrow,.closing-summary>.muted{grid-column:1/-1}}@media(max-width:600px){.closing-meta{flex-wrap:wrap}.closing-meta label:first-child{min-width:0;flex:1}.closing-meta label{flex:1}.amount-grid{grid-template-columns:1fr}.closing-summary{display:flex}.summary-lines{display:grid;grid-template-columns:1fr}.expense-row{grid-template-columns:1fr}.closing-summary{padding:20px}.closing-meta .pill{margin:0}.heading .secondary{white-space:nowrap}.entry-tabs{padding:6px}.closing-summary .eyebrow{display:block}.closing-meta label{min-width:130px}}@media print{.entry-tabs{display:none}.week-row,tfoot{print-color-adjust:exact}.table-wrap table{font-size:9px}.table-wrap td,.table-wrap th{padding:6px 4px}.cards .card{padding:8px}.cards .card strong{font-size:17px}}
.auth-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:white}.auth-story{padding:48px 64px;background:#102746;color:white;display:flex;flex-direction:column;justify-content:space-between;gap:60px;min-height:100vh}.auth-story h1{font-size:48px;line-height:1.18;letter-spacing:-1.7px;margin:18px 0 22px}.auth-story p{color:#aebed6;max-width:440px;font-size:18px;line-height:1.7}.auth-overline{letter-spacing:2px;color:#78a8ff;font-size:12px;font-weight:700}.auth-features{display:grid;gap:20px;margin-top:42px}.auth-features span{color:#7094c8;font-size:14px;display:flex;gap:20px;align-items:center}.auth-features b{font-size:16px;color:#d6e3f7;font-weight:500}.auth-story>small{color:#778ead}.auth-form-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:48px 35px;position:relative}.auth-box{width:100%;max-width:395px}.auth-lock{display:inline-grid;place-items:center;width:48px;height:48px;background:#eaf1ff;color:#2457b9;font-size:25px;border-radius:12px;margin-bottom:25px}.auth-box h2{font-size:28px;letter-spacing:-.8px}.auth-box>p{font-size:15px;margin:9px 0 25px}.auth-form{display:grid;gap:20px}.auth-form label{font-size:15px;color:#334560}.auth-form input{width:100%;padding:13px 14px}.password-wrap{position:relative}.password-wrap input{padding-right:75px}.password-toggle{position:absolute;right:4px;top:5px;background:transparent;color:#526d92;font-size:13px;padding:9px}.auth-form>button{padding:14px}.auth-form button:disabled{opacity:.6;cursor:wait}.auth-help{font-size:13px!important;line-height:1.6}.demo-login{border:1px solid #dce5f5;background:#f6f9ff;padding:17px;border-radius:10px;font-size:14px}.demo-login>div{display:flex;gap:8px;margin:12px 0}.demo-login button{font-size:13px;padding:8px 10px}.demo-login small{font-size:12px;color:#687c9a;display:block}.auth-form-panel footer{font-size:12px;color:#94a1b4;margin-top:50px}#login-error:empty{display:none}#login-error{font-size:14px;color:#a63832;padding:10px;background:#fff0ef;border-radius:7px}.top-actions{display:flex;align-items:center;gap:12px}@media(max-width:950px){.auth-story{padding:40px 32px}.auth-story h1{font-size:36px}.auth-form-panel{padding:35px 25px}}@media(max-width:700px){.auth-page{display:block}.auth-story{min-height:0;padding:22px;gap:0}.auth-story>div:not(.brand),.auth-story>small{display:none}.auth-form-panel{padding:30px 22px}.auth-lock{display:none}.auth-box h2{font-size:25px}.auth-form-panel footer{margin-top:28px}.top-actions{gap:8px;flex-wrap:wrap}}
