:root{--canvas:#f5f7fc;--panel:#fff;--ink:#18243b;--muted:#8190a7;--line:#e7edf5;--blue:#3662e3;--blue-dark:#244cc1;--mint:#109989;--success:#0d996c;--radius:16px;--shadow:0 6px 26px #1d35520b}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.65 system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b8cdfd;outline-offset:2px}.hidden{display:none!important}.app-shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{background:white;border-right:1px solid var(--line);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:25px 15px 18px}.brand{display:flex;align-items:center;gap:11px;padding:1px 12px 30px}.brand-icon,.auth-badge{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:white;font-size:24px;font-weight:800;background:linear-gradient(145deg,#2354d4,#7896fc);box-shadow:0 6px 14px #4a76ed33}.brand strong{display:block;font-size:20px;color:#182b51;line-height:1.1}.brand small{font-size:10px;letter-spacing:.6px;font-weight:750;color:#9ba6b7}.nav-caption{padding:0 13px;color:#a5adbb;font-size:10px;font-weight:800;letter-spacing:1.1px;margin:4px 0 9px}.nav-caption-nested{margin-top:24px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav{border:none;background:transparent;width:100%;text-align:left;color:#64758f;font-weight:650;border-radius:11px;padding:12px 13px;display:flex;align-items:center;gap:11px}.nav:hover{background:#f4f7ff}.nav.active{background:#eaf0ff;color:#2958d7}.navsymbol{font-size:19px;font-weight:600;width:22px;text-align:center}.sidebar-info{margin-top:auto;border-top:1px solid var(--line);padding:18px 12px 5px;display:grid;gap:7px;color:#8b98ab;font-size:11px}.sidebar-info b{color:#59677e}.pill{background:#f0f2f6;color:#6b7b95;border-radius:20px;padding:4px 10px;width:max-content;font-size:10px;font-weight:800}.pill.ok{background:#e2f8ee;color:#08764f}.workspace{min-width:0;max-width:1700px;width:100%;padding:25px 39px 60px;margin:0 auto}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.topbar h1{font-size:26px;letter-spacing:-.65px;margin:1px 0 0}.topbar p,.section-title p{font-size:12px;color:var(--muted);margin:2px 0}.crumb{font-size:11px;color:#9eaabd;font-weight:700}.crumb span:last-child{color:#5274ad}.top-actions{display:flex;gap:9px;align-items:center}.company-label{color:#7886a1;font-size:11px;font-weight:700}.top-actions select{border:1px solid #dfe6f0;border-radius:11px;background:white;min-height:43px;min-width:220px;max-width:290px;color:#334661;padding:8px 12px}.btn{border:1px solid transparent;border-radius:10px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 15px;font-size:12.5px;font-weight:750;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--blue);color:white;box-shadow:0 5px 13px #3662e326}.btn-primary:hover{background:var(--blue-dark)}.btn-light{border-color:#e0e6f0;background:white;color:#516a91}.btn-outline{background:#f5f8ff;border-color:#d5e2fb;color:#4266b4}.demo-alert{background:#fff9e8;border:1px solid #ffebc7;border-radius:12px;color:#8b692b;padding:12px 16px;display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;font-size:11.5px}.alert-symbol{background:#f5e0b3;border-radius:50%;width:22px;height:22px;display:grid;place-items:center;font-weight:800;flex:none}.demo-alert strong{display:block;font-size:12px}.demo-alert span:last-child{display:block}.toast{border-radius:11px;background:#eaf8f0;color:#087858;padding:12px 16px;margin-bottom:16px;font-size:12px;display:none}.toast.show{display:block}.toast.error{background:#fff1ee;color:#bb3b45}.hero{border-radius:17px;background:linear-gradient(105deg,#e3ecff,#f6faff 63%,#e1f7f5);border:1px solid #e0eafa;padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:19px}.hero h2{font-size:22px;margin:4px 0 0;color:#223d73;letter-spacing:-.4px}.hero p{color:#7485a1;margin:3px 0;font-size:12px}.kicker{font-size:11px;color:#4671cb;letter-spacing:.8px;font-weight:850}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric{background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:15px;padding:18px 19px;position:relative}.metric span{display:block;font-size:12px;color:#7887a0}.metric strong{display:block;margin-top:10px;font-size:27px;font-weight:780;letter-spacing:-1px;line-height:1.45;word-break:break-word}.metric small{color:#a6afbf;font-size:10.5px}.metric em{position:absolute;top:14px;right:16px;background:#f0f4ff;border-radius:9px;width:31px;height:31px;display:grid;place-items:center;font-style:normal;font-size:18px;color:#5072c2}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:start}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:22px 24px;margin-bottom:18px;min-width:0}.panel h3{font-size:15px;margin:0 0 13px;letter-spacing:-.2px}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.panel-header h3{margin:0}.link-button{border:0;background:none;color:#3e66cc;font-size:12px;font-weight:750}.list-row{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid #edf1f6;align-items:center}.list-row:first-child{border-top:0}.list-row strong{font-size:12.5px}.list-row small{display:block;color:#9aa6b8;font-size:11px}.list-row .amount{font-weight:750;font-variant-numeric:tabular-nums;color:#34558e}.empty{text-align:center;color:#9ba6b5;padding:25px 12px!important}.roadmap{display:grid;gap:17px;font-size:12px;color:#536784;padding-top:5px}.roadmap>div{display:flex;align-items:flex-start;gap:12px}.check{background:#e7f8ef;border-radius:50%;height:24px;width:24px;display:grid;place-items:center;color:#0e9b73;font-weight:800}.future{background:#f3f6fa;border-radius:50%;height:24px;width:24px;display:grid;place-items:center;color:#95a0b4;font-weight:800}.tag{font-size:10px;background:#eef3ff;color:#5875bd;font-weight:800;padding:5px 11px;border-radius:20px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:1px 0 18px}.section-title h2{margin:0;font-size:19px}.company-layout{grid-template-columns:1.2fr .85fr}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-group{display:grid;gap:6px;margin-bottom:15px}.form-group.wide{grid-column:1/-1}.form-group label{font-size:12px;color:#5a6d87;font-weight:700}input,select{background:white;color:var(--ink);border:1px solid #dce4ef;border-radius:10px;min-height:43px;padding:9px 11px;min-width:0;width:100%}input::placeholder{color:#afb8c8}.hint{color:#8996aa;font-size:11px;line-height:1.8}.table-scroll{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}th{text-align:left;color:#73839b;font-weight:750;background:#f7f9fd;padding:12px 13px;border-bottom:1px solid #e7edf5}td{padding:12px 13px;border-bottom:1px solid #edf2f6}tfoot th{background:#eef4ff;color:#2c54ab}tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.journal-form{margin-bottom:18px}.journal-input-table select{min-width:205px}.journal-input-table input{min-width:120px;width:130px;text-align:right}.journal-input-table td:last-child{text-align:center}.mini-delete{border:0;background:#fff3f0;color:#bc4f56;border-radius:8px;padding:7px 10px}.journal-toolbar,.form-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:15px;flex-wrap:wrap}.journal-toolbar span{font-size:13px;font-weight:760;color:#35518c}.form-actions{justify-content:flex-start}.auth-overlay{position:fixed;inset:0;z-index:99;background:#12274b83;display:grid;place-items:center;padding:20px;backdrop-filter:blur(3px)}.auth-overlay.hide{display:none}.auth-card{width:min(100%,445px);padding:33px;border-radius:21px;background:white;box-shadow:0 22px 85px #04132a3d}.auth-badge{margin:auto auto 16px}.auth-card h2{text-align:center;font-size:26px;color:#1d356b;margin:3px 0 0}.auth-card h2 span{color:#6981bb;font-size:13px}.auth-card>p{text-align:center;margin:4px 0 20px;color:#7f8fa7;font-size:12.5px}.auth-card label{font-size:12px;font-weight:700;color:#52627c;display:block;margin-bottom:6px}.auth-card button{width:100%;margin-top:12px}.auth-alert{background:#fff6e8;border:1px solid #f4e3cb;border-radius:11px;padding:11px 13px;font-size:11.5px;color:#906b32;margin-bottom:18px}.auth-error{color:#c64048;font-size:11px;min-height:16px}.auth-card small{color:#8e9ab0;font-size:11px}
@media(max-width:1080px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace{padding:24px 23px 45px}.two-col{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.top-actions select{flex:1;max-width:none}}
@media(max-width:700px){.app-shell{display:block}.sidebar{position:relative;height:auto;padding:12px 15px 0}.brand{padding:5px 4px 10px}.brand-icon{width:34px;height:34px;font-size:20px}.brand strong{font-size:18px}.brand small{font-size:9px}.sidebar nav{display:flex;flex-direction:row;overflow:auto;padding:3px 0 11px;gap:5px}.sidebar nav .nav-caption,.sidebar>.nav-caption,.sidebar-info{display:none}.nav{white-space:nowrap;width:auto;font-size:11px;padding:8px 12px}.navsymbol{display:none}.workspace{padding:20px 15px 45px}.topbar h1{font-size:23px}.top-actions{flex-wrap:wrap}.company-label{flex-basis:100%}.top-actions select{min-width:0;flex:1}.hero{padding:20px;display:block}.hero h2{font-size:19px}.hero .btn{margin-top:12px}.metrics{gap:9px}.metric{padding:14px}.metric strong{font-size:21px}.metric em{display:none}.panel{padding:18px 15px}.form-grid{grid-template-columns:1fr}.form-group.wide{grid-column:auto}.section-title{align-items:flex-start;flex-direction:column}.auth-card{padding:26px}}
