:root{color:#1a1a1a;background:#fafafa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:#fafafa}button,input,select,textarea{font:inherit}button{cursor:pointer}.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px 36px}.auth-panel,.section-panel,.drawer-panel,.dialog-panel{background:#fff;border:1px solid #e5e5e3;border-radius:8px}.auth-panel{width:min(100%,420px);padding:24px}.eyebrow,.sidebar-label,.section-header p,.topbar p,.muted,.state-text{color:#5c5c5c}h1,h2,h3,p{margin:0}h1{font-size:24px;font-weight:500}h2,h3{font-size:16px;font-weight:500}.form-stack,.form-grid{display:grid;gap:12px;margin-top:20px}.form-grid,.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four-columns{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.field{display:grid;gap:6px;color:#5c5c5c;font-size:12px}.field input,.field select,.field textarea,.filter-row input,.filter-row select,td input,td select{width:100%;min-height:36px;border:1px solid #e5e5e3;border-radius:8px;padding:8px 10px;color:#1a1a1a;background:#fff}.field textarea{min-height:76px;resize:vertical}.field-error,.alert{color:#b3262b}.alert{border:1px solid #f0c4c4;background:#fbeaea;border-radius:8px;padding:10px 12px}.primary-button,.danger-button,.text-button,.nav-item{min-height:36px;border-radius:8px;border:1px solid transparent;padding:8px 12px}.primary-button{color:#fff;background:#024ad8}.danger-button{color:#fff;background:#b3262b}.text-button{color:#024ad8;background:#fff;border-color:#c3d8f7}.app-shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr}.sidebar{padding:20px;border-right:1px solid #e5e5e3;background:#fff}.brand{font-size:19px;font-weight:500}.nav-list{display:grid;gap:8px;margin-top:24px}.nav-item{width:100%;text-align:left;color:#1a1a1a;background:#fff}.nav-item.active{color:#024ad8;background:#e6eefc;border-color:#c3d8f7}.main-column{min-width:0}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 36px;border-bottom:1px solid #e5e5e3;background:#fff}.topbar-actions{display:flex;align-items:center;gap:8px}.content{padding:28px 36px}.section-panel{padding:20px}.section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}.filter-row label{display:grid;gap:6px;color:#5c5c5c;font-size:12px}.table-wrap{overflow-x:auto;margin-top:20px;border:1px solid #e5e5e3;border-radius:8px}.summary-strip{position:sticky;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:12px;background:#fff;border:1px solid #e5e5e3;border-radius:8px;box-shadow:0 -6px 18px #0000000f}.metric-inline{min-height:36px;display:grid;gap:4px;align-content:center;padding:8px 10px;border:1px solid #e5e5e3;border-radius:8px;background:#fafafa}.metric-inline span{color:#5c5c5c;font-size:11px}.metric-inline strong{font-size:13px;font-weight:500}.inline-panel{display:grid;gap:12px;margin-top:12px;padding:12px;border:1px solid #e5e5e3;border-radius:8px;background:#fafafa}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;border-bottom:1px solid #f2f2f1;text-align:left;white-space:nowrap}th{background:#fafafa;color:#8a8a8a;font-size:12px;font-weight:400}.admin-users-table{table-layout:fixed}.admin-users-table th:nth-child(1),.admin-users-table td:nth-child(1){width:20%}.admin-users-table th:nth-child(3),.admin-users-table td:nth-child(3){width:44%}.admin-users-table th:nth-child(2),.admin-users-table td:nth-child(2){width:12%}.admin-users-table th:nth-child(4),.admin-users-table td:nth-child(4){width:24%}.role-assignment-cell{display:flex;align-items:center;gap:8px;min-width:0}.role-assignment-cell span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.role-assignment-cell select{flex:0 0 156px}.admin-user-actions{display:flex;align-items:center;gap:8px}.journal-ledger-wrap{border:0;border-radius:6px;background:#fff;overflow:hidden}.journal-ledger-table{--journal-account-indent: 80px;--journal-ink: #1a1a1a;--journal-muted: #5c5c5c;--journal-border: #e5e5e3;--journal-header: #024ad8;--journal-header-shadow: #023aa8;--journal-band: #f2f2f1;--journal-band-hover: #e6eefc;--journal-line-hover: #fafafa;min-width:720px;background:#fff;border-collapse:separate;border-spacing:0;border-radius:6px;box-shadow:inset 0 0 0 1px var(--journal-border)}.journal-ledger-table th,.journal-ledger-table td{white-space:normal}.journal-ledger-table thead tr{background:var(--journal-header)}.journal-ledger-table thead th{padding:10px 16px;border:0;color:#fff;background:transparent;font-size:14px;font-weight:400;box-shadow:inset 0 -1px 0 var(--journal-header-shadow)}.journal-ledger-table .col-akun{text-align:left}.journal-ledger-table thead th.col-akun{padding-left:var(--journal-account-indent)}.journal-ledger-table .col-debit,.journal-ledger-table .col-kredit{width:160px;font-variant-numeric:tabular-nums;text-align:right}.journal-ledger-table .col-action{position:relative;width:48px;padding-right:8px;padding-left:8px;text-align:center}.journal-ledger-table .row-journal-header td{padding:4px 16px;border:0;color:var(--journal-ink);background:var(--journal-band);font-size:14px;font-weight:400;box-shadow:inset 0 1px #fff,inset 0 -1px 0 var(--journal-border)}.journal-ledger-table .row-journal-header .journal-line-menu-button{width:24px;height:24px}.journal-ledger-table .row-journal-header .journal-line-menu-button svg{width:16px;height:16px}.journal-ledger-table .row-journal-header{cursor:pointer}.journal-ledger-table .row-journal-header:hover td{background:var(--journal-band-hover)}.journal-ledger-table .row-journal-header:focus-visible td{outline:2px solid #024ad8;outline-offset:-2px}.journal-ledger-table .row-journal-header.is-collapsed td{background:#e6eefc;box-shadow:inset 0 1px #fff,inset 0 -1px #c3d8f7}.journal-ledger-table .row-line td{padding:8px 16px;border-bottom:1px solid #f2f2f1;vertical-align:top}.journal-ledger-table .row-line:hover td{background:var(--journal-line-hover)}.journal-ledger-table .row-line td.col-akun{padding-left:var(--journal-account-indent)}.journal-ledger-table .akun-kode-nama{color:var(--journal-ink);font-size:14px;font-weight:400}.journal-ledger-table .akun-narasi{margin-top:2px;color:var(--journal-muted);font-size:11.2px;font-weight:400}.journal-ledger-table .row-line td.col-debit,.journal-ledger-table .row-line td.col-kredit{padding-top:8px;color:var(--journal-ink);font-size:14px;font-weight:400;text-align:right;vertical-align:top}.journal-ledger-table .row-line td.col-action{padding-top:6px}.journal-ledger-table .row-line td.empty{font-weight:400}.journal-line-menu-button{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid transparent;border-radius:6px;color:#5c5c5c;background:transparent}.journal-line-menu-button svg{width:18px;height:18px;fill:currentColor}.journal-line-menu-button:hover,.journal-line-menu-button:focus-visible{color:#024ad8;background:#e6eefc;border-color:#c3d8f7}.journal-line-action-menu-wrap{position:relative;display:inline-grid;place-items:center}.journal-line-action-menu{position:absolute;top:30px;right:0;z-index:20;display:grid;min-width:168px;overflow:hidden;border:1px solid #d7d7d4;border-radius:6px;background:#fff;box-shadow:0 12px 28px #1118271f}.journal-line-action-menu button{border:0;padding:9px 12px;color:#1a1a1a;background:transparent;font:inherit;font-size:13px;text-align:left;white-space:nowrap}.journal-line-action-menu button:hover,.journal-line-action-menu button:focus-visible{color:#024ad8;background:#e6eefc;outline:none}.journal-ledger-table .row-total td{padding:8px 16px;border-top:1.5px solid #d7d7d4;border-bottom:0;color:var(--journal-ink);background:#fff;font-size:14px;font-weight:400}.journal-ledger-table .row-total td.col-akun{padding-left:var(--journal-account-indent)}.journal-ledger-table .row-tags td{padding:8px 16px;border-bottom:0;color:#5c5c5c;background:#fafafa;font-size:14px;font-weight:400}.journal-ledger-table .row-tags.has-next td{border-bottom:1px solid var(--journal-border)}.accounts-page{background:#fff}.accounts-page-title{margin:0;padding:0;color:#1a1a1a;font-size:24px;font-weight:500}.coa-ledger-wrap{border:0;border-radius:6px;background:#fff;overflow:hidden}.coa-ledger-table{--coa-ink: #1a1a1a;--coa-muted: #5c5c5c;--coa-border: #e5e5e3;--coa-header: #024ad8;--coa-header-shadow: #023aa8;--coa-row-hover: #fafafa;--coa-badge: #e6eefc;--coa-badge-border: #c3d8f7;min-width:820px;background:#fff;border-collapse:separate;border-spacing:0;border-radius:6px;box-shadow:inset 0 0 0 1px var(--coa-border)}.coa-ledger-table th,.coa-ledger-table td{white-space:normal}.coa-ledger-table thead tr{background:var(--coa-header)}.coa-ledger-table thead th{padding:10px 16px;border:0;color:#fff;background:transparent;font-size:14px;font-weight:400;box-shadow:inset 0 -1px 0 var(--coa-header-shadow)}.coa-ledger-table .col-code{width:128px}.coa-ledger-table .col-category{width:152px}.coa-ledger-table .col-subcategory{width:180px}.coa-ledger-table .col-balance{width:160px;font-variant-numeric:tabular-nums;text-align:right}.coa-ledger-table .col-action{width:112px;text-align:right}.coa-ledger-table .coa-row td{padding:9px 16px;border-bottom:1px solid #f2f2f1;color:var(--coa-ink);background:#fff;vertical-align:middle}.coa-ledger-table .coa-row:hover td{background:var(--coa-row-hover)}.coa-ledger-table .coa-row:last-child td{border-bottom:0}.coa-ledger-table .coa-row.is-inactive td{color:#8a8a8a;background:#fafafa}.coa-account-code{color:var(--coa-ink);font-size:13px;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.coa-account-name,.coa-subcategory-name,.coa-balance-value{color:var(--coa-ink);font-size:14px;font-weight:400}.coa-category-badge{display:inline-flex;align-items:center;min-height:24px;max-width:100%;border:1px solid #e5e5e3;border-radius:6px;padding:3px 8px;color:#3f3f3f;background:#fafafa;font-size:12px;font-weight:500;line-height:1.2}.coa-row-action{min-height:30px;border:1px solid transparent;border-radius:6px;padding:5px 10px;color:#5c5c5c;background:transparent;font:inherit;font-size:13px;cursor:pointer;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:ease-out}.coa-row-action:hover,.coa-row-action:focus-visible{color:#024ad8;background:#e6eefc;border-color:#c3d8f7;outline:none}.approval-table .approval-select-cell{width:52px;min-width:52px;max-width:52px;padding-left:8px;padding-right:8px;text-align:center}.approval-table .approval-select-cell input{width:16px;height:16px;margin:0;vertical-align:middle}.approval-ledger-table{min-width:960px}.approval-ledger-table:has(.approval-reason-cell){min-width:1120px}.approval-ledger-table .approval-select-cell{width:56px;min-width:56px;max-width:56px;padding-right:8px;padding-left:8px;text-align:center}.approval-ledger-table .approval-select-cell input{width:16px;height:16px;margin:0;vertical-align:middle}.approval-collapse-all-control{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;border:1px solid #c3d8f7;border-radius:999px;padding:4px 10px;color:#024ad8;background:#e6eefc;font-size:13px;font-weight:500;cursor:pointer;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:ease-out}.approval-collapse-all-control input{width:14px;height:14px;margin:0;accent-color:#024ad8}.approval-collapse-all-control:has(input:disabled){cursor:not-allowed;opacity:.6}.approval-collapse-all-control:hover,.approval-collapse-all-control:focus-within{background:#fff}.approval-ledger-table .approval-required-cell{width:136px;min-width:136px;text-align:left}.approval-ledger-table .approval-required-value{display:inline-flex;align-items:center;min-height:24px;border:1px solid #c3d8f7;border-radius:999px;padding:3px 9px;color:#024ad8;background:#e6eefc;font-size:11px;font-weight:500;letter-spacing:.01em;white-space:nowrap}.approval-ledger-table .approval-reason-cell{width:180px;min-width:180px;text-align:left}.approval-ledger-table .approval-delete-reason{max-width:220px;color:#4f4f4f}.approval-ledger-table .approval-status-cell{width:128px;text-align:left}.approval-ledger-table .approval-actions-cell{width:164px;text-align:right}.approval-ledger-table .approval-queue-header td{vertical-align:middle}.approval-collapse-toggle{display:grid;gap:2px;width:100%;border:0;padding:0;color:inherit;background:transparent;font:inherit;text-align:left;cursor:pointer}.approval-collapse-toggle:focus-visible{border-radius:4px;outline:2px solid #024ad8;outline-offset:2px}.approval-collapse-icon{display:inline-block;width:16px;color:#5c5c5c;transform-origin:center;transition-property:transform;transition-duration:.15s;transition-timing-function:ease-out}.approval-queue-header.is-collapsed .approval-collapse-icon{transform:rotate(-90deg)}.approval-ledger-table .approval-journal-title{display:inline-flex;align-items:center;color:var(--journal-ink);font-size:14px;font-weight:400}.approval-row-actions{display:inline-flex;justify-content:flex-end;gap:6px}.approval-action-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;border:1px solid transparent;border-radius:999px;padding:4px 10px;font:inherit;font-size:12px;font-weight:500;cursor:pointer;transition-property:color,background-color,border-color;transition-duration:.15s;transition-timing-function:ease-out}.approval-action-badge.is-approve{color:#024ad8;background:#e6eefc;border-color:#c3d8f7}.approval-action-badge.is-reject{color:#8f1d1d;background:#fff0f0;border-color:#f3c0c0}.approval-action-badge:hover,.approval-action-badge:focus-visible{background:#fff;outline:none}.approval-ledger-table .approval-queue-line td.approval-select-cell,.approval-ledger-table .approval-queue-line td.approval-required-cell,.approval-ledger-table .approval-queue-total td.approval-select-cell,.approval-ledger-table .approval-queue-total td.approval-required-cell{background:#fff}.approval-card-list{display:grid;gap:12px;margin-top:20px}.approval-card{display:grid;gap:14px;padding:14px;border:1px solid #e5e5e3;border-left:3px solid #024ad8;border-radius:8px;background:#fff}.approval-card.danger{border-left-color:#b3262b}.approval-card-header,.approval-actions{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.approval-actions{justify-content:flex-end}.approval-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric-grid,.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid{display:grid;gap:16px;margin-top:16px}.reports-page{background:#fff}.reports-page-title{margin:0 0 24px;padding:0;color:#1a1a1a;font-size:24px;font-weight:500}.report-header-tabs{display:flex;align-items:flex-end;border-bottom:1px solid #c3d8f7}.report-tab{margin-right:4px;padding:10px 18px;border:1px solid #c3d8f7;border-bottom:0;border-radius:8px 8px 0 0;color:#024ad8;background:#e6eefc;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition-property:color,background-color,border-color,box-shadow;transition-duration:.15s;transition-timing-function:ease-out}.report-tab.active{color:#fff;background:#024ad8;border-color:#024ad8;box-shadow:0 -1px #024ad80d,0 8px 18px #024ad81f}.report-tab:hover:not(.active){color:#023aa8;background:#dbe9ff;border-color:#a9c8f6}.report-tab:focus-visible,.report-export-button:focus-visible,.report-filter-input:focus-visible{outline:2px solid #3d52d5;outline-offset:2px}.report-tab-spacer{flex:1}.report-export-actions{align-self:center;display:flex;gap:8px;margin-left:16px}.report-export-button{min-height:36px;padding:8px 14px;border:1px solid #c3d8f7;border-radius:8px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition-property:color,background-color,border-color,box-shadow,transform,opacity;transition-duration:.15s;transition-timing-function:ease-out}.report-export-button.primary{color:#fff;background:#024ad8;border-color:#024ad8;box-shadow:0 8px 18px #024ad829}.report-export-button.secondary{color:#024ad8;background:#fff}.report-export-button:hover:not(:disabled){border-color:#023aa8;box-shadow:0 8px 18px #024ad81f}.report-export-button.primary:hover:not(:disabled){background:#023aa8;box-shadow:0 10px 22px #024ad833}.report-export-button.secondary:hover:not(:disabled){background:#eef5ff}.report-export-button:active:not(:disabled){transform:scale(.98)}.report-export-button:disabled{cursor:not-allowed;opacity:.55}.report-filter-row{display:flex;align-items:flex-end;gap:0;margin-top:16px;margin-bottom:14px}.report-filter-group{display:flex;flex-direction:column;gap:4px}.report-filter-label{color:#5c5c5c;font-size:12px;font-weight:500}.report-filter-input{width:140px;min-height:36px;border:1px solid #e5e5e3;border-radius:8px;padding:8px 10px;color:#1a1a1a;background:#fff;font-family:inherit;font-size:14px;outline:none;transition-property:border-color,box-shadow;transition-duration:.15s;transition-timing-function:ease-out}.report-filter-input:focus{border-color:#3d52d5;box-shadow:0 0 0 3px #024ad81a}.report-date-separator{display:flex;align-items:flex-end;padding:0 10px 10px;color:#5c5c5c;font-size:16px;line-height:1}.report-zero-toggle{align-self:flex-end;display:inline-flex;align-items:center;gap:8px;min-height:36px;margin-left:auto;padding:8px 10px;color:#1a1a1a;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap}.report-zero-toggle input{width:16px;height:16px;accent-color:#024ad8}.reports-page .report-grid{gap:14px;margin-top:14px}.reports-page .metric-inline{min-height:34px;background:#fff}.general-ledger-report-wrap{margin-top:14px}.general-ledger-report-table{--journal-account-indent: 56px;min-width:760px}.general-ledger-report-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.general-ledger-report-table .col-akun{width:auto}.general-ledger-report-table .col-amount{width:180px;font-variant-numeric:tabular-nums;text-align:right}.general-ledger-report-table thead th.col-amount,.general-ledger-report-table tbody td.col-amount{padding-right:18px}.general-ledger-report-table .general-ledger-account-row td.col-akun{padding-left:var(--journal-account-indent)}.general-ledger-report-table .general-ledger-total-row td{background:#fafafa;font-weight:500}.general-ledger-report-table .general-ledger-empty-row td{padding:16px;color:#5c5c5c;background:#fff;text-align:center}.profit-loss-ledger-wrap{margin-top:14px}.profit-loss-ledger-table{--journal-account-indent: 56px;min-width:680px}.profit-loss-ledger-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.profit-loss-ledger-table .col-amount{width:180px;font-variant-numeric:tabular-nums;text-align:right}.profit-loss-ledger-table thead th.col-amount,.profit-loss-ledger-table tbody td.col-amount{padding-right:18px}.profit-loss-ledger-table .profit-loss-group-row td{padding:7px 16px;color:#1a1a1a;font-weight:500}.profit-loss-ledger-table .profit-loss-subgroup-row td{padding:8px 16px 6px var(--journal-account-indent);border-top:1px solid #f2f2f1;border-bottom:1px solid #f2f2f1;color:#024ad8;background:#fafcff;font-size:13px;font-weight:500}.profit-loss-ledger-table .profit-loss-account-row td.col-akun{padding-left:calc(var(--journal-account-indent) + 22px)}.profit-loss-ledger-table .profit-loss-subtotal-row td{color:#5c5c5c;background:#fff}.profit-loss-ledger-table .profit-loss-subtotal-row td.col-akun{padding-left:var(--journal-account-indent)}.profit-loss-ledger-table .profit-loss-summary-row td,.profit-loss-ledger-table .profit-loss-final-row td{padding:10px 16px;border-top:1.5px solid #d7d7d4;color:#1a1a1a;background:#fafafa;font-size:14px;font-weight:500}.profit-loss-ledger-table .profit-loss-summary-row td.col-akun,.profit-loss-ledger-table .profit-loss-final-row td.col-akun{padding-left:var(--journal-account-indent)}.profit-loss-ledger-table .profit-loss-final-row td{border-top:2px solid #024ad8;background:#eff4ff;color:#024ad8}.rab-form-page{background:#fff}.rab-form-hero{align-items:flex-start;padding-bottom:16px;border-bottom:1px solid #e5e5e3}.rab-form-stack{gap:14px;margin-top:16px}.rab-form-actions,.rab-form-footer{display:flex;justify-content:flex-end;gap:8px}.rab-form-card{border:1px solid #e5e5e3;border-radius:8px;background:#fff;overflow:hidden}.rab-form-card-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid #e5e5e3;background:#fafafa}.rab-form-card-header h3{color:#1a1a1a;font-size:15px}.rab-form-card-header p{margin-top:2px;color:#5c5c5c;font-size:12px}.rab-program-grid,.rab-form-card>.field{margin:16px}.rab-form-card>.field{margin-top:0}.rab-ledger-wrap{margin-top:0;border:0;border-radius:0}.rab-ledger-table{--journal-account-indent: 16px;width:100%;min-width:0;border-radius:0;box-shadow:none}.rab-ledger-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.rab-ledger-table thead th{padding:9px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.rab-ledger-table .row-line td{padding:10px 12px;vertical-align:middle}.rab-ledger-table .field{min-width:0;gap:4px}.rab-ledger-table .field>span{color:#5c5c5c;font-size:10.5px;line-height:1.2}.rab-ledger-table input,.rab-ledger-table select{min-height:34px;border-radius:6px;font-size:13px}.rab-ledger-table input[type=checkbox]{width:14px;height:14px;min-height:14px;padding:0;accent-color:#024ad8}.rab-revenue-table th:nth-child(1),.rab-revenue-table td:nth-child(1){min-width:300px}.rab-revenue-table th:nth-child(2),.rab-revenue-table th:nth-child(3),.rab-revenue-table td:nth-child(2),.rab-revenue-table td:nth-child(3){width:150px}.rab-expense-table{width:100%;table-layout:fixed;min-width:0}.rab-expense-table th,.rab-expense-table td,.rab-expense-table input,.rab-expense-table select{box-sizing:border-box}.rab-expense-table th:nth-child(1),.rab-expense-table td:nth-child(1){width:23%}.rab-expense-table th:nth-child(2),.rab-expense-table td:nth-child(2){width:11%}.rab-expense-table th:nth-child(3),.rab-expense-table td:nth-child(3){width:8%}.rab-expense-table th:nth-child(4),.rab-expense-table td:nth-child(4){width:auto}.rab-expense-table th:nth-child(5),.rab-expense-table td:nth-child(5){width:13%}.rab-expense-table th:nth-child(6),.rab-expense-table td:nth-child(6){width:56px;min-width:56px;max-width:56px;text-align:center}.rab-expense-table th:nth-child(6){overflow:hidden;padding-left:4px;padding-right:4px;text-overflow:clip}.rab-section-cell,.rab-tag-cell{color:#5c5c5c;font-size:13px}.rab-section-cell{color:#1a1a1a;font-weight:500}.rab-component-indent{background:#fff}.rab-component-cell{padding-left:32px!important}.rab-category-row td{position:relative;font-weight:500}.rab-category-name{color:#1a1a1a}.rab-category-field-label,.rab-calculation-labels{color:#6b6a66;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.rab-calculation-labels{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,3fr);gap:8px}.rab-empty-state{color:#5c5c5c;background:#fafafa;font-size:13px;text-align:center}.rab-tag-cell{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace)}.rab-line-total{width:160px;color:#1a1a1a;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.rab-expense-table .rab-line-total{width:auto;min-width:0;max-width:none;overflow:hidden;text-overflow:ellipsis}.rab-calculation-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,3fr);gap:8px}.rab-calculation-grid input,.rab-component-cell select{width:100%;min-width:0}.rab-calculation-cell>span{color:#1a1a1a;font-size:13px}.rab-chip{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid #c3d8f7;border-radius:999px;color:#024ad8;background:#eff4ff;font-size:12px;font-weight:500}.rab-row-action{min-height:32px;padding:6px 8px;white-space:nowrap}.rab-menu-cell{width:56px;min-width:56px;max-width:56px;padding-left:4px!important;padding-right:4px!important;text-align:center;white-space:nowrap}.rab-action-buttons{display:inline-flex;justify-content:center;gap:2px}.rab-menu-button{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid transparent;border-radius:6px;color:#5c5c5c;background:transparent;font-size:16px;line-height:1;cursor:pointer}.rab-menu-button svg{width:14px;height:14px;fill:currentColor}.rab-menu-button:hover,.rab-menu-button:focus-visible{color:#024ad8;background:#e6eefc;border-color:#c3d8f7}.rab-toolbar{flex-wrap:wrap}.rab-section-panel{margin:12px 16px 16px;border-color:#c3d8f7;background:#fafcff}.rab-summary-strip{position:sticky;bottom:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:2px;border-color:#c3d8f7}.muted-text{color:#5c5c5c;font-size:12px}.rab-confirm-card{position:fixed;top:50%;left:50%;z-index:1000;width:min(calc(100vw - 32px),420px);margin:0;padding:14px 16px;border:1px solid #d7d7d4;border-radius:8px;background:#fff;box-shadow:0 12px 28px #0000001f;transform:translate(-50%,-50%)}.rab-confirm-card h3{font-size:14px}.rab-confirm-card p{margin-top:4px;color:#5c5c5c;font-size:12px}.rab-confirm-card .button-row{margin-top:12px}.rab-confirm-yes,.rab-confirm-no{min-height:34px;border-radius:8px;padding:7px 12px;font:inherit;cursor:pointer}.rab-confirm-yes{border:1px solid #d7d7d4;color:#1a1a1a;background:#fff}.rab-confirm-no{border:1px solid #024ad8;color:#fff;background:#024ad8}.detail-grid div{display:grid;gap:4px;padding:10px 12px;border:1px solid #e5e5e3;border-radius:8px;background:#fafafa}.detail-grid dt{color:#5c5c5c;font-size:12px}.detail-grid dd{margin:0}.approval-chain{display:flex;flex-wrap:wrap;gap:8px}.approval-step{display:inline-flex;min-height:24px;align-items:center;border-radius:8px;padding:3px 8px;font-size:12px;border:1px solid #e5e5e3;background:#fafafa}.approval-step.done{color:#0f7a3d;background:#e7f4ec;border-color:#bfe3cd}.approval-step.waiting{color:#8a5a00;background:#fdf1d6;border-color:#f3dda0}.approval-step.idle{color:#5c5c5c}.status,.role-chip{display:inline-flex;align-items:center;min-height:24px;border-radius:8px;padding:3px 8px;font-size:12px}.role-chip{color:#024ad8;background:#e6eefc;border:1px solid #c3d8f7}.status.success{color:#0f7a3d;background:#e7f4ec;border:1px solid #bfe3cd}.status.danger{color:#b3262b;background:#fbeaea;border:1px solid #f0c4c4}.status.warning{color:#8a5a00;background:#fdf1d6;border:1px solid #f3dda0}.numeric{text-align:right}.compact-filters{grid-template-columns:minmax(180px,260px)}.journals-page{background:#fff}.journals-page-title{margin:0 0 24px;padding:0;color:#1a1a1a;font-size:24px;font-weight:500}.journal-header-tabs{display:flex;align-items:flex-end;border-bottom:1px solid #c3d8f7}.journal-status-tab{margin-right:4px;padding:10px 28px;border:1px solid #c3d8f7;border-bottom:0;border-radius:8px 8px 0 0;color:#024ad8;background:#e6eefc;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition-property:color,background-color,border-color,box-shadow;transition-duration:.15s;transition-timing-function:ease-out}.journal-status-tab.active{color:#fff;background:#024ad8;border-color:#024ad8;box-shadow:0 -1px #024ad80d,0 8px 18px #024ad81f}.journal-status-tab:hover:not(.active){color:#023aa8;background:#dbe9ff;border-color:#a9c8f6}.journal-status-tab:focus-visible,.journal-new-button:focus-visible,.journal-filter-button:focus-visible{outline:2px solid #3d52d5;outline-offset:2px}.journal-tab-spacer{flex:1}.page-header-tabs,.master-data-header-tabs{margin-top:20px;overflow-x:auto;overflow-y:hidden}.journal-new-button{align-self:flex-end;margin-left:auto;padding:8px 24px;border:1px solid #024ad8;border-radius:8px;color:#fff;background:#024ad8;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;box-shadow:0 8px 18px #024ad829;transition-property:background-color,border-color,box-shadow,transform;transition-duration:.15s;transition-timing-function:ease-out}.journal-new-button:hover,.journal-filter-button:hover{background:#023aa8;border-color:#023aa8;box-shadow:0 10px 22px #024ad833}.journal-new-button:active,.journal-filter-button:active{transform:scale(.98)}.journal-posted-filter-row{display:flex;align-items:flex-end;gap:0;margin-top:16px;margin-bottom:14px}.journal-filter-group{display:flex;flex-direction:column;gap:4px}.journal-filter-group.period{margin-left:12px}.journal-filter-label{color:#5c5c5c;font-size:12px;font-weight:500}.journal-filter-input,.journal-filter-select{min-height:36px;border:1px solid #e5e5e3;border-radius:8px;padding:8px 10px;color:#1a1a1a;background:#fff;font-family:inherit;font-size:14px;outline:none;transition-property:border-color,box-shadow;transition-duration:.15s;transition-timing-function:ease-out}.journal-filter-input{width:140px}.journal-filter-select{cursor:pointer}.journal-filter-input:focus,.journal-filter-select:focus{border-color:#3d52d5;box-shadow:0 0 0 3px #024ad81a}.journal-date-separator{display:flex;align-items:flex-end;padding:0 10px 10px;color:#5c5c5c;font-size:16px;line-height:1}.journal-filter-button{align-self:flex-end;margin-left:12px;padding:8px 28px;border:1px solid #024ad8;border-radius:8px;color:#fff;background:#024ad8;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;box-shadow:0 8px 18px #024ad824;transition-property:background-color,border-color,box-shadow,transform;transition-duration:.15s;transition-timing-function:ease-out}.fieldset{display:grid;gap:8px;min-width:0;margin:0;padding:12px;border:1px solid #e5e5e3;border-radius:8px}.checkbox-row,.tab-row{display:flex;flex-wrap:wrap;gap:8px}.checkbox-label{display:inline-flex;align-items:center;gap:6px;color:#1a1a1a}.tab-row,.subsection{margin-top:20px}.print-toolbar{display:flex;justify-content:flex-end;gap:8px;margin-bottom:20px}.print-header{display:flex;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #d8d8d6}.print-meta{display:grid;gap:6px;justify-items:end;color:#5c5c5c;font-size:12px}.signature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:36px}.signature-box{min-height:96px;display:flex;align-items:flex-end;justify-content:center;padding:12px;border-top:1px solid #1a1a1a;color:#5c5c5c}.active-tab{background:#e6eefc}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media print{body{background:#fff}.sidebar,.topbar,.print-toolbar{display:none}.app-shell{display:block}.content{padding:0}.section-panel.rab-print{border:0;border-radius:0;padding:0}.table-wrap{overflow:visible}}.audit-panel{margin-top:24px;padding-top:20px;border-top:1px solid #e5e5e3}.drawer{position:fixed;inset:0;display:grid;justify-items:end;background:#1a1a1a2e;z-index:10}.drawer-panel{width:min(560px,100%);min-height:100%;padding:20px}.dialog-panel{align-self:center;justify-self:center;width:min(420px,calc(100% - 32px));padding:20px;display:grid;gap:16px}.button-row{display:flex;justify-content:flex-end;gap:8px}.pagination-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;color:#5c5c5c}.pagination-size-control{display:inline-flex;align-items:center;gap:8px}.pagination-row button:disabled{cursor:not-allowed;color:#8a8a8a;background:#f2f2f1;border-color:#e5e5e3}.account-combobox{position:relative;min-width:260px}.account-options{position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;display:grid;gap:2px;padding:6px;border:1px solid #d7d7d4;border-radius:8px;background:#fff;box-shadow:0 12px 30px #1a1a1a1f}.account-options button{width:100%;display:grid;grid-template-columns:64px 1fr;gap:8px;align-items:center;min-height:34px;padding:7px 8px;border:0;border-radius:6px;color:#1a1a1a;background:#fff;text-align:left}.account-options button:hover,.account-options button[aria-selected=true]{background:#e6eefc}.account-options small{overflow:hidden;color:#5c5c5c;text-overflow:ellipsis}.account-option-empty{padding:8px;color:#5c5c5c}.tag-combobox{display:grid;gap:6px;max-width:504px;color:#5c5c5c;font-size:12px}.tag-combobox>label{color:#5c5c5c;font-weight:400}.tag-combobox-shell{display:grid;gap:8px}.tag-combobox-input-wrap{position:relative;width:100%}.tag-combobox-input-wrap input{width:100%;min-height:36px;border:1px solid #e5e5e3;border-radius:8px;padding:8px 10px;color:#1a1a1a;background:#fff}.tag-chip-row{display:flex;flex-wrap:wrap;gap:6px}.tag-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 8px;border:1px solid #e5e5e3;border-radius:6px;color:#3f3f3f;background:#fafafa;font-size:12px;font-weight:500}.tag-chip span[aria-hidden=true]{color:#8a8a8a;font-size:13px;line-height:1}.tag-type-badge{border:1px solid #b8d8cc;border-radius:4px;padding:1px 4px;color:#1b5c49;background:#e8f5ef;font-size:10px;font-weight:700;line-height:1.2}.tag-chip:hover{border-color:#d7d7d4;color:#1a1a1a;background:#f2f2f1}.tag-checkbox-list{display:flex;flex-wrap:wrap;gap:8px 12px}.tag-checkbox-option{min-height:28px;padding:2px 0}.tag-options button{grid-template-columns:92px 1fr}.tag-options button>span{min-width:0;overflow:hidden;color:#1a1a1a;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.sr-compatible-values{display:flex;flex-wrap:wrap;gap:6px;color:#5c5c5c;font-size:12px}.tag-options small{min-width:0;white-space:nowrap}.amount-input{text-align:right}.negative-amount{color:#b42318;font-weight:600}.warning-banner{border:1px solid #f4d35e;border-radius:6px;padding:10px 12px;color:#5f4500;background:#fff7cc}.journal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.journal-total-row td{border-top:1px solid #d7d7d4;border-bottom:0;background:#fafafa;color:#1a1a1a;font-weight:500}.journal-line-tag-cell{min-width:220px}.single-tag-select{display:block}.single-tag-select select{width:100%;min-height:36px;border:1px solid #e5e5e3;border-radius:8px;padding:8px 10px;color:#1a1a1a;background:#fff}.row-action-cell{text-align:center}.icon-button{display:inline-grid;place-items:center;width:34px;min-width:34px;height:34px;border:1px solid #f0c4c4;border-radius:8px;color:#b3262b;background:#fff}.icon-button svg{width:18px;height:18px;fill:currentColor}.icon-button:not(:disabled):hover{background:#fbeaea}.icon-button:disabled{cursor:not-allowed;color:#b8b8b4;border-color:#e5e5e3;background:#f7f7f6}@media(max-width:760px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid #e5e5e3}.filter-row,.form-grid,.form-grid.two-columns,.form-grid.four-columns,.summary-strip,.metric-grid,.detail-grid,.approval-figures{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column;padding:16px}.content{padding:16px}.journal-footer .button-row{justify-content:flex-start}.report-header-tabs{align-items:stretch;flex-wrap:wrap;gap:4px;border-bottom:0}.report-tab{border-bottom:1px solid #c3d8f7;border-radius:8px}.report-tab-spacer{display:none}.report-export-actions{width:100%;flex-wrap:wrap;margin:8px 0 0}.report-filter-row{flex-wrap:wrap;gap:10px}.report-zero-toggle{width:100%;margin-left:0;padding-left:0}.report-date-separator{display:none}}@media print{body{background:#fff}.sidebar,.topbar,.print-hide,.filter-row,.tab-row,.report-header-tabs,.report-filter-row{display:none!important}.app-shell{display:block}.content{padding:0}.section-panel{border:0;padding:0}}.ar-page .section-header{align-items:flex-start}.ar-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.ar-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px;box-shadow:0 1px 2px #0f172a0a}.ar-summary-card.danger{border-color:#fecaca;background:#fff7f7}.ar-summary-card span{display:block;color:#6b7280;font-size:12px;margin-bottom:6px}.ar-summary-card strong{display:block;color:#111827;font-size:18px}.ar-summary-card small{display:block;color:#6b7280;margin-top:4px}.ar-filter-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:16px 0}.ar-filter-bar input{flex:1;min-width:240px;border:1px solid #d1d5db;border-radius:999px;padding:10px 14px}.filter-pill{border:1px solid #d1d5db;background:#fff;border-radius:999px;padding:8px 12px;color:#374151;cursor:pointer}.filter-pill.active{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600}.tag-chip{display:inline-flex;align-items:center;border-radius:999px;background:#f3f4f6;color:#374151;padding:3px 9px;font-size:12px;font-weight:600}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;background:#f3f4f6;color:#374151}.status-badge.open,.status-badge.unpaid,.status-badge.issued{background:#eff6ff;color:#1d4ed8}.status-badge.partial,.status-badge.overpaid{background:#faf5ff;color:#7e22ce}.status-badge.overdue{background:#fef2f2;color:#dc2626}.status-badge.closed,.status-badge.paid{background:#f0fdf4;color:#16a34a}.status-badge.draft{background:#f3f4f6;color:#6b7280}.ar-row-overdue td{background:#fff1f2}.ar-table-wrap tbody tr{cursor:pointer}.ar-detail-header h2{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ar-overdue-banner,.success-banner{display:flex;flex-direction:column;gap:4px;border-radius:14px;padding:14px 16px;margin:14px 0}.ar-overdue-banner{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.success-banner{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.termin-card-list{display:grid;gap:12px}.termin-card{border:1px solid #e5e7eb;border-radius:14px;background:#fff;overflow:hidden}.termin-card header{display:flex;justify-content:space-between;gap:12px;padding:14px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.termin-card header div{display:flex;flex-direction:column;gap:3px}.termin-card header span{color:#6b7280;font-size:12px}.termin-card.paid header{background:#f0fdf4;border-color:#bbf7d0}.termin-card.overdue header{background:#fef2f2;border-color:#fecaca}.termin-card.partial header,.termin-card.overpaid header{background:#faf5ff;border-color:#e9d5ff}.termin-amount-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px}.amount-block{border:1px solid #e5e7eb;border-radius:12px;padding:12px;background:#fafafa}.amount-block span{display:block;color:#6b7280;font-size:12px;margin-bottom:6px}.amount-block strong{font-size:16px;color:#111827}.text-blue{color:#2563eb!important}.termin-card footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 16px 16px;color:#4b5563}.primary-button.small{padding:7px 10px;font-size:12px}.payment-history{border-top:1px dashed #e5e7eb;padding:10px 16px;color:#4b5563;font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#0f172a61;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.modal-card{width:min(640px,100%);background:#fff;border-radius:18px;border:1px solid #e5e7eb;padding:20px;box-shadow:0 20px 45px #0f172a2e}.warning-panel{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;padding:12px 14px;margin:14px 0;color:#92400e}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}@media(max-width:900px){.ar-summary-grid,.termin-amount-grid{grid-template-columns:1fr}.termin-card footer{align-items:flex-start;flex-direction:column}}.payment-modal{width:min(720px,100%)}.payment-preview{border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin:14px 0;background:#f9fafb;display:grid;gap:10px}.payment-preview div{display:flex;justify-content:space-between;gap:12px;color:#4b5563}.payment-preview-total{border-top:1px solid #e5e7eb;padding-top:10px;font-weight:700}.payment-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-form-grid label,.payment-amount-field,.file-drop-zone{display:flex;flex-direction:column;gap:6px;margin-top:12px;color:#374151;font-size:13px;font-weight:600}.payment-form-grid input,.payment-form-grid select,.payment-amount-field input{border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font:inherit}.payment-amount-field input{font-size:24px;font-weight:700}.payment-validation{border-radius:10px;padding:9px 11px;margin:8px 0 0;font-size:13px}.payment-validation.ok{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.payment-validation.warn,.payment-warning-box{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.payment-warning-box{border-radius:12px;padding:12px 14px;margin-top:10px}.file-drop-zone{border:1px dashed #cbd5e1;border-radius:14px;padding:12px;background:#f8fafc}.text-button.inline{display:inline;padding:0;vertical-align:baseline}@media(max-width:700px){.payment-form-grid{grid-template-columns:1fr}}.rab-ar-cta{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid #bfdbfe;background:#eff6ff;border-radius:16px;padding:16px;margin:16px 0}.rab-ar-cta.linked{border-color:#bbf7d0;background:#f0fdf4}.rab-ar-cta p{margin:4px 0 0;color:#475569}.rab-receivable-modal{width:min(980px,100%);max-height:92vh;overflow:auto}.rab-modal-section{border:1px solid #e5e7eb;border-radius:14px;padding:14px;margin:14px 0;background:#fff}.rab-modal-section h4{margin:0 0 12px;color:#111827}.segmented-control{display:inline-flex;gap:4px;padding:4px;border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;margin-bottom:12px}.segmented-control button{border:0;border-radius:999px;padding:8px 12px;background:transparent;color:#1e3a8a;cursor:pointer}.segmented-control button.active{background:#2563eb;color:#fff;box-shadow:0 1px 3px #2563eb40}.amount-grid.compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.radio-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;color:#374151}.radio-row label{display:inline-flex;align-items:center;gap:8px}.compact-header{margin-bottom:10px}.compact-header h4{margin:0}.rab-termin-table input{min-width:140px}.rab-termin-table td:nth-child(4){min-width:260px}.balance-panel{display:grid;grid-template-columns:minmax(120px,1fr) 2fr minmax(120px,1fr);align-items:center;gap:12px;border-radius:12px;padding:12px;margin-top:12px;background:#f8fafc;border:1px solid #e5e7eb}.balance-panel span{display:block;color:#64748b;font-size:12px}.balance-panel strong{color:#0f172a}.balance-panel.ok{border-color:#bbf7d0;background:#f0fdf4}.balance-panel.warning{border-color:#fde68a;background:#fffbeb}.warning-text{color:#92400e;margin:8px 0 0}@media(max-width:760px){.rab-ar-cta{align-items:stretch;flex-direction:column}.amount-grid.compact,.balance-panel{grid-template-columns:1fr}}
