:root{--ink:#20202d;--muted:#85818f;--purple:#6c54cf;--purple-soft:#f4f1ff;--line:#e7e5ec;--bg:#f7f8fc;--green:#2d9b72;--sidebar:#171520}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:25px 18px 16px;background:var(--sidebar);color:#fff}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 42px;color:#fff;text-decoration:none;font-size:19px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:linear-gradient(145deg,#8066e7,#5b43bd);font-size:21px}.nav-label{margin:0 12px 12px;color:#797583;font-size:10px;font-weight:800;letter-spacing:.12em}.admin-label{margin-top:29px}nav{display:grid;gap:4px}.nav-link{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:9px;color:#aaa6b3;text-decoration:none;font-weight:600}.nav-link svg{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-link em{margin-left:auto;min-width:20px;padding:3px 6px;border-radius:99px;background:#37343e;font-style:normal;font-size:10px;text-align:center}.nav-link:hover{color:#fff;background:#262330}.nav-link.active{color:#fff;background:var(--purple)}.sidebar-bottom{margin-top:auto}.security{display:flex;align-items:center;gap:11px;padding:14px;border:1px solid #3b3747;border-radius:11px}.security>span{font-size:22px}.security div{display:grid;gap:3px}.security b{font-size:11px}.security small{color:#898592;font-size:10px}.security i{margin-left:auto;color:#62d29f;font-style:normal}.profile{display:flex;align-items:center;gap:10px;margin-top:18px;padding:0 8px}.profile>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#494453;font-size:11px;font-weight:800}.profile div{display:grid;gap:2px}.profile b{font-size:11px}.profile small{color:#8d8996;font-size:10px}.logout{margin:8px 0 0 51px;padding:0;border:0;background:none;color:#8d8996;font-size:10px;cursor:pointer}main{min-width:0}.topbar{position:sticky;z-index:20;top:0;height:74px;display:flex;align-items:center;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:#fff}.company{display:flex;align-items:center;gap:10px;min-width:250px}.company>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #dfd9f0;border-radius:10px;color:var(--purple);background:#f7f4ff;font-size:11px;font-weight:800}.company div{display:grid;gap:3px}.company b{font-size:12px}.company small{color:var(--muted);font-size:9px}.search{width:min(450px,42vw);height:38px;display:flex;align-items:center;gap:8px;margin:auto;padding:0 14px;border:1px solid #dddbe3;border-radius:10px;background:#fafafd}.search span{font-size:22px;color:#9d99a7}.search input{width:100%;border:0;outline:0;background:none;color:var(--ink)}.icon-btn,.primary{height:38px;border:0;border-radius:9px;cursor:pointer}.icon-btn{position:relative;width:40px;border:1px solid #e2dfe7;background:#fff}.icon-btn i{position:absolute;top:8px;right:9px;width:5px;height:5px;border-radius:50%;background:#ef6878}.primary{padding:0 17px;color:#fff;background:var(--purple);font-weight:750;box-shadow:0 4px 10px #6c54cf26}.mobile-menu{display:none;border:0;background:none;font-size:20px}.workspace{max-width:1280px;margin:auto;padding:38px 40px 70px}.view{display:none}.view.active{display:block}.page-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:27px}.eyebrow{margin:0 0 13px!important;color:#868290!important;font-size:10px!important;font-weight:800;letter-spacing:.1em}.page-head h1{margin:0 0 7px;font-size:26px;letter-spacing:-.035em}.page-head p{margin:0;color:var(--muted);font-size:13px}.year{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px}.year select,.panel-title select{height:38px;padding:0 28px 0 12px;border:1px solid #dedce5;border-radius:9px;background:#fff;color:#575361}.status-card{width:100%;display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:15px 18px;border:1px solid #dcd3ff;border-radius:12px;background:var(--purple-soft);text-align:left;cursor:pointer}.status-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:10px;background:#fff;color:var(--purple);font-size:22px}.status-card div{display:grid;gap:7px}.status-card b{font-size:12px}.status-card small{color:#797486}.status-card strong{margin-left:auto;color:var(--purple);font-size:10px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metrics article,.panel{position:relative;border:1px solid var(--line);border-radius:12px;background:#fff}.metrics article{display:grid;gap:10px;padding:18px}.metrics article>span{color:var(--muted);font-size:10px}.metrics article>b{margin-top:5px;font-size:22px;letter-spacing:-.035em}.metrics article>small{color:#807c89;font-size:9px}.metrics small.green,.green{color:var(--green)}.metrics small em{color:#8f8b97;font-style:normal}.metric-icon{position:absolute;top:17px;right:17px;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;font-style:normal}.purple{color:#6e54d5;background:#eee9ff}.green-bg{color:#2e9872;background:#e8f8f2}.blue{color:#3e86cc;background:#ebf4ff}.orange{color:#c77c23;background:#fff4e3}.dashboard-grid{display:grid;grid-template-columns:2.05fr 1fr;gap:16px;margin-top:16px}.panel{padding:20px}.panel-title{display:flex;align-items:start;justify-content:space-between}.panel-title h2{margin:0 0 7px;font-size:14px}.panel-title p{margin:0;color:var(--muted);font-size:10px}.panel-title button{border:0;background:none;color:var(--purple);font-size:10px;font-weight:700;cursor:pointer}.liquidity>p{margin:23px 0 7px;color:var(--muted);font-size:10px}.liquidity>strong{font-size:22px}.liquidity>strong small{margin-left:10px;color:var(--green);font-size:10px}.chart{width:100%;height:210px;margin-top:5px;overflow:visible}.gridline{stroke:#efedf3;stroke-width:1}.area{fill:url(#fill)}.line{fill:none;stroke:var(--purple);stroke-width:3}.months{display:flex;justify-content:space-between;color:#9a96a2;font-size:9px}.tasks>button{width:100%;display:flex;align-items:center;gap:12px;padding:15px 0;border:0;border-bottom:1px solid #eceaf0;background:none;text-align:left;cursor:pointer}.tasks>button>span{display:grid;gap:4px;flex:1}.tasks button b{font-size:11px}.tasks button small{color:var(--muted);font-size:9px}.dot{width:16px;height:16px;border:5px solid;border-radius:50%}.amber{border-color:#f8d38a}.blue-dot{border-color:#9fd0f8}.red{border-color:#f5acb6}.tasks .outline{display:block;margin-top:14px;padding:11px;border:1px solid #ddd4fb;border-radius:8px;color:var(--purple);text-align:center;font-size:10px;font-weight:700}.flow{margin-top:16px}.connected{color:var(--green);font-size:10px}.flow-items{display:grid;grid-template-columns:repeat(4,1fr);margin-top:19px}.flow-items div{display:grid;gap:6px;padding:8px 20px;border-right:1px solid var(--line)}.flow-items div:last-child{border:0}.flow-items i{color:var(--green);font-style:normal}.flow-items span{color:var(--muted);font-size:10px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;color:var(--muted);font-size:11px}.table-panel{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left}th{color:var(--muted);font-size:10px}td{font-size:11px}td small{display:block;margin-top:4px;color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:40px}.pill{padding:5px 8px;border-radius:99px;color:var(--green);background:#eaf8f2;font-size:9px}.compact{margin-top:18px}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.action-card>i{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--purple-soft);color:var(--purple);font-style:normal;font-weight:800}.action-card p{min-height:40px;color:var(--muted)}.action-card button,.report-list button,.settings button{cursor:pointer}.action-card button{border:0;background:none;color:var(--purple);font-weight:700}.bank-card{display:flex;align-items:center;gap:22px}.bank-card>div{display:flex;align-items:center;gap:13px}.bank-card>div div{display:grid;gap:4px}.bank-card h2,.bank-card p{margin:0}.bank-card p{color:var(--muted);font-size:10px}.bank-logo{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;color:#fff;background:#32313a}.bank-card>strong{margin-left:auto;font-size:20px}.report-list,.settings{display:grid;gap:10px}.report-list button,.settings button{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left}.report-list button>i{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:var(--purple-soft);color:var(--purple);font-style:normal}.report-list button>span,.settings button>span{display:grid;gap:5px;flex:1}.report-list small,.settings small{color:var(--muted)}dialog{width:min(510px,calc(100% - 30px));padding:0;border:0;border-radius:16px;box-shadow:0 30px 80px #1a152a66}dialog::backdrop{background:#14111db3}dialog form{display:grid;gap:18px;padding:25px}.modal-head{display:flex;justify-content:space-between}.modal-head h2{margin:0 0 6px}.modal-head p{margin:0;color:var(--muted)}.modal-head button{border:0;background:none;font-size:25px;cursor:pointer}.dropzone{display:grid;place-items:center;gap:7px;padding:40px 20px;border:1px dashed #bcb4d7;border-radius:12px;background:#faf9ff;text-align:center;cursor:pointer}.dropzone>span{font-size:25px;color:var(--purple)}.dropzone small{color:var(--muted)}.dropzone input{max-width:100%;margin-top:10px}.toast{position:fixed;right:25px;bottom:25px;z-index:50;padding:13px 18px;border-radius:9px;color:#fff;background:#23202e;box-shadow:0 10px 30px #0003;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 0,#332b54,#171521 52%)}.login-card{width:min(430px,100%);padding:38px;border:1px solid #ffffff17;border-radius:20px;background:#fff;box-shadow:0 25px 70px #09070f66}.logo{display:grid;place-items:center;width:45px;height:45px;border-radius:13px;color:#fff;background:var(--purple);font-size:21px}.login-card h1{margin:8px 0;font-size:29px}.intro{color:var(--muted)}.login-card form{display:grid;gap:16px;margin-top:25px}.login-card label{display:grid;gap:7px;font-size:12px;font-weight:700}.login-card input{width:100%;padding:12px;border:1px solid #d9d6e0;border-radius:9px}.login-card button{padding:13px;border:0;border-radius:9px;color:#fff;background:var(--purple);font-weight:700}.error{padding:11px;border-radius:8px;color:#9d2c3b;background:#fdecef;font-size:12px}.secure{margin:22px 0 0;text-align:center;color:#9a96a2;font-size:11px}
.secondary{height:38px;padding:0 16px;border:1px solid #d9d5e4;border-radius:9px;color:var(--purple);background:#fff;font-weight:700;cursor:pointer}.section-title{margin:28px 0 13px;font-size:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label,dialog form>label{display:grid;gap:7px;color:#5f5a68;font-size:11px;font-weight:700}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,dialog form>label>input{width:100%;height:40px;padding:0 11px;border:1px solid #dcd9e3;border-radius:8px;background:#fff}.period-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.period{display:grid;gap:7px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.period span{color:var(--green);font-size:9px}.period select{max-width:100%;height:31px;border:1px solid var(--line);border-radius:7px}.period button{border:0;color:var(--purple);background:none;font-size:10px;font-weight:700;cursor:pointer}.period.locked{border-color:#efc6cc}.period.locked span{color:#b64f60}.report-list a,.settings a{display:flex;align-items:center;gap:15px;padding:18px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:#fff;text-align:left;text-decoration:none}.report-list a>i{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:var(--purple-soft);color:var(--purple);font-style:normal}.report-list a>span,.settings a>span{display:grid;gap:5px;flex:1}.report-list a small,.settings a small{color:var(--muted)}
.empty-state{min-height:205px;display:grid;place-content:center;gap:8px;text-align:center;color:var(--muted)}.empty-state b{color:var(--ink)}
.development-notice{margin:0 0 24px;padding:14px 18px;border:1px solid #d8cffa;border-radius:12px;background:#f1edfc;color:#514475;line-height:1.7;font-size:13px}.development-notice a{color:#5840ae;font-weight:700}.report-workspace{max-width:1500px;margin:auto}.report-filters{display:flex;flex-wrap:wrap;align-items:end;gap:18px;margin-bottom:22px}.report-filters label{display:grid;gap:7px;font-size:13px;font-weight:600}.report-filters input,.report-filters select,.year-form input{padding:10px;border:1px solid var(--line);border-radius:8px;background:white;max-width:300px;font:inherit}.year-form{display:flex;gap:8px;align-items:center}.year-form input{width:90px}.year-form label{display:flex;gap:8px;align-items:center}.amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}tfoot th{padding:16px;border-top:2px solid var(--line)}.release-list{padding-left:22px;line-height:1.8}.release-list li{margin:8px 0}.row-actions{flex-wrap:wrap}.row-actions form label{display:inline-grid;gap:5px;margin:4px;font-size:11px}.row-actions form input{max-width:150px;border:1px solid var(--line);border-radius:6px;padding:7px}.report-workspace>.panel{margin-bottom:20px}.report-workspace>p{line-height:1.65}.report-workspace .toolbar{flex-wrap:wrap;gap:12px}@media(max-width:760px){.page-head .year-form{display:flex;flex-wrap:wrap}.page-head{gap:15px;flex-wrap:wrap}.report-filters{display:grid;grid-template-columns:1fr}.report-filters select,.report-filters input{max-width:100%;width:100%}}
.inline-form{display:flex;gap:6px;align-items:center}.inline-form select{max-width:190px;height:30px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:10px}.inline-form button{height:30px;border:0;border-radius:6px;color:#fff;background:var(--purple);font-size:10px;cursor:pointer}.table-panel a{color:var(--purple);text-decoration:none}
.link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.row-actions{display:flex;gap:6px}.row-actions button,.table-panel form>button{padding:7px 10px;border:0;border-radius:6px;color:#fff;background:var(--purple);font-size:10px;cursor:pointer}.inline-form input{width:95px;height:30px;padding:0 7px;border:1px solid var(--line);border-radius:6px}.cards-3>button{text-align:left;cursor:pointer}
.notice{margin-bottom:15px;padding:12px 15px;border:1px solid #bce2d2;border-radius:9px;color:#267a5d;background:#effaf5}.app-config{margin-bottom:16px}.app-config>p{color:var(--muted)}.app-config code,.integration-explainer code{color:#514394}.safe-note{margin-bottom:0}.integration-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.integration-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.integration-card dl div{padding:11px;border-radius:8px;background:var(--bg)}.integration-card dt{color:var(--muted);font-size:10px}.integration-card dd{margin:5px 0 0;font-weight:700}.status-badge{padding:6px 9px;border-radius:99px;background:#efedf3;color:#6e6977;font-size:9px;font-weight:800}.status-badge.connected{color:#247c5c;background:#e8f8f1}.status-badge.ready{color:#6a52ca;background:#f0ecff}.status-badge.error{color:#a73a4b;background:#fdecef}.connection-actions{display:grid;gap:8px;margin-top:14px}.connection-actions form{display:flex;gap:8px}.connection-actions small{color:var(--muted)}.connection-actions button:disabled{cursor:not-allowed;opacity:.55}.danger-button{height:38px;padding:0 16px;border:1px solid #efbdc5;border-radius:9px;color:#a43447;background:#fff;cursor:pointer}.integration-explainer{margin-top:16px}.integration-explainer li{margin:8px 0}.integration-explainer p{color:var(--muted)}
@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.cards-3{grid-template-columns:1fr}.company{min-width:auto}.company div{display:none}.period-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:40;left:-270px;width:255px;transition:.2s}.sidebar.open{left:0}.mobile-menu{display:block}.topbar{padding:0 14px}.search{display:none}.workspace{padding:25px 15px}.page-head{align-items:start}.year{display:none}.metrics{grid-template-columns:1fr 1fr}.flow-items{grid-template-columns:1fr 1fr}.status-card strong{display:none}.period-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.metrics{grid-template-columns:1fr}.topbar .icon-btn{display:none}.primary{padding:0 11px}.flow-items{grid-template-columns:1fr}.page-head h1{font-size:23px}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.period-grid{grid-template-columns:1fr 1fr}}
