:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#172334;background:#f5f7f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em}h2{font-size:1.22rem}h3{font-size:1rem}p{line-height:1.5;color:#647181}label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;font-weight:650;color:#344255}input,select{border:1px solid #d5dde4;border-radius:9px;padding:11px 12px;background:#fff;color:#172334;min-width:0;outline:none}input:focus,select:focus{border-color:#167a7c;box-shadow:0 0 0 3px #167a7c1c}input[type=file]{padding:9px}.primary,.outline,.quiet{border-radius:9px;padding:10px 15px;font-weight:700;transition:.15s}.primary{border:1px solid #126a6d;background:#126a6d;color:#fff}.primary:hover{background:#0b595b}.outline{border:1px solid #c5d4d9;background:#fff;color:#126a6d}.outline:hover{background:#eef7f6}.quiet{border:0;background:transparent;color:#607384}.quiet:hover{background:#edf2f4}.full{width:100%}.topbar{background:#fff;border-bottom:1px solid #e1e7eb}.topbar-inner{height:66px;max-width:1540px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:center;gap:11px;font-size:1.17rem;font-weight:800;letter-spacing:-.03em}.brand-mark{width:48px;height:48px;border-radius:14px;background:#126a6d;color:#fff;display:grid;place-items:center;font-size:.88rem;letter-spacing:-.04em;box-shadow:0 8px 20px #126a6d30}.brand-mark.small{width:31px;height:31px;border-radius:9px;font-size:.64rem;box-shadow:none}.top-actions{display:flex;align-items:center;gap:20px}.top-caption{font-size:.78rem;color:#8a98a4}.layout{max-width:1540px;margin:auto;display:grid;grid-template-columns:270px minmax(0,1fr);min-height:calc(100vh - 66px)}.sidebar{padding:35px 22px 24px 34px;border-right:1px solid #e2e8ec;background:#fbfcfd}.section-kicker,.eyebrow{font-size:.68rem;letter-spacing:.14em;font-weight:800;color:#8795a2}.company-list{display:flex;flex-direction:column;gap:5px;margin:16px 0 20px}.company-item{border:0;background:transparent;text-align:left;padding:12px;border-radius:10px;color:#344255;font-weight:650;display:flex;flex-direction:column;gap:4px;width:100%}.company-item:hover{background:#ecf3f3}.company-item.active{background:#e1f1ef;color:#0c6265}.company-item small{color:#8697a4;font-weight:500}.side-form{display:grid;gap:12px;margin-top:18px}.side-note{margin-top:35px;border-top:1px solid #e5eaee;padding-top:20px;font-size:.77rem;line-height:1.6;color:#8b98a3}.content{padding:38px 42px 28px;min-width:0}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.page-heading h1{margin:9px 0 4px;font-size:2rem}.page-heading p{margin:0;font-size:.88rem}.year-control{min-width:120px}.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:27px}.limit-card{background:#fff;border:1px solid #e1e7eb;border-radius:15px;padding:23px;box-shadow:0 5px 18px #17304b05}.limit-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.limit-head strong{font-size:.82rem;color:#445669}.pill{font-size:.68rem;font-weight:750;border-radius:100px;background:#e5f2ee;color:#23765e;padding:5px 9px}.pill.warn{background:#fff1dc;color:#a46b16}.pill.danger{background:#ffe6e4;color:#af3c36}.big-number{font-size:1.76rem;letter-spacing:-.04em;font-weight:800;margin:19px 0 5px}.limit-sub{display:flex;justify-content:space-between;color:#8592a0;font-size:.76rem}.bar{height:8px;background:#edf1f3;border-radius:100px;overflow:hidden;margin:19px 0 11px}.bar span{display:block;height:100%;background:#23847c;border-radius:100px}.bar.warn span{background:#d99a3b}.bar.danger span{background:#d35d56}.prior-note{margin-top:14px;color:#ae4d36;font-size:.75rem}.mini-stats{display:flex;gap:24px;margin:23px 0 31px}.mini-stats>div{display:flex;gap:10px;align-items:baseline}.stat-label{color:#8795a2;font-size:.78rem}.mini-stats strong{font-size:.9rem}.tabs{display:flex;gap:24px;border-bottom:1px solid #dce4e8;overflow-x:auto}.tab{border:0;background:transparent;border-bottom:2px solid transparent;color:#708090;font-weight:700;padding:13px 0;white-space:nowrap}.tab.active{color:#126a6d;border-bottom-color:#126a6d}.panel{background:#fff;border:1px solid #e1e7eb;border-radius:0 0 14px 14px;padding:24px;min-height:300px}.panel-heading{display:flex;justify-content:space-between}.panel-heading h2{margin-bottom:6px}.panel-heading p{font-size:.82rem;margin-bottom:22px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.79rem;white-space:nowrap}th{text-align:left;color:#93a0aa;font-weight:750;border-bottom:1px solid #e8ecef;padding:11px 8px}td{border-bottom:1px solid #eff2f4;padding:12px 8px;vertical-align:middle}td.description{max-width:230px;overflow:hidden;text-overflow:ellipsis}.right{text-align:right}.amount{font-variant-numeric:tabular-nums;font-weight:750}.status{font-size:.72rem;border-radius:100px;padding:5px 8px;background:#fff3e0;color:#a26d18}.status.approved{background:#e5f2ee;color:#23765e}.row-select{padding:7px;width:150px}.row-save{padding:7px 10px;font-size:.72rem}.empty-state{border:1px dashed #cbd7dc;border-radius:14px;text-align:center;padding:80px 20px;color:#7b8c98;background:#fff}.manual-block{margin-top:24px;border-top:1px solid #e9eef0;padding-top:20px}.manual-block summary{color:#126a6d;font-size:.82rem;font-weight:750;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:750px;margin:22px 0}.form-grid .wide{grid-column:1/-1}.form-grid button{justify-self:start;align-self:end}.divider{height:1px;background:#e9eef0;margin:28px 0}.preview-table{overflow:auto;background:#f8fafb;border:1px solid #e5ecef;border-radius:9px;padding:12px;font-size:.73rem;max-height:230px}.preview-table table{width:auto}.batch-list,.connection-list,.limits-list{display:grid;gap:9px}.batch-item,.connection-item,.limit-item{border:1px solid #e4e9ed;border-radius:9px;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:.78rem}.batch-item small,.connection-item small{color:#8997a3}.batch-item button{font-size:.72rem;padding:7px 10px}.notice{margin:20px 0;background:#fff3e1;border:1px solid #f1d8ad;border-radius:9px;padding:13px 15px;color:#8b5b17;font-size:.8rem}.toast{position:fixed;bottom:22px;right:22px;background:#183144;color:#fff;box-shadow:0 10px 30px #16293b33;border-radius:10px;padding:13px 18px;z-index:20;font-size:.82rem}.error{font-size:.78rem;color:#b13c36;min-height:16px}footer{font-size:.73rem;color:#9ba8b1;padding:24px 0}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(150deg,#e6f3ef,#f5f7f8 48%,#eaf0f5)}.login-card{width:min(100%,380px);background:#fff;padding:34px;border-radius:18px;box-shadow:0 20px 60px #17304b18;display:grid;gap:17px}.login-card h1{margin:0;font-size:1.9rem}.login-card p{margin:-9px 0 4px;font-size:.84rem}.login-card .primary{margin-top:4px}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #e2e8ec;padding:18px 22px}.company-list{flex-direction:row;overflow:auto}.company-item{min-width:160px}.side-note{display:none}.content{padding:26px 20px}.topbar-inner{padding:0 20px}.card-grid{grid-template-columns:1fr}.top-caption{display:none}}@media(max-width:520px){.page-heading h1{font-size:1.5rem}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.mini-stats{flex-direction:column;gap:6px}.panel{padding:18px}.tabs{gap:17px}}
[hidden]{display:none!important}
.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.connection-actions{display:flex;gap:8px;flex-wrap:wrap}.connection-actions button{font-size:.72rem;padding:7px 10px}.connection-item{align-items:center}
.connection-help{font-size:.75rem;font-weight:400;line-height:1.45;color:#667789}.connection-help strong{font-weight:700;color:#344255}.connection-help a{color:#126a6d}.connection-help code{font-size:.72rem}
.sync-intro{font-size:.79rem;margin:0 0 14px}.connection-item>span:first-child{min-width:0;overflow-wrap:anywhere}.connection-actions{flex-shrink:0}@media(max-width:650px){.connection-item{align-items:flex-start;flex-direction:column}.connection-actions{flex-wrap:wrap}}
