:root{font-family:Inter,Segoe UI,sans-serif;color:#203c37;background:#f5f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0;background:#176354;color:#fff;padding:13px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:background .15s}button:hover{background:#104d41}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #d99c43;outline-offset:3px}h1,h2,p{margin-top:0}h1{font-size:38px;letter-spacing:-1.2px;line-height:1.2;margin-bottom:12px}h2{font-size:21px;letter-spacing:-.4px}p{line-height:1.65}label{display:block;font-size:14px;font-weight:600;margin-top:22px}input{display:block;width:100%;border:1px solid #cbd6cf;border-radius:7px;padding:13px 14px;margin-top:9px;background:#fff;color:#203c37}input:focus{outline:2px solid #82b7a6;outline-offset:1px}.muted,.help{color:#6c7d76}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#6b8d7e;margin-bottom:16px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-family:Georgia,serif;font-size:38px;font-weight:700}.brand span{font-family:Segoe UI,sans-serif;font-size:22px;letter-spacing:-.6px}.login-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.intro{background:#102f29;color:#f7f5e9;padding:52px 64px;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.intro h1{font-family:Georgia,serif;font-weight:400;font-size:54px;letter-spacing:-1.5px}.intro p:not(.eyebrow){max-width:420px;color:#b8cec3;font-size:17px}.intro .eyebrow{color:#b2c999}.intro small{color:#96b0a4}.login-panel{display:grid;place-items:center;padding:48px}.login-panel form{width:100%;max-width:360px}.login-panel h2{font-size:32px}.login-panel button{width:100%;margin-top:28px}.help{text-align:center;font-size:12px;margin-top:22px}.error{background:#fbece8;color:#9b3424;padding:14px 18px;border:1px solid #edc8bf;border-radius:8px;margin:16px 0;font-size:14px}.app-layout{display:grid;grid-template-columns:245px 1fr;min-height:100vh}aside{background:#102f29;color:#dae8df;padding:28px 22px;display:flex;flex-direction:column}.sidebar-label{font-size:10px;letter-spacing:1.5px;color:#90aa9e;margin-top:55px}.nav{text-align:left;background:transparent;font-size:14px}.nav.active{background:#24473b}.sidebar-foot{margin-top:auto;padding-top:40px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:11px;overflow-wrap:anywhere}.avatar{display:grid;place-items:center;border-radius:50%;width:30px;height:30px;background:#cbdac4;color:#24473b;font-weight:700}.logout{padding:8px 0;font-size:12px;background:none;color:#b8cec3}.workspace{padding:0 48px 40px;max-width:1600px;width:100%}header{height:86px;border-bottom:1px solid #dce4dd;display:flex;align-items:center;justify-content:space-between;color:#7a8d82;font-size:12px;margin-bottom:45px}.tag,.status{border:1px solid #d2dfd0;border-radius:20px;padding:6px 11px;font-size:11px;color:#6a7e65;background:#eef2e8}.page-title{display:flex;align-items:center;justify-content:space-between;gap:25px}.page-title button{flex-shrink:0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-top:40px;margin-bottom:22px}.section-heading h2{font-size:16px;margin:0}.section-heading span{font-size:12px;color:#78877f}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.company-card,.card{background:#fff;border:1px solid #dde5dd;border-radius:12px;padding:28px;text-align:left;color:#203c37}.company-card:hover{background:#fafdf9;border-color:#8eaf9b}.company-icon,.module-icon{display:grid;place-items:center;background:#edf2e9;color:#447358;width:46px;height:46px;border-radius:12px;font-size:17px;margin-bottom:24px}.company-card h2{font-size:20px}.company-card p,.card p{font-size:13px;font-weight:400;color:#7c8a81}.open-link{display:block;border-top:1px solid #edf0eb;padding-top:20px;margin-top:28px;font-size:12px;color:#176354}.notice{background:#edf1e9;border:1px solid #dfe6d9;border-radius:8px;padding:19px 22px;font-size:13px;color:#64765f;margin-top:35px;line-height:1.6}.empty{border:1px dashed #bfcebf;border-radius:12px;text-align:center;padding:55px 25px;background:#fafcf8}.empty-icon{font-size:38px;color:#739780;display:block;margin-bottom:18px}.empty p{color:#74866f;font-size:14px}.create-form{display:flex;align-items:flex-end;gap:12px;padding:24px;background:#fff;border:1px solid #dde5dd;border-radius:12px;margin-top:24px}.create-form label{margin:0;flex:1}.secondary{background:#edf1e9;color:#506a58}.back{padding:0;background:none;color:#557965;margin-bottom:30px;font-size:13px}.back:hover{background:none;color:#173e2a}.loading{display:grid;place-items:center;min-height:100vh;color:#64765f}@media(max-width:900px){.intro{padding:36px}.intro h1{font-size:42px}.workspace{padding:0 24px 30px}.app-layout{grid-template-columns:200px 1fr}.page-title{align-items:flex-start;flex-direction:column}.create-form{flex-wrap:wrap}.create-form label{flex-basis:100%}}@media(max-width:620px){.login-layout{grid-template-columns:1fr}.intro{min-height:auto;padding:28px;gap:30px}.intro h1{font-size:35px}.intro small{display:none}.login-panel{padding:38px 24px}.app-layout{display:block}aside{padding:15px 20px;gap:15px}.sidebar-label{display:none}.sidebar-foot{margin:0;padding:0}.brand{font-size:28px}.brand span{font-size:20px}.nav{padding:10px}.sidebar-foot .avatar{display:none}.logout{margin-left:auto}header{height:64px;margin-bottom:30px}.workspace h1{font-size:30px}.cards{grid-template-columns:1fr}}.member-form{background:#fff;border:1px solid #dde5dd;border-radius:12px;padding:28px;margin-top:28px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-columns label{margin:0}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.checkbox-label{display:flex;align-items:center;gap:10px;margin:0;font-size:13px;font-weight:400}.checkbox-label input{width:16px;height:16px;margin:0;accent-color:#176354}fieldset{min-width:0;max-width:100%;border:1px solid #dde5dd;border-radius:8px;padding:18px;margin:22px 0}legend{padding:0 7px;font-size:13px;color:#64765f}.member-list{display:grid;gap:18px}.member-list h2{font-size:17px;overflow-wrap:anywhere}@media(max-width:620px){.form-columns{grid-template-columns:1fr}.member-form{padding:20px}}select{font:inherit;display:block;width:100%;border:1px solid #cbd6cf;border-radius:7px;padding:12px;margin-top:9px;background:#fff;color:#203c37}select:focus{outline:2px solid #82b7a6}.year-selector{min-width:220px;margin:0}.table-wrap{overflow:auto;margin:24px 0;border:1px solid #dde5dd;border-radius:8px;background:#fff}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{background:#edf2e9;color:#57705d;font-size:12px}th,td{padding:13px 16px;border-bottom:1px solid #e8ede7}tbody tr:last-child td{border-bottom:0}.amount{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}tfoot th{border-top:2px solid #ccdbcb}.entry-lines{min-width:800px}.entry-lines input,.entry-lines select{margin:0;min-width:100px}.entry-lines td{padding:8px}.entry-lines td:first-child{min-width:220px}.entry-totals{display:flex;justify-content:flex-end;gap:30px;flex-wrap:wrap;padding:25px 0;font-size:14px}.entry-totals strong{display:block;font-size:22px;margin-top:7px}.small{padding:8px 12px;font-size:12px}.subheading{margin-top:32px}.filter-label{display:flex;align-items:center;gap:12px;margin:0}.filter-label select{width:auto;margin:0}.admin-actions{display:flex;gap:12px;flex-wrap:wrap}.danger{background:#9b3d30}.danger:hover{background:#7a2c22}.admin-filters{margin-top:25px}.report-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.report-filters label{margin:0}.report-empty{margin-top:22px}.report-actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}.accounting-report{margin-top:24px}.report-heading{margin:24px 0}.report-heading h2{font-size:28px}.report-heading p{margin-bottom:8px}.report-caption{font-size:12px;color:#64756b}.report-heading .eyebrow{font-size:13px}.report-heading-row{font-weight:700}.report-heading td{font-weight:700;background:#e8eee6}.report-opening td{font-style:italic;color:#596c60}.report-subtotal td,.report-total td{font-weight:700;background:#edf2e9;border-top:1px solid #a7b8a9}.report-total td{border-top:2px solid #738d79}@media(max-width:900px){.report-filters{grid-template-columns:1fr 1fr}}@media(max-width:620px){.report-filters{grid-template-columns:1fr}}@media print{@page{size:A4 landscape;margin:12mm}body{background:#fff;color:#000;font-size:9pt}.app-layout{display:block}aside,.workspace>header{display:none!important}.workspace{padding:0;max-width:none;width:100%}.accounting-module>:not(.report-panel){display:none!important}.report-panel>:not(.accounting-report){display:none!important}.accounting-report{margin:0}.report-heading h2{font-size:18pt}.accounting-report .table-wrap{overflow:visible;border:0;margin:12px 0;border-radius:0}.accounting-report table{font-size:8pt;width:100%}.accounting-report td,.accounting-report th{padding:5px 6px}.accounting-report thead{display:table-header-group}.accounting-report tr{break-inside:avoid}.accounting-report .report-heading{break-after:avoid}.report-caption{font-size:8pt;color:#333}.report-subtotal td,.report-total td,.report-heading td{color:#000}button{display:none!important}}.app-layout:has(.accounting-navigation)>aside{position:sticky;top:0;height:100dvh;align-self:start;overflow-y:auto;scrollbar-width:thin}.accounting-navigation{margin:14px -8px 22px;padding-bottom:16px;border-bottom:1px solid #355247}.accounting-navigation button{font:inherit;cursor:pointer;text-align:left;width:100%;border:0;border-radius:6px;line-height:1.45}.accounting-mobile-toggle{display:none!important}.accounting-navigation .accounting-menu-home{padding:10px 12px;background:transparent;color:#d6e5dc;font-size:12px;margin-bottom:8px}.accounting-navigation .accounting-menu-home.current{background:#24473b;color:#fff}.accounting-navigation .accounting-group-toggle{display:flex;align-items:center;gap:8px;padding:10px 8px;background:transparent;color:#c5d7cb;font-size:12px;font-weight:600}.accounting-menu-group.selected>.accounting-group-toggle{color:#fff}.accounting-menu-number{font-size:10px;display:grid;place-items:center;border:1px solid #456253;border-radius:4px;width:20px;height:20px;flex-shrink:0;color:#b6cab9}.accounting-menu-chevron{margin-left:auto;color:#94af9d}.accounting-menu-items{padding:3px 0 7px 28px}.accounting-navigation .accounting-menu-item{display:block;padding:9px 10px;margin:2px 0;background:transparent;color:#afc6b8;font-size:12px;font-weight:400;border-left:2px solid transparent;border-radius:0 5px 5px 0}.accounting-navigation .accounting-menu-item.current{background:#244b3f;color:#fff;border-left-color:#a6caa6;font-weight:600}.accounting-navigation button:hover:not(:disabled){background:#24473b;color:#fff}.accounting-navigation button:focus-visible{outline:2px solid #c3ddc2;outline-offset:2px}.accounting-navigation button:disabled{opacity:.55;cursor:wait}.accounting-breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:#728277;margin-bottom:20px}.accounting-breadcrumb button{padding:0;background:transparent;color:#416e59;font-size:12px;font-weight:500}.accounting-breadcrumb button:hover{background:transparent;text-decoration:underline}.accounting-screen-title:focus{outline:none}.accounting-screen-description{max-width:650px}.accounting-module>.page-title{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid #dce4dd}.accounting-menu-intro h2{font-size:21px;margin-bottom:9px}.accounting-menu-intro p{font-size:14px;color:#758479;margin-bottom:26px}.accounting-home-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.accounting-home-group{background:#fff;border:1px solid #dce5dc;border-radius:10px;padding:22px 24px}.accounting-home-group-heading{display:flex;align-items:center;gap:12px}.accounting-home-group-heading>span{display:grid;place-items:center;width:32px;height:32px;background:#edf2e9;border-radius:7px;color:#52785e;font-size:12px;font-weight:600;flex-shrink:0}.accounting-home-group h3{font-size:16px;margin:0}.accounting-home-group>p{font-size:12px;color:#748378;margin:14px 0 18px;line-height:1.5}.accounting-home-group ul{list-style:none;margin:0;padding:0;border-top:1px solid #e8eee5}.accounting-home-group li+li{border-top:1px solid #eef2eb}.accounting-home-group li button{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:11px 0;background:transparent;text-align:left;color:#285744;font-size:13px;font-weight:500;border-radius:0}.accounting-home-group li button:hover{background:#f5f8f2;color:#102f29}.accounting-home-group li button>span:last-child{color:#91a68e}@media(max-width:1000px){.accounting-home-groups{grid-template-columns:1fr}.accounting-navigation{margin-left:-10px;margin-right:-10px}.accounting-navigation .accounting-group-toggle{font-size:11px;gap:5px}.accounting-menu-items{padding-left:20px}}@media(max-width:620px){.app-layout:has(.accounting-navigation)>aside{position:static;height:auto;overflow:visible}.accounting-navigation{margin:0;padding:0;border:0}.accounting-mobile-toggle{display:flex!important;justify-content:space-between;padding:12px!important;background:#24473b;color:#fff;font-size:13px!important}.accounting-navigation-content{display:none;padding-top:10px}.accounting-navigation-content.mobile-open{display:block}.accounting-navigation .accounting-group-toggle{font-size:13px;padding:11px 10px}.accounting-menu-items{padding-left:30px}.accounting-navigation .accounting-menu-item{font-size:13px;padding:11px}.accounting-home-group{padding:20px}.accounting-module>.page-title{gap:15px}.accounting-module .year-selector{width:100%;min-width:0}.accounting-breadcrumb{font-size:11px;gap:7px}}@media print{.accounting-navigation,.accounting-breadcrumb,.accounting-home{display:none!important}.app-layout:has(.accounting-navigation)>aside{display:none!important}}.party-notes{display:block;width:100%;margin-top:9px;padding:12px;border:1px solid #cbd6cf;border-radius:7px;font:inherit;color:#203c37;resize:vertical}.reminder-addresses{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:30px 0;font-size:14px}.reminder-addresses p,.reminder-message{white-space:pre-line;line-height:1.7}.reminder-letter{background:#fff;padding:24px;border:1px solid #dce5dc;border-radius:8px}.reminder-addresses strong{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#627a68}@media(max-width:620px){.reminder-addresses{grid-template-columns:1fr}.reminder-letter{padding:16px}}@media print{@page reminder{size:A4 portrait;margin:18mm}.reminder-letter{page:reminder;padding:0;border:0}.reminder-addresses{grid-template-columns:1fr 1fr;font-size:10pt}.reminder-message{font-size:10pt}.reminder-letter .table-wrap{margin:18px 0}}.file-hash{overflow-wrap:anywhere;word-break:break-word;text-align:left}.pcg-modal{width:min(760px,92vw);max-height:85vh;border:1px solid #cbd5e1;border-radius:12px;padding:24px;overflow:auto}.pcg-modal::backdrop{background:#0f172a73}.pcg-modal fieldset{border:0;padding:0;min-width:0}.pcg-modal label{display:grid;gap:6px;margin:12px 0}.pcg-results{list-style:none;padding:0;max-height:240px;overflow:auto}.pcg-results button{text-align:left;width:100%;margin:3px 0}.pcg-modal details{margin:18px 0}.entry-lines td>small{display:block}.instrument-sheet{overflow-wrap:anywhere}@media print{@page instrument{size:A4 portrait;margin:18mm}.instrument-sheet{page:instrument}}.quick-entry{padding:20px}.quick-entry fieldset{border:0;padding:0;margin:16px 0}.entry-header{display:grid;grid-template-columns:minmax(170px,1fr) minmax(160px,1fr) 145px 140px minmax(170px,1.3fr);gap:12px}.entry-header label{margin:0}.quick-entry input,.quick-entry select{padding:9px 10px}.entry-models{margin-bottom:16px}.entry-models summary,.entry-party summary{cursor:pointer;color:#506a58}.entry-keyboard-help{font-size:12px;color:#506a58;margin:14px 0 8px}.quick-entry .table-wrap{margin:8px 0 12px}.quick-entry .entry-lines td{vertical-align:top;padding:7px}.quick-entry .entry-lines th{padding:10px 8px}.quick-entry .entry-lines td:first-child{width:28%}.quick-entry .entry-lines td:nth-child(2){width:36%}.quick-entry .entry-lines td:nth-child(3),.quick-entry .entry-lines td:nth-child(4){width:15%}.quick-entry .entry-lines td:nth-child(3) input,.quick-entry .entry-lines td:nth-child(4) input{text-align:right;font-variant-numeric:tabular-nums}.entry-party{font-size:11px;margin-top:4px}.entry-party label{margin-top:8px}.quick-entry .entry-lines tr:focus-within{background:#f0f7f3}.quick-entry .entry-totals{padding:12px 0}.quick-entry .entry-totals strong{font-size:18px}@media(max-width:1000px){.entry-header{grid-template-columns:1fr 1fr}}.annual-row{border:1px solid var(--line,#d7e0db);padding:1rem;margin:1rem 0;border-radius:8px}.annual-row legend{padding:0 .4rem}.annual-row input,.annual-row select,.annual-row textarea{max-width:100%}.annual-notes section{break-inside:auto}.annual-notes h3{break-after:avoid}@media print{.annual-cover,.annual-notes{break-before:page}.annual-cover{overflow-wrap:anywhere}.annual-notes p{orphans:3;widows:3}}@media print{.annual-dossier>article.accounting-report{break-before:page}.annual-dossier>article.annual-cover{break-before:auto}}@media print{:root{background:#fff!important}}.annual-row textarea,.result-decision textarea{display:block;width:100%;font:inherit;line-height:1.6;padding:12px 14px;margin-top:9px;border:1px solid #cbd6cf;border-radius:7px;background:#fff;color:#203c37;resize:vertical}.annual-row textarea:focus,.result-decision textarea:focus{outline:2px solid #82b7a6;outline-offset:1px}.annual-dossier .checkbox-label,.annual-row .checkbox-label{margin-top:16px;margin-bottom:16px}@media print{body:has(.print-selected) article.accounting-report:not(.print-selected){display:none!important}}.help-dialog{width:min(58rem,94vw);max-height:88dvh;box-sizing:border-box;padding:1.5rem;border:1px solid #c7d6d0;border-radius:12px;color:#182d26;background:#fff;margin:auto;overflow:auto}.help-dialog::backdrop{background:#132820aa}.help-dialog header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.help-dialog h2,.help-dialog h3{margin:0}.help-dialog label{display:grid;gap:.3rem}.help-layout{display:grid;grid-template-columns:minmax(12rem,1fr) 2fr;gap:1.5rem;margin-top:1rem}.help-layout nav{display:grid;align-content:start;max-height:48vh;overflow:auto;gap:.2rem}.help-layout nav button{background:#fff;color:#244137;text-align:left;border:1px solid transparent;padding:.5rem}.help-layout nav button[aria-current]{background:#e4efe8;border-color:#aac3b3}.help-layout article p{color:#476358}.help-layout li{margin:.65rem 0;line-height:1.5}.help-layout ol{padding-left:1.4rem}@media(max-width:680px){.help-dialog{padding:1rem}.help-layout{grid-template-columns:1fr;gap:1rem}.help-layout nav{max-height:19vh}.help-dialog h2{font-size:1.2rem}}.monthly-match td small{display:block;color:#52635b}.monthly-match table{min-width:920px}.monthly-match td:nth-child(7),.monthly-match thead tr:first-child th:last-child{border-left:2px solid #b7c8be}.monthly-match td.amount{white-space:nowrap;text-align:right}.drop-zone{border:2px dashed #9fb8aa;border-radius:12px;padding:20px 22px;background:#fafcf8;margin-top:24px}.drop-zone.over{border-color:#176354;background:#eef5ef}.drop-zone label.secondary{display:inline-block;padding:10px 16px;border-radius:8px;margin-top:6px;cursor:pointer}.drop-zone label.secondary input{position:absolute;width:1px;height:1px;opacity:0}.drop-zone .help{text-align:left}.account-ledger{width:min(1100px,94vw)}.bank-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}.bank-comparison caption{text-align:left;font-weight:700;padding:.7rem}.bank-comparison td{vertical-align:top}@media(max-width:800px){.bank-comparison{grid-template-columns:1fr}}.invoice-preview{width:min(950px,94vw);max-height:92vh}.invoice-preview header,.invoice-preview nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}.invoice-preview h2{overflow-wrap:anywhere}.invoice-page{max-height:70vh;overflow:auto}.invoice-page canvas{display:block;width:100%;height:auto}
