:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#182230;background:#f4f6f8;font-synthesis:none;text-rendering:optimizeLegibility;--navy: #17365d;--blue: #2e74b5;--blue-2: #1f4d78;--ink: #182230;--muted: #667085;--line: #e4e7ec;--surface: #ffffff;--soft: #f7f9fc;--green: #157347;--amber: #b54708;--red: #b42318}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}h1,h2,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.08;letter-spacing:-.035em}h2{font-size:1.2rem;letter-spacing:-.015em}small,.muted{color:var(--muted)}.eyebrow{color:var(--blue);font-weight:800;font-size:.72rem;letter-spacing:.12em;margin-bottom:.65rem}.brand{display:flex;align-items:center;gap:14px;color:var(--navy)}.brand-mark,.company-logo{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff;font-weight:800;letter-spacing:.04em;box-shadow:0 10px 28px #17365d2e}.brand strong,.brand span{display:block}.brand strong{font-size:1.05rem}.brand span{color:#667085;font-size:.78rem;margin-top:2px}.brand-mark{object-fit:cover}.brand-compact .brand-mark{width:42px;height:42px;border-radius:12px}.card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 8px 28px #1018280d}.login-page{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:#fff}.login-panel{padding:54px 7vw;background:radial-gradient(circle at 88% 10%,rgb(46 116 181 / 20%),transparent 32%),linear-gradient(145deg,#f5f8fc,#eaf1f8);display:flex;flex-direction:column}.login-copy{max-width:660px;margin:auto 0}.login-copy h1{color:var(--navy);font-size:clamp(2.7rem,5vw,5.4rem)}.login-copy>p:last-child{max-width:560px;font-size:1.1rem;color:#475467;line-height:1.7}.login-form-wrap{display:grid;place-items:center;padding:30px}.login-form{width:min(440px,100%);padding:36px}label{display:grid;gap:8px;color:#344054;font-size:.86rem;font-weight:700}input,select{width:100%;min-height:44px;border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 4px #2e74b51c}.login-form label{margin-top:18px}.button{min-height:42px;border:0;border-radius:10px;padding:10px 16px;font-weight:750}.button.primary{background:var(--navy);color:#fff;box-shadow:0 7px 18px #17365d29}.button.secondary{background:#eaf1f8;color:var(--blue-2)}.button.ghost{background:transparent;color:#475467;border:1px solid var(--line)}.button:disabled{cursor:not-allowed;opacity:.48}.login-form .button{width:100%;margin-top:24px}.alert{border-radius:10px;padding:11px 13px;margin-top:14px;font-size:.86rem}.alert.error{color:var(--red);background:#fff1f0;border:1px solid #ffccc7}.company-page{min-height:100vh;background:#f7f9fc}.company-page>header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:#fff}.company-page>header>div:last-child{display:grid;text-align:right}.company-content{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:80px 0}.company-content>p.muted{font-size:1.05rem}.company-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:34px}.company-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;text-align:left;gap:16px;color:var(--ink);transition:transform .18s,border-color .18s,box-shadow .18s}.company-card:hover{transform:translateY(-2px);border-color:#98b9d8;box-shadow:0 16px 34px #10182814}.company-card span strong,.company-card span small{display:block}.company-card span small{margin-top:5px}.company-card b{color:var(--blue)}.add-company{grid-template-columns:auto 1fr;border-style:dashed;color:var(--blue-2)}.add-company>span{font-size:1.8rem}.inline-form{max-width:640px;margin-top:22px;display:grid;gap:15px}.actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:20px}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}aside{position:sticky;top:0;height:100vh;background:#102a49;color:#fff;padding:24px 18px;display:flex;flex-direction:column}aside .brand{color:#fff;padding:0 8px 20px;border-bottom:1px solid rgb(255 255 255 / 12%)}aside .brand span{color:#aebfd1}.active-company{margin:18px 6px 10px;padding:13px;border-radius:12px;background:#ffffff12;display:grid;gap:4px}.active-company small{color:#9db2c8;font-size:.62rem;letter-spacing:.11em}.active-company button{border:0;background:none;color:#8bc5fa;padding:6px 0 0;text-align:left;font-size:.75rem}nav{display:grid;gap:4px;margin-top:12px}nav a,.nav-future{color:#c8d5e2;padding:11px 13px;border-radius:9px;text-decoration:none;font-size:.9rem;font-weight:650;display:flex;justify-content:space-between}nav a.active,nav a:hover{color:#fff;background:#ffffff1a}.nav-future{color:#758da6;cursor:default}.nav-future small{color:#678099;font-size:.58rem;text-transform:uppercase}.sidebar-foot{margin-top:auto;padding:16px 10px 4px;border-top:1px solid rgb(255 255 255 / 12%);display:grid;gap:7px}.sidebar-foot button{border:0;background:none;padding:0;color:#8bc5fa;text-align:left}.workspace{min-width:0;padding:42px clamp(22px,4vw,64px) 70px}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}.page-header h1{margin-bottom:8px;color:var(--navy)}.page-header p:last-child{color:var(--muted);margin-bottom:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card{min-height:158px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column}.metric-card span{color:#475467;font-size:.82rem;font-weight:700}.metric-card strong{color:var(--navy);font-size:clamp(1.25rem,2vw,1.8rem);margin:16px 0 8px}.metric-card small{margin-top:auto;line-height:1.4}.two-column{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;margin-top:16px}.record-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.record-stats div{background:var(--soft);border-radius:12px;padding:18px;display:grid}.record-stats strong{font-size:1.7rem;color:var(--navy)}.record-stats span{color:var(--muted);font-size:.8rem}.control-card{display:flex;gap:14px;align-items:flex-start}.status-dot{width:12px;height:12px;border-radius:50%;margin-top:5px;background:#98a2b3;box-shadow:0 0 0 6px #f2f4f7}.status-dot.good{background:#12b76a;box-shadow:0 0 0 6px #ecfdf3}.entry-card,.bill-form{margin-bottom:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.span-2{grid-column:span 2}.table-card{padding:0;overflow:hidden}table{width:100%;border-collapse:collapse}th{background:#f7f9fc;color:#667085;text-align:left;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;padding:13px 18px}td{padding:15px 18px;border-top:1px solid var(--line);font-size:.88rem;color:#344054}td strong,td small{display:block}td small{margin-top:4px}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.7rem;font-weight:800;text-transform:capitalize}.pill.success{color:var(--green);background:#ecfdf3}.pill.warning{color:var(--amber);background:#fff6ed}.empty{min-height:250px;display:grid;place-content:center;text-align:center;gap:8px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:26px 0 14px}.section-title:first-child{margin-top:0}.section-title h2,.section-title p{margin-bottom:0}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#667085;font-size:1.2rem}.line-list{display:grid;gap:9px}.line-row{display:grid;grid-template-columns:34px minmax(160px,.8fr) 1.5fr minmax(130px,.6fr) 36px;gap:9px;align-items:center}.line-index{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#eaf1f8;color:var(--blue-2);font-weight:800;font-size:.75rem}.reconcile{margin-top:16px;padding:14px 16px;border-radius:11px;background:#fff5f3;color:#7a271a;display:flex;gap:28px;flex-wrap:wrap}.reconcile.valid{background:#ecfdf3;color:#05603a}.reconcile span{display:grid;gap:3px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.reconcile strong{font-size:.9rem;letter-spacing:0}.deduction-row{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:9px;align-items:center;margin-bottom:9px}.deduction-row .icon-button{justify-self:end}.loading{min-height:100vh;display:grid;place-content:center;gap:20px;justify-items:center;background:#f5f8fc}.allocation-list{display:grid;gap:9px}.allocation-row{display:grid;grid-template-columns:34px minmax(260px,1fr) minmax(150px,.35fr) 36px;gap:9px;align-items:center}.transaction-total{margin-top:16px;padding:16px 18px;border-radius:12px;background:#eaf1f8;color:var(--navy);display:flex;justify-content:space-between;align-items:center}.transaction-total span{font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.transaction-total strong{font-size:1.25rem}.security-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px}.security-summary article{display:grid;gap:10px}.security-summary span{color:var(--muted);font-size:.8rem;font-weight:700}.security-summary strong{color:var(--navy);font-size:1.65rem}.register-section{margin-bottom:20px}.register-title{margin:0;padding:20px 24px 10px}.register-title h2{margin-bottom:0}@media(max-width:1050px){.metric-grid,.form-grid.three{grid-template-columns:repeat(2,1fr)}.line-row{grid-template-columns:34px 1fr 1fr 130px 36px}.deduction-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-panel{min-height:380px;padding:30px}.login-copy{margin-top:70px}.login-copy h1{font-size:2.5rem}.app-shell{grid-template-columns:1fr}aside{position:static;height:auto}nav{grid-template-columns:repeat(2,1fr)}.sidebar-foot{display:none}.workspace{padding:28px 16px 50px}.page-header{align-items:flex-start;flex-direction:column}.metric-grid,.two-column,.form-grid,.form-grid.three{grid-template-columns:1fr}.span-2{grid-column:auto}.line-row{grid-template-columns:30px 1fr 36px}.line-row input:not(.amount-input){grid-column:2 / 3}.line-row .amount-input{grid-column:2 / 3}.allocation-row{grid-template-columns:30px 1fr 36px}.allocation-row input{grid-column:2 / 3}.security-summary{grid-template-columns:1fr}.table-card{overflow-x:auto}table{min-width:720px}}.check-row{grid-template-columns:18px 1fr!important;align-items:center;gap:9px!important;font-weight:600!important}.check-row input{width:18px;height:18px}.text-button{border:0;background:transparent;color:var(--blue);padding:0;text-align:left;font-weight:700}.recovery-note{border:1px solid #b9d6ef;background:#eff8ff;color:#184b78;border-radius:10px;padding:12px;font-size:.82rem;line-height:1.55}.recovery-note code,.recovery-card code{font-weight:800}.account-form{max-width:780px}.recovery-card{max-width:780px;margin-top:16px}.correction-form{margin-bottom:20px}.correction-fields{margin-top:22px;padding-top:22px;border-top:1px solid var(--line);display:grid;gap:14px}.correction-fields>h2{margin:10px 0 0}.correction-reason{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}textarea{width:100%;min-height:88px;border:1px solid #d0d5dd;border-radius:10px;padding:10px 12px;resize:vertical;font:inherit}textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #2e74b51c;outline:none}.button.danger{background:var(--red);color:#fff}.pill.danger-pill{color:var(--red);background:#fff1f0}.success-alert{color:var(--green);background:#ecfdf3;border:1px solid #abefc6}.correction-section{margin-top:20px}details{cursor:pointer}details pre{max-width:460px;max-height:280px;overflow:auto;padding:12px;border-radius:8px;background:#101828;color:#e4e7ec;font-size:.7rem;white-space:pre-wrap}.report-actions{display:flex;gap:9px;flex-wrap:wrap}.report-filter{margin-bottom:24px}.filter-buttons{display:flex;justify-content:flex-end;align-items:end;gap:9px}.report-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin:28px 0 18px}.report-heading h2{font-size:1.7rem;color:var(--navy);margin-bottom:5px}.report-heading p{margin-bottom:0}.report-meta{display:grid;gap:5px;text-align:right;color:var(--muted);font-size:.76rem}.report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.report-metrics article{padding:17px;display:grid;gap:8px}.report-metrics span{color:var(--muted);font-size:.75rem;font-weight:700}.report-metrics strong{color:var(--navy);font-size:1.18rem}.report-section{margin-top:18px;overflow-x:auto}.report-section table{min-width:1050px}.report-section .register-title small{display:block;margin-top:6px;max-width:900px}@media(max-width:1050px){.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.report-heading{align-items:flex-start;flex-direction:column}.report-meta{text-align:left}}@media(max-width:760px){.report-actions{width:100%}.report-actions .button{flex:1}.report-metrics{grid-template-columns:1fr}}@media print{aside,.report-filter,.report-actions,.sidebar-foot{display:none!important}body,.workspace,.app-shell{background:#fff!important}.app-shell{display:block}.workspace{padding:0}.page-header{margin-bottom:12px}.report-metrics{grid-template-columns:repeat(4,1fr)}.card{box-shadow:none;break-inside:avoid}.report-section{overflow:visible}.report-section table{min-width:0;font-size:7pt}th,td{padding:5px}}.backup-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.backup-summary article{display:grid;gap:9px}.backup-summary span{color:var(--muted);font-size:.78rem;font-weight:700}.backup-summary strong{color:var(--navy);font-size:1.12rem}.backup-warning{color:var(--amber);background:#fff6ed;border:1px solid #fedf89}.backup-location{margin:18px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}.backup-location h2,.backup-location p{margin-bottom:5px}.backup-location>small{max-width:380px;text-align:right}.backup-history{margin-top:18px}.backup-history code{font-size:.76rem;color:var(--blue-2)}.backup-history td small{max-width:310px;word-break:break-word}.backup-safety{margin-top:18px}@media(max-width:1050px){.backup-summary{grid-template-columns:1fr}.backup-location{align-items:flex-start;flex-direction:column}.backup-location>small{text-align:left}}.metric-button{width:100%;text-align:left;cursor:pointer}.metric-button:hover{border-color:#98b9d8;transform:translateY(-1px);box-shadow:0 12px 26px #10182814}.warning-dot{background:#f79009;box-shadow:0 0 0 6px #fffaeb}.alert-center{margin-top:16px}.compact-empty{min-height:120px}.alert-list{display:grid;gap:10px}.alert-list button{border:1px solid var(--line);background:var(--soft);border-radius:12px;padding:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;text-align:left;color:var(--ink)}.alert-list button span:nth-child(2){display:grid;gap:3px}.alert-count{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:800;background:#fff6ed;color:var(--amber)}.alert-count.high{background:#fff1f0;color:var(--red)}.document-filters{margin-bottom:16px}.document-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);gap:16px;align-items:start}.document-records{max-height:70vh;overflow:auto}.document-records tr{cursor:pointer}.selected-row{background:#eff8ff}.document-panel{position:sticky;top:24px}.document-upload{display:grid;gap:12px;margin:18px 0}.attachment-list{display:grid;gap:10px;margin-top:18px}.attachment-list article{display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:11px}.attachment-list article>div:first-child{display:grid;gap:3px}.attachment-actions{display:flex;gap:14px}.danger-text{color:var(--red)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.method-settings{display:grid;gap:9px;margin-top:18px}.ledger-table table{min-width:1100px}@media(max-width:1050px){.document-layout,.settings-grid{grid-template-columns:1fr}.document-panel{position:static}}
