:root{color-scheme:light;--ink:#17324d;--muted:#627386;--line:#d8e1e8;--soft:#f3f6f8;--paper:#ffffff;--brand:#147eb3;--brand-strong:#0b5f8c;--brand-soft:#e8f5fb;--nav:#123f5f;--nav-hover:#0d527b;--warn:#a35d08;--danger:#b42318;--shadow:0 1px 2px rgba(15,47,69,.08),0 5px 16px rgba(15,47,69,.05)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:#eef2f5;color:var(--ink)}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:var(--brand-strong)}.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}.app-shell{min-height:100vh}.one-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:50;color:white;background:var(--nav);box-shadow:0 1px 4px rgba(7,37,56,.22)}.topbar-primary{height:58px;max-width:1600px;margin:0 auto;padding:0 22px;display:flex;align-items:stretch;gap:7px}.app-brand{display:flex;align-items:center;gap:8px;padding:0 9px 0 2px;color:white;text-decoration:none}.app-brand-mark{width:31px;height:31px;border-radius:9px;background:#44c1e8;color:#07324e;display:grid;place-items:center;font-weight:850;font-size:19px}.app-brand-name{font-size:18px;font-weight:760;letter-spacing:-.02em}.book-switcher{position:relative;display:flex;align-items:center;min-width:190px;max-width:255px;margin:8px 8px 8px 0;border-left:1px solid rgba(255,255,255,.2);padding-left:10px}.book-avatar{flex:0 0 auto;width:28px;height:28px;margin-right:7px;border-radius:6px;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff;font-size:10px;font-weight:750}.book-switcher select{width:100%;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:white;background:transparent;border:0;outline:0;padding:8px 22px 8px 0;font-size:13px;font-weight:650;text-overflow:ellipsis;cursor:pointer}.book-switcher:after{content:"⌄";position:absolute;right:6px;pointer-events:none;color:#cae6f5}.book-switcher select option{color:var(--ink);background:white}.top-navigation{min-width:0;display:flex;align-items:stretch}.top-home,.top-menu>summary{height:58px;display:flex;align-items:center;gap:4px;padding:0 10px;color:#e6f1f7;text-decoration:none;font-size:13px;font-weight:620;cursor:pointer;list-style:none;white-space:nowrap;border-bottom:3px solid transparent}.top-menu>summary::-webkit-details-marker{display:none}.top-home:hover,.top-menu>summary:hover,.top-menu[open]>summary{color:white;background:var(--nav-hover)}.top-home.active,.top-menu.active>summary{color:white;border-bottom-color:#47c4ea}.menu-chevron{margin-left:1px;color:#a9cfdf}.top-menu{position:relative}.top-menu-popover{position:absolute;top:calc(100% + 1px);left:0;min-width:270px;padding:7px;border:1px solid #ccd9e2;border-radius:0 0 7px 7px;background:white;box-shadow:0 12px 30px rgba(18,63,95,.2);z-index:80}.top-menu-popover.align-right{left:auto;right:0}.top-menu-popover a{display:flex;flex-direction:column;gap:2px;padding:9px 11px;color:var(--ink);text-decoration:none;border-radius:5px;font-size:13px;font-weight:630}.top-menu-popover a.current,.top-menu-popover a:hover{background:var(--brand-soft);color:var(--brand-strong)}.top-menu-popover small{color:var(--muted);font-size:11px;font-weight:450}.topbar-tools{margin-left:auto;display:flex;align-items:stretch}.profile-chip,.top-icon-button,.topbar-tools .top-menu>summary{min-width:39px;height:58px;justify-content:center;padding:0 8px;display:flex;align-items:center;color:white;text-decoration:none;font-weight:750}.profile-chip:hover,.top-icon-button:hover{background:var(--nav-hover)}.create-menu>summary{font-size:25px;font-weight:350!important}.profile-chip{align-self:center;width:32px;min-width:32px;height:32px;margin-left:5px;border-radius:50%;background:#e2f2fa;color:#164c6b;font-size:11px}.mobile-menu-button,.mobile-navigation{display:none}.app-main{width:100%;max-width:1420px;margin:0 auto;padding:30px 32px 54px}.page-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.page-title{font-size:27px;line-height:1.2;margin:0;color:#15324a;letter-spacing:-.025em;font-weight:690}.page-intro{color:var(--muted);margin:7px 0 24px;max-width:760px;font-size:14px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:20px}.panel+.panel{margin-top:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px}.grid-2,.grid-3{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px}.metric{background:white;border:1px solid var(--line);border-radius:7px;padding:16px}.metric-label{color:var(--muted);font-size:12px;font-weight:650}.metric-value{margin-top:5px;font-size:23px;font-weight:760;letter-spacing:-.025em}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;background:var(--soft);color:var(--muted);font-size:11px;font-weight:650}.status-pill.good{background:#e8f6ef;color:#176b46}.empty-state{padding:34px 20px;border:1px dashed #cbd6de;border-radius:7px;background:#fbfcfd}.empty-state,.loading-state{text-align:center;color:var(--muted)}.loading-state{padding:70px 20px}.notice{border-radius:6px;background:var(--soft);color:#344b5d;padding:10px 12px;font-size:13px;margin:12px 0}.notice.error{background:#fff0ef;color:var(--danger)}.form-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.field{display:grid;grid-gap:5px;gap:5px;color:var(--muted);font-size:12px}.field input,.field select,.field textarea{color:var(--ink);min-height:39px;min-width:180px;padding:8px 10px;border:1px solid #c4d0d9;border-radius:5px;background:white;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(20,126,179,.12)}.btn{min-height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--brand-strong);border-radius:5px;background:var(--brand);color:white;padding:8px 14px;cursor:pointer;font-weight:680;font-size:13px;text-decoration:none}.btn:hover{background:var(--brand-strong)}.btn.secondary{background:white;color:var(--brand-strong);border-color:#aebfcb}.btn.secondary:hover{background:#f5f8fa}.btn.danger{background:white;color:var(--danger);border-color:#e8b8b3}.btn:disabled{opacity:.45;cursor:not-allowed}.data-table{width:100%;border-collapse:collapse}.data-table th{color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:700;text-align:left;border-bottom:1px solid var(--line);padding:10px 9px}.data-table td{border-bottom:1px solid #e8eef2;padding:11px 9px;font-size:13px;vertical-align:top}.data-table tbody tr:hover{background:#f7fafb}.data-table tr:last-child td{border-bottom:0}.text-right{text-align:right!important}.link-button{border:0;background:transparent;color:var(--brand-strong);padding:0;font:inherit;font-weight:650;cursor:pointer;text-align:left}.link-button:hover{text-decoration:underline}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px}.tab{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:10px 12px;cursor:pointer;font-weight:650}.tab.active{color:var(--brand-strong);border-color:var(--brand)}.dashboard-page{max-width:1180px;margin:0 auto}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.overview-column,.overview-grid{display:grid;grid-gap:20px;gap:20px}.overview-card{overflow:hidden;background:white;border:1px solid #d2dde5;border-radius:8px;box-shadow:var(--shadow)}.overview-card-header{min-height:51px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;border-bottom:1px solid #e3e9ed}.overview-card-header>a{color:#153d58;text-decoration:none;font-size:16px;font-weight:720}.overview-card-header>a:hover{color:var(--brand);text-decoration:underline}.overview-card-body{padding:18px}.card-kebab,.card-period{color:var(--muted);font-size:11px}.balance-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.balance-row div{display:grid;grid-gap:4px;gap:4px}.balance-row span{color:var(--muted);font-size:12px}.balance-row strong{color:#15324a;font-size:22px;font-weight:690}.reconciliation-state{display:flex;justify-content:space-between;margin:18px -18px 0;padding:11px 18px;border-top:1px solid #e4ebef;background:#fff8e8;color:#815c08;font-size:12px;font-weight:650}.reconciliation-state.reconciled{background:#eaf7f0;color:#176b46}.card-actions{display:flex;gap:8px;margin-top:15px}.empty-card{display:grid;justify-items:start;grid-gap:8px;gap:8px;color:var(--muted);font-size:13px}.empty-card strong{color:var(--ink)}.hero-number{color:#15324a;font-size:31px;font-weight:690;letter-spacing:-.025em}.document-summary{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;margin:14px 0}.document-summary>div{display:grid;grid-gap:2px;gap:2px}.document-summary strong{font-size:13px}.comparison-row,.document-summary span{color:var(--muted);font-size:11px}.mini-bar-track{display:block;overflow:hidden;height:8px;background:#e8eef2;border-radius:20px}.mini-bar{display:block;height:100%;border-radius:inherit;background:#388fbd}.mini-bar.teal{background:#3eaa93}.mini-bar.amber{background:#e0a536}.cashflow-lines{display:grid;grid-gap:15px;gap:15px}.cashflow-lines>div{display:grid;grid-template-columns:62px minmax(70px,1fr) auto;grid-gap:10px;gap:10px;align-items:center;font-size:12px}.cashflow-lines>div>span:first-child{color:var(--muted)}.cashflow-lines strong{font-size:12px}.comparison-row{display:flex;justify-content:space-between;margin-top:5px}.card-footer-link{margin:17px -18px -18px;padding:12px 18px;border-top:1px solid #e4ebef;background:#fafcfd;font-size:12px;font-weight:650}.card-footer-link a{text-decoration:none}.task-list{list-style:none;margin:-18px;padding:0}.task-list li+li{border-top:1px solid #e4ebef}.task-list a{display:grid;grid-template-columns:34px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:13px 18px;color:var(--ink);text-decoration:none}.task-list a:hover{background:#f5f9fb}.task-list a>span:nth-child(2){display:grid;grid-gap:2px;gap:2px}.task-list small{color:var(--muted)}.task-count{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand-strong);font-size:12px;font-weight:750}.settings-page{max-width:1140px;margin:0 auto}.settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.settings-search{width:min(340px,40vw);height:40px;display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #b9c9d4;border-radius:5px;background:white;color:var(--muted)}.settings-search:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(20,126,179,.12)}.settings-search input{width:100%;border:0;outline:0;color:var(--ink);background:transparent}.settings-shortcuts{display:flex;flex-wrap:wrap;gap:5px 18px;margin:0 0 24px;padding:11px 14px;border:1px solid var(--line);border-radius:6px;background:white}.settings-shortcuts a{color:var(--brand-strong);text-decoration:none;font-size:12px;font-weight:650}.settings-shortcuts a:hover{text-decoration:underline}.settings-groups{display:grid;grid-gap:26px;gap:26px}.settings-group{scroll-margin-top:76px}.settings-group h2{margin:0 0 9px;color:#15324a;font-size:17px;font-weight:710}.settings-list{overflow:hidden;border:1px solid #cdd9e1;border-radius:6px;background:white;box-shadow:0 1px 2px rgba(15,47,69,.04)}.settings-row{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;color:var(--ink);text-decoration:none}.settings-row+.settings-row{border-top:1px solid #dfe6eb}.settings-row:hover{background:#f5f9fb}.settings-row>span:first-child{display:grid;grid-gap:4px;gap:4px}.settings-row strong{color:var(--brand-strong);font-size:14px}.settings-row small{color:#536a7b;font-size:12.5px;line-height:1.4}.settings-row-end{display:flex;align-items:center;gap:13px;color:#7890a0}.settings-row-end b{font-size:21px;font-weight:400}.settings-row.disabled{opacity:.55;pointer-events:none}.settings-profile-prompt{margin:28px 0 0;color:var(--muted);font-size:13px;text-align:center}.organisation-settings-page{max-width:1120px;margin:0 auto}.back-link{display:inline-block;margin-bottom:16px;text-decoration:none;font-size:13px;font-weight:650}.settings-form-section{scroll-margin-top:78px}.settings-form-section>h2{margin:0;color:#15324a;font-size:18px}.settings-form-section>p{margin:6px 0 18px;color:var(--muted);font-size:13px}.settings-form-section .grid-3{align-items:start}.settings-form-section .field input,.settings-form-section .field select,.settings-form-section .field textarea{width:100%;min-width:0}.settings-save-bar{position:-webkit-sticky;position:sticky;bottom:16px;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0;padding:11px 14px;border:1px solid #b7c8d4;border-radius:7px;background:rgba(255,255,255,.96);box-shadow:0 6px 24px rgba(15,47,69,.14);color:var(--muted);font-size:12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.create-book{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}.create-book summary{cursor:pointer;color:var(--brand-strong);font-size:13px;font-weight:680}.create-book .form-row{margin-top:15px}.transactions-page{max-width:1380px;margin:0 auto}.transaction-exports{display:flex;align-items:center;gap:7px}.transaction-exports>span{color:var(--muted);font-size:12px;margin-right:2px}.transaction-exports .btn{min-height:34px;padding:6px 10px}.transaction-filters{margin-bottom:18px}.transaction-search{flex:1 1;min-width:260px}.transaction-search input{width:100%}.more-filters{margin-top:13px;border-top:1px solid var(--line);padding-top:11px}.more-filters summary{width:max-content;cursor:pointer;color:var(--brand-strong);font-size:12px;font-weight:680}.more-filters .form-row{margin-top:11px}.tag-editor{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:18px;border-color:#9ecce2}.tag-editor>div:first-child{display:grid;grid-gap:3px;gap:3px;min-width:180px}.tag-editor>div:first-child span{color:var(--muted);font-size:12px}.transaction-report{padding:0;overflow:hidden}.transaction-report-meta{min-height:58px;padding:11px 16px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);background:#fafcfd}.transaction-report-meta>div:first-child{display:grid;grid-gap:2px;gap:2px}.transaction-report-meta>div:first-child span{color:var(--muted);font-size:11px}.transaction-report-meta>div:last-child{display:flex;gap:18px;color:var(--muted);font-size:11px}.transaction-report-meta>div:last-child strong{color:var(--ink);margin-left:3px}.table-scroll{overflow-x:auto}.account-transactions-table{min-width:1320px}.account-transactions-table th{white-space:nowrap;background:white;position:-webkit-sticky;position:sticky;top:58px;z-index:2}.account-transactions-table td{font-size:12px}.account-transactions-table td:nth-child(2){min-width:135px}.account-transactions-table td:nth-child(2) span{display:block;color:var(--muted);margin-top:2px}.account-transactions-table td:nth-child(3){min-width:245px}.account-transactions-table td:nth-child(3)>strong{display:block;margin-top:5px}.account-transactions-table td:nth-child(3)>small{display:block;margin-top:3px;color:var(--muted)}.amount-cell{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.backup-stack,.tag-stack{min-width:125px;display:grid;justify-items:start;grid-gap:5px;gap:5px}.tag-stack .status-pill{white-space:nowrap}.backup-stack .link-button{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.backup-upload{position:relative;overflow:hidden;color:var(--brand-strong);font-size:11px;font-weight:680;cursor:pointer}.backup-upload.busy{color:var(--muted);cursor:wait}.backup-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}.document-overview-metrics{margin:16px 0 18px}.metric-note,.muted-line{margin-top:4px;color:var(--muted);font-size:12px}.report-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:18px 0}.report-directory-card{min-height:86px;display:grid;grid-template-columns:1fr auto;align-content:center;grid-gap:5px 12px;gap:5px 12px;padding:14px 15px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);text-decoration:none;box-shadow:0 1px 3px rgba(15,47,69,.05);font:inherit;text-align:left;cursor:pointer}.report-directory-card:hover{border-color:#70b8d7;box-shadow:0 4px 12px rgba(15,47,69,.09)}.report-directory-card.active{border-color:var(--brand);background:#eef8fc;box-shadow:inset 0 0 0 1px var(--brand)}.report-directory-card strong{color:var(--brand-strong)}.report-directory-card span{grid-column:1;color:var(--muted);font-size:12px;line-height:1.35}.report-directory-card b{grid-column:2;grid-row:1/span 2;align-self:center;color:var(--brand);font-size:20px}.report-catalogue-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:20px 0;padding:15px;border:1px solid var(--line);border-radius:7px;background:white}.report-catalogue-tools .field{width:min(460px,100%)}.report-description-toggle{display:inline-flex;align-items:center;gap:8px;padding-bottom:9px;font-weight:650;white-space:nowrap}.report-group{margin:22px 0}.report-group-heading{margin-bottom:9px}.report-group-heading h2{margin:0;font-size:18px}.report-group-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.report-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line);border-radius:7px;overflow:hidden;background:white}.report-list-item{position:relative;min-height:64px;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:12px 42px 12px 15px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}.report-list-item:nth-child(odd){border-right:1px solid var(--line)}.report-list-item:hover{background:#f3fafd}.report-list-item strong{color:var(--brand-strong)}.report-list-item span{color:var(--muted);font-size:12px}.report-list-item b{position:absolute;right:15px;top:50%;translate:0 -50%;color:var(--brand);font-size:20px}.report-breadcrumb{display:flex;gap:8px;align-items:center;margin-bottom:10px;color:var(--muted);font-size:13px}.report-breadcrumb a{color:var(--brand-strong)}.data-table .report-group-row,.data-table .report-group-row:hover{background:#f3f7f9}.data-table .report-group-row td{padding-top:14px;color:var(--brand-strong)}.data-table .report-total-row td{border-top:1px solid #cbd9e1}.financial-bars{display:grid;grid-gap:9px;gap:9px;margin:16px 0 20px;padding:14px;border:1px solid var(--line);border-radius:6px;background:#fafcfd}.financial-bar-row{display:grid;grid-template-columns:90px minmax(120px,1fr) 110px;align-items:center;grid-gap:12px;gap:12px;font-size:12px}.financial-bar-row>div{height:13px;overflow:hidden;border-radius:2px;background:#e8eef2}.financial-bar{display:block;height:100%;border-radius:inherit;background:var(--brand)}.financial-bar.teal{background:#21a584}.financial-bar.amber{background:#e3a12b}.financial-bar.red{background:#cf4e4e}.button-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.bank-account-form{margin-top:18px}.bank-account-form h2{margin:0;font-size:19px}.bank-account-form p{margin:4px 0 0;color:var(--muted)}.bank-account-form .form-row{margin-top:16px;align-items:flex-end}.bank-empty{margin-top:20px}.bank-empty h2{margin:0 0 5px;color:var(--ink)}.bank-empty p{margin:0 0 16px}.bank-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px;margin-top:20px}.bank-account-card{position:relative;overflow:visible;padding:18px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 2px 8px rgba(15,47,69,.07)}.bank-account-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-height:48px}.bank-account-card h2{margin:0;font-size:18px;color:var(--brand-strong)}.bank-account-card header a{text-decoration:none}.bank-account-card header p{margin:5px 0 0;color:var(--muted);font-size:12px}.bank-manage-menu{position:relative;z-index:2}.bank-manage-menu summary{list-style:none;cursor:pointer;padding:7px 11px;border:1px solid var(--line);border-radius:5px;color:var(--brand-strong);font-size:13px;font-weight:700}.bank-manage-menu summary::-webkit-details-marker{display:none}.bank-manage-menu[open] summary{border-color:var(--brand);background:#eef8fc}.bank-manage-menu>div{position:absolute;right:0;top:calc(100% + 5px);width:225px;padding:6px;border:1px solid var(--line);border-radius:6px;background:white;box-shadow:0 10px 28px rgba(15,47,69,.18)}.bank-manage-menu a,.bank-manage-menu button{display:block;width:100%;padding:9px 10px;border:0;border-radius:4px;background:none;color:var(--ink);font:inherit;font-size:13px;text-align:left;text-decoration:none;cursor:pointer}.bank-manage-menu a:hover,.bank-manage-menu button:hover{background:var(--soft)}.bank-manage-menu .danger-text{color:var(--danger)}.bank-balance-list{margin:17px -18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.bank-balance-list>div{display:grid;grid-template-columns:1fr auto;grid-gap:16px;gap:16px;padding:11px 18px}.bank-balance-list>div+div{border-top:1px solid #edf1f3}.bank-balance-list span{color:var(--muted);font-size:13px}.bank-balance-list strong{font-size:15px}.bank-rec-state{display:flex;justify-content:space-between;gap:12px;min-height:38px;margin:14px 0 10px;padding:9px 10px;border-radius:5px;background:#edf8f4;color:#176648;font-size:12px}.bank-rec-state.mismatch{background:#fff0ef;color:var(--danger)}.bank-primary-action{width:100%;justify-content:center;text-align:center}.modal-backdrop{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:20px;background:rgba(10,38,56,.45)}.modal-card{width:min(480px,100%);margin:0;box-shadow:0 18px 50px rgba(10,38,56,.24)}.modal-card h2{margin-top:0}.modal-card .button-row{margin-top:18px}.bank-account-context{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) auto;grid-gap:0;gap:0;align-items:center;margin:18px 0;padding:0 14px;border:1px solid var(--line);border-radius:7px;background:white}.bank-account-context>div:not(.button-row){display:grid;grid-gap:3px;gap:3px;min-height:64px;align-content:center;padding:9px 14px;border-right:1px solid var(--line)}.bank-account-context span{color:var(--muted);font-size:12px}.bank-account-context strong{font-size:15px}.bank-account-context .button-row{padding-left:16px}.reconcile-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0 10px}.reconcile-heading h2{margin:0;font-size:18px}.reconcile-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.reconcile-list{display:grid;grid-gap:14px;gap:14px}.reconcile-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 2px 7px rgba(15,47,69,.06)}.reconcile-card>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 17px;border-bottom:1px solid var(--line);background:#f7fafb}.reconcile-card header span{color:var(--muted);font-size:12px}.reconcile-card h3{margin:3px 0 0;font-size:16px}.reconcile-card header>strong{font-size:18px}.money-out{color:var(--danger)}.money-in{color:#147251}.reconcile-fields{display:grid;grid-template-columns:1.25fr 1.25fr .8fr;grid-gap:13px;gap:13px;padding:15px 17px}.contact-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:6px 9px;gap:6px 9px;align-items:end}.contact-picker .link-button{margin-bottom:9px;white-space:nowrap}.reconcile-support{display:grid;grid-template-columns:1fr 1fr;grid-gap:15px;gap:15px;padding:14px 17px;border-top:1px solid #edf1f3;background:#fbfcfd}.reconcile-tags{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap}.reconcile-tags>strong{width:100%;font-size:12px}.reconcile-tags>span{color:var(--muted);font-size:12px}.reconcile-tags .field{min-width:150px}.reconcile-attachment{position:relative;display:grid;align-content:center;min-height:66px;padding:10px 13px;border:1px dashed #8bbbd0;border-radius:6px;background:#f5fbfd;cursor:pointer}.reconcile-attachment strong{font-size:12px}.reconcile-attachment span{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.reconcile-attachment input{position:absolute;inset:0;opacity:0;cursor:pointer}.reconcile-card footer{display:flex;justify-content:flex-end;padding:12px 17px;border-top:1px solid var(--line)}.reconcile-card footer select{min-width:150px}.match-suggestions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 17px;border-top:1px solid var(--line);background:#f5faf7}.bank-import-row{display:flex;align-items:center;gap:12px;margin:12px 0 18px}.bank-import-row span{color:var(--muted);font-size:13px}.statement-import-modal{width:min(680px,100%)}.statement-import-modal h2{margin-bottom:0}.statement-import-modal .page-heading-row>div{min-width:0}.statement-profile{width:min(300px,100%);margin:18px 0 12px}.statement-dropzone{position:relative;min-height:190px;display:grid;place-items:center;align-content:center;grid-gap:5px;gap:5px;padding:24px;border:2px dashed #78b6d2;border-radius:8px;background:#f5fbfd;color:var(--brand-strong);text-align:center;cursor:pointer;transition:.15s ease}.statement-dropzone.dragging,.statement-dropzone:hover{border-color:var(--brand);background:#e8f7fc;box-shadow:inset 0 0 0 2px rgba(0,127,178,.08)}.statement-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.statement-dropzone>span:not(.statement-drop-icon){color:var(--muted);font-size:13px}.statement-dropzone small{color:#78909e}.statement-drop-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#d7eff8;font-size:26px}.statement-file-list{margin-top:13px;border:1px solid var(--line);border-radius:6px}.statement-file-list>strong{display:block;padding:9px 12px;border-bottom:1px solid var(--line);background:#f7fafb;font-size:12px}.statement-file-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px}.statement-file-list>div+div{border-top:1px solid #edf1f3}.statement-file-list span{display:flex;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statement-file-list small{color:var(--muted)}.statement-import-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:16px}.financial-bar-row strong{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bank-account-tabs{display:flex;gap:0;margin:22px 0;border-bottom:1px solid var(--line);overflow-x:auto}.bank-account-tabs a{flex:0 0 auto;padding:12px 18px;border-bottom:3px solid transparent;color:var(--muted);font-weight:700;text-decoration:none}.bank-account-tabs a.active,.bank-account-tabs a:hover{border-bottom-color:var(--brand);color:var(--brand-strong)}.bank-statement-toolbar,.cash-coding-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 16px;padding:16px;border:1px solid var(--line);border-radius:7px;background:white}.cash-coding-table{min-width:1180px}.cash-coding-table select{min-width:145px}.bank-statement-table td strong,.cash-coding-table td strong{display:block}.bank-statement-table td small,.cash-coding-table td small{display:block;margin-top:3px;color:var(--muted)}.cash-coding-table tr.selected-row td{background:#eef8fd}.bank-statement-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 18px;border:1px solid var(--line);border-radius:7px;background:white;overflow:hidden}.bank-statement-summary>div{padding:16px 18px;border-right:1px solid var(--line)}.bank-statement-summary>div:last-child{border-right:0}.bank-statement-summary span{display:block;margin-bottom:5px;color:var(--muted);font-size:12px}.bank-statement-summary strong{font-size:19px}.bank-statement-filters{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.bank-statement-filters .field{min-width:145px;margin:0}.bank-statement-filters .field:first-child{min-width:250px}.bank-statement-table{min-width:1120px}.status-badge.unreconciled{background:#fff4d6;color:#7a5200}.status-badge.reconciled{background:#e6f7ef;color:#17683c}.status-badge.ignored{background:#eef1f4;color:#4d6071}.tracking-category-create{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.tracking-category-card h2,.tracking-category-create h2,.tracking-help h2{margin:0;font-size:18px}.tracking-category-card p,.tracking-category-create p{margin:5px 0 0;color:var(--muted);font-size:13px}.tracking-category-create .form-row{min-width:min(480px,100%)}.tracking-category-create .field{flex:1 1}.tracking-category-list{display:grid;grid-gap:14px;gap:14px;margin:16px 0}.tracking-category-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--line)}.tracking-option-list{display:flex;flex-wrap:wrap;gap:8px;min-height:44px;padding:14px 0}.tracking-option{display:inline-flex;align-items:center;min-height:31px;padding:5px 10px;border:1px solid #cbdbe4;border-radius:16px;background:#f5f9fb;font-size:13px}.tracking-option-add{align-items:flex-end;padding-top:13px;border-top:1px solid var(--line)}.tracking-option-add .field{flex:1 1}.tracking-help .grid-3{margin-top:14px}.tracking-help .grid-3>div{display:grid;grid-gap:4px;gap:4px}.tracking-help .grid-3 span{color:var(--muted);font-size:13px;line-height:1.45}.journal-tracking{display:grid;grid-gap:10px;gap:10px;margin-top:14px;padding:13px 15px;border:1px solid var(--line);border-radius:7px;background:#f7fafb}.journal-tracking>div:first-child{display:flex;align-items:baseline;gap:10px}.journal-tracking>div:first-child span{color:var(--muted);font-size:12px}.journal-tracking .form-row{margin:0}.journal-tracking .field{min-width:180px}.opening-balances-page{max-width:1120px;margin:0 auto}.opening-steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:0;gap:0;margin:22px 0 16px;padding:0;list-style:none}.opening-steps li{position:relative;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;font-weight:680}.opening-steps li:not(:last-child):after{content:"";height:2px;flex:1 1;margin-right:9px;background:#d6e0e6}.opening-steps b{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#dce6ec;color:#5a7180}.opening-steps .active{color:var(--brand-strong)}.opening-steps .active b{background:var(--brand);color:white}.opening-steps .done b{background:#21946f;color:white}.opening-steps .done:not(:last-child):after{background:#75c3aa}.opening-upload-card{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:22px;gap:22px;align-items:center}.opening-review-card h2,.opening-upload-card h2{margin:0 0 7px;font-size:18px}.opening-upload-card p{margin:0;color:var(--muted);line-height:1.55}.file-drop{min-height:132px;display:grid;place-items:center;align-content:center;grid-gap:4px;gap:4px;padding:18px;border:2px dashed #8bbbd0;border-radius:8px;background:#f6fbfd;color:var(--brand-strong);text-align:center;cursor:pointer}.file-drop:hover{border-color:var(--brand);background:#eef8fc}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop-icon{font-size:27px;line-height:1}.file-drop small{color:var(--muted)}.opening-date-row{grid-column:1/-1;padding-top:17px;border-top:1px solid var(--line)}.opening-date-row .btn{align-self:end}.opening-review-card .grid-3{margin:15px 0}.opening-balance-table{min-width:720px}.opening-balance-table .changed-row{background:#fffaf0}.error-text{color:#b3261e}.opening-confirm{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:14px;border:1px solid #9ecce2;border-radius:7px;background:#f3fafd}.opening-confirm label{font-weight:650}.opening-advanced summary{cursor:pointer;color:var(--brand-strong);font-weight:700}.advanced-content{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.advanced-content>p{color:var(--muted)}.coa-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:18px}.coa-toolbar .btn{text-decoration:none;white-space:nowrap}.coa-toolbar label.btn{position:relative;overflow:hidden;cursor:pointer}.coa-toolbar input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.coa-import-preview h2{margin:0;font-size:18px}.coa-import-preview .grid-3{margin:15px 0}.coa-import-preview .table-scroll{max-height:530px;overflow:auto;border:1px solid var(--line);border-radius:6px}.coa-import-preview .data-table{margin:0}.coa-add-account{margin-bottom:18px;border-bottom:1px solid var(--line)}.coa-add-account summary{width:max-content;margin-bottom:14px;color:var(--brand-strong);font-weight:700;cursor:pointer}.coa-bulkbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 12px;margin-bottom:8px;border:1px solid var(--line);border-radius:6px;background:#f7fafb}.coa-bulkbar>label{display:inline-flex;align-items:center;gap:8px;font-weight:650}.coa-bulkbar .muted-line{margin:0 auto 0 0}.coa-delete-confirm{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.coa-delete-confirm span{color:var(--danger)}.coa-select-column{width:32px}.coa-inline-editor{padding:7px 4px 10px}.coa-inline-editor h2{margin:0 0 12px;font-size:17px}.data-table .coa-edit-row,.data-table .coa-edit-row:hover{background:#eef7fc}.data-table .coa-edit-row td{border-bottom:2px solid #8fc7e3}.vat-overview-card{border-top:4px solid var(--brand)}.eyebrow{color:var(--muted);font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.vat-net{display:grid;grid-gap:3px;gap:3px;text-align:right}.vat-net span{color:var(--muted);font-size:12px}.vat-net strong{color:var(--brand-strong);font-size:28px}.vat-return-modal{width:min(1000px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:auto;padding:24px;border-radius:9px;background:white}.vat-return-actions{display:flex;justify-content:flex-end;gap:8px;margin:14px 0}.vat-checks{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:13px 15px;border:1px solid #a8d5c2;border-radius:7px;background:#f0faf6}.vat-checks.blocked{border-color:#e4b4ae;background:#fff5f3}.vat-checks>div:first-child{margin-right:auto}.vat-checks .status-pill{max-width:240px;white-space:normal}.status-pill.bad{background:#fee9e6;color:#a52b20}.vat-box-table td:first-child{width:54px}.vat-box-table td:nth-child(3){width:210px}.vat-box-table .link-button+.link-button{margin-left:14px}.vat-adjustment,.vat-drill{margin-top:18px;padding:16px;border:1px solid var(--line);border-radius:7px;background:#f8fafb}.vat-adjustment h3{margin-top:0}.vat-adjustment .form-row{align-items:flex-end}.vat-drill{background:white}@media print{body *{visibility:hidden}.vat-return-modal,.vat-return-modal *{visibility:visible}.vat-return-modal{position:absolute;inset:0;width:100%;max-height:none;overflow:visible;box-shadow:none}.modal-backdrop{position:static;padding:0;background:white}.vat-adjustment,.vat-drill,.vat-return-actions,.vat-return-modal>.page-heading-row .btn{display:none!important}}.budget-entry-table{min-width:1450px}.budget-entry-table input{width:74px}.report-column-toolbar{position:relative;display:flex;justify-content:flex-end;margin:10px 0}.report-column-editor{position:absolute;z-index:8;top:42px;right:0;width:280px;padding:13px;border:1px solid var(--line);border-radius:7px;background:white;box-shadow:0 10px 28px rgba(10,38,56,.18)}.report-column-editor>strong{display:block;margin-bottom:8px}.report-column-editor>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid #edf1f3}.report-column-editor span button{border:1px solid var(--line);background:white;cursor:pointer}.itsa-preview pre{max-height:360px;overflow:auto;padding:14px;border-radius:6px;background:#102d40;color:#e9f6fc;font-size:12px}.organisation-wizard-backdrop{z-index:100;padding:20px}.organisation-wizard{width:min(1080px,100%);max-height:calc(100vh - 40px);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;background:white;box-shadow:0 28px 90px rgba(10,38,56,.28)}.wizard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:23px 27px 19px;border-bottom:1px solid var(--line)}.wizard-header h2{margin:4px 0 3px;color:var(--ink);font-size:25px;letter-spacing:-.03em}.wizard-header p{margin:0;color:var(--muted);font-size:13px}.wizard-close{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.wizard-close:hover{border-color:var(--brand);color:var(--brand-strong)}.wizard-progress{height:3px;flex:0 0 auto;background:#e8eef2}.wizard-progress span{display:block;height:100%;background:var(--brand);transition:width .22s ease}.wizard-layout{min-height:0;flex:1 1;display:grid;grid-template-columns:238px minmax(0,1fr)}.wizard-steps{margin:0;padding:19px 13px;border-right:1px solid var(--line);background:#f8fafb;list-style:none}.wizard-steps li button{width:100%;display:flex;align-items:center;gap:11px;padding:10px;border:0;border-radius:9px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.wizard-steps li button:disabled{cursor:default}.wizard-steps li.active button{background:var(--brand-soft);color:var(--brand-strong)}.wizard-steps li.done button{color:#315d50}.wizard-steps b{width:27px;height:27px;flex:0 0 auto;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:white;font-size:11px}.wizard-steps .active b{border-color:var(--brand);background:var(--brand);color:white}.wizard-steps .done b{border-color:#9ed0bf;background:#e8f6ef;color:#176b46}.wizard-steps li span{min-width:0;display:grid;grid-gap:1px;gap:1px}.wizard-steps strong{font-size:12.5px;font-weight:680}.wizard-steps small{overflow:hidden;color:#8998a3;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.wizard-content{min-width:0;min-height:560px;display:flex;flex-direction:column;overflow-y:auto;padding:27px 30px 0}.wizard-content>.notice{margin-top:0}.wizard-step-panel{flex:1 1}.wizard-step-heading{margin-bottom:23px}.wizard-step-heading>span{color:var(--brand);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.wizard-step-heading h3{margin:5px 0;color:var(--ink);font-size:21px;letter-spacing:-.025em}.wizard-step-heading p{max-width:660px;margin:0;color:var(--muted);font-size:13px;line-height:1.45}.wizard-step-panel .grid-2{gap:17px 18px}.wizard-step-panel .field{align-content:start}.wizard-step-panel .field>small{color:#83939f;font-size:10px;font-weight:450}.wizard-span-2{grid-column:1/-1}.wizard-subsection{margin-top:21px;padding-top:20px;border-top:1px solid var(--line)}.wizard-actions{position:-webkit-sticky;position:sticky;bottom:0;min-height:71px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin:28px -30px 0;padding:14px 30px;border-top:1px solid var(--line);background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wizard-actions>div{display:flex;align-items:center;gap:16px}.wizard-skip{color:var(--muted);font-size:12.5px}.wizard-review{display:grid;grid-gap:12px;gap:12px}.wizard-review section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0 22px;gap:0 22px;padding:16px 18px;border:1px solid var(--line);border-radius:11px;background:#fafcfd}.wizard-review h4{grid-column:1/-1;margin:0 0 9px;color:var(--ink);font-size:13px}.wizard-review section>div{display:grid;grid-gap:2px;gap:2px;padding:7px 0;border-top:1px solid #e9eef1}.wizard-review section>div span{color:var(--muted);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.wizard-review section>div strong{overflow:hidden;color:var(--ink);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.public-payment-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#edf4f7}.public-payment-page .panel{width:min(560px,100%);padding:32px}.public-payment-page .app-logo-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:9px;background:var(--brand);color:white;font-size:22px;font-weight:800}@media (max-width:1190px){.topbar-primary{padding-inline:12px}.book-switcher{min-width:155px;max-width:185px}.top-home,.top-menu>summary{padding-inline:7px;font-size:12px}.topbar-tools .top-icon-button:nth-of-type(2),.topbar-tools .top-menu:nth-last-child(2){display:none}}@media (max-width:900px){.top-navigation,.topbar-tools{display:none}.mobile-menu-button{display:block;margin-left:auto;border:0;background:transparent;color:white;font-size:22px;cursor:pointer}.book-switcher{max-width:min(55vw,320px)}.mobile-navigation{display:grid;padding:8px 12px 14px;background:#0c3551;border-top:1px solid rgba(255,255,255,.12)}.mobile-navigation>.top-menu>summary,.mobile-navigation>a{height:auto;padding:11px 10px;color:white;text-decoration:none;border:0}.mobile-navigation .top-menu-popover{position:static;min-width:0;border-radius:6px;box-shadow:none;margin-bottom:5px}.bank-account-grid,.grid-2,.grid-3,.overview-grid,.report-directory,.report-list{grid-template-columns:1fr}.report-list-item:nth-child(odd){border-right:0}.report-catalogue-tools{align-items:flex-start;flex-direction:column}.report-description-toggle{padding-bottom:0}.bank-account-context{grid-template-columns:1fr 1fr;padding:0}.bank-account-context>div:not(.button-row){border-bottom:1px solid var(--line)}.bank-account-context .button-row{padding:12px 14px}.opening-upload-card,.reconcile-fields,.reconcile-support{grid-template-columns:1fr}.opening-date-row{grid-column:1}.opening-confirm{align-items:flex-start;flex-direction:column}.coa-toolbar{justify-content:flex-start}.bank-statement-toolbar,.cash-coding-toolbar{align-items:stretch;flex-direction:column}.bank-statement-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bank-statement-summary>div:nth-child(2){border-right:0}.bank-statement-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.tracking-category-create{align-items:stretch;flex-direction:column}.tracking-category-create .form-row{min-width:0}.app-main{padding:24px 18px 40px}.settings-heading{display:block}.settings-search{width:100%;margin-bottom:18px}.tag-editor{display:block}.tag-editor>.form-row{margin-top:12px}}@media (max-width:520px){.app-brand-name,.book-avatar{display:none}.book-switcher{min-width:0;max-width:calc(100vw - 112px)}.page-heading-row{display:block}.page-heading-row>.btn{margin-bottom:18px}.balance-row,.document-summary{grid-template-columns:1fr}.card-actions{flex-wrap:wrap}.settings-row{align-items:flex-start}.settings-row small{font-size:12px}.settings-shortcuts{display:none}.settings-save-bar{bottom:8px}.transaction-exports{margin-bottom:18px}.transaction-report-meta{align-items:flex-start;flex-direction:column}.transaction-report-meta>div:last-child{flex-wrap:wrap}.bank-account-context{grid-template-columns:1fr}.bank-account-context>div:not(.button-row){border-right:0}.reconcile-card footer{justify-content:flex-start}.contact-picker{grid-template-columns:1fr}.contact-picker .link-button{justify-self:start;margin-bottom:0}.organisation-wizard-backdrop{padding:0}.organisation-wizard{width:100%;height:100vh;max-height:none;border:0;border-radius:0}.wizard-header{padding:18px 17px 15px}.wizard-header h2{font-size:21px}.wizard-header p{font-size:11px}.wizard-layout{display:flex;flex-direction:column}.wizard-steps{display:flex;gap:5px;padding:10px 13px;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line)}.wizard-steps li{flex:0 0 auto}.wizard-steps li button{width:auto;padding:5px}.wizard-steps li span{display:none}.wizard-steps b{width:25px;height:25px}.wizard-content{min-height:0;padding:21px 17px 0}.wizard-review section,.wizard-step-panel .grid-2{grid-template-columns:1fr}.wizard-review h4,.wizard-span-2{grid-column:1}.wizard-actions{margin:25px -17px 0;padding:12px 17px}.wizard-actions>div{gap:9px}.wizard-skip{font-size:11px}}