:root{--ink:#193d34;--muted:#6c7d75;--line:#dfe7e1;--paper:#f5f7f3;--green:#1e5745;--light:#eaf1e9;--gold:#daeb97;--warm:#f7eedc;--red:#9e5044;--white:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #699334}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--green);border-radius:8px;padding:10px 16px;background:var(--green);color:white;cursor:pointer;font-weight:600;white-space:nowrap}button:hover,.button:hover{background:#174432;text-decoration:none}.button.secondary,button.secondary{background:white;color:var(--green);border-color:var(--line)}input,select,textarea{border:1px solid #ccd8ce;background:white;color:var(--ink);border-radius:7px;padding:10px 12px;max-width:100%;width:100%}input[type=checkbox]{width:17px;height:17px;accent-color:var(--green);vertical-align:middle;margin:0 7px 0 0}label{display:block;font-size:12px;font-weight:600;color:#50665a;margin:0 0 14px}label input,label select,label textarea{display:block;margin-top:6px}label:has(input[type=checkbox]){font-size:13px;display:flex;align-items:center;gap:6px}label input[type=checkbox]{display:inline-block}textarea{min-height:95px;resize:vertical}h1,h2,h3,p{margin-top:0}h1{font-size:32px;font-weight:650;letter-spacing:-1px;line-height:1.2;margin-bottom:10px}h2{font-size:18px;letter-spacing:-.3px;margin-bottom:16px}h3{font-size:15px;margin-bottom:10px}p{margin-bottom:14px}.muted,small{color:var(--muted)}small{display:block;font-size:11px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);margin-bottom:10px}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:#fbfcf9;border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column;z-index:4}.brand{display:flex;gap:11px;align-items:center;margin:0 8px 36px;color:var(--ink)}.brand-mark{width:37px;height:37px;border-radius:11px;background:var(--green);color:var(--gold);display:grid;place-items:center;font-size:27px;font-weight:800;line-height:1}.brand strong{font-size:21px;letter-spacing:-1px}.brand small{font-size:9px;letter-spacing:2.7px;text-transform:uppercase;margin-top:-2px}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:10px 13px;display:flex;align-items:center;gap:12px;border-radius:8px;color:#637367;font-size:13px;font-weight:500}.sidebar nav a.active{background:#e6eddf;color:var(--green);font-weight:700}.sidebar nav a:hover{background:var(--light);text-decoration:none}.nav-icon{font-size:17px;width:20px;text-align:center}.nav-label{margin:24px 13px 8px;font-size:9px;font-weight:700;letter-spacing:1.8px;color:#98a397}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:20px 8px 0}.company-dot{display:inline-block;background:#74a571;width:7px;height:7px;border-radius:50%;margin-right:6px}.shell{margin-left:224px}.topbar{height:73px;border-bottom:1px solid var(--line);padding:0 36px;display:flex;align-items:center;justify-content:space-between;background:#fbfcf9;gap:12px}.topbar .breadcrumb{font-size:12px;color:var(--muted)}.topbar .context{display:flex;align-items:center;gap:14px;font-size:12px}.avatar{border-radius:50%;background:#e2eacb;width:31px;height:31px;display:grid;place-items:center;font-size:11px;font-weight:700}main{max-width:1530px;padding:30px 36px 48px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-head p{font-size:13px;color:var(--muted);margin:0}.page-head .actions{display:flex;gap:10px}.period{padding:8px 13px;background:#fff;border:1px solid var(--line);border-radius:7px;font-size:12px;white-space:nowrap}.tag,.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:5px;font-size:10px;font-weight:650;background:var(--light);color:var(--green);white-space:nowrap}.tag.warn,.badge.warn{background:var(--warm);color:#916730}.tag.neutral{background:#edf0ec;color:#6c7d75}.status-line{font-size:11px;color:var(--muted);display:flex;gap:10px;align-items:center;margin-bottom:22px}.notice{padding:12px 16px;border-radius:7px;font-size:12px;background:var(--warm);color:#806130;margin-bottom:20px;border:1px solid #ecdfc8;overflow-wrap:anywhere}.notice.soft{background:#edf2ec;border-color:var(--line);color:var(--muted)}section,.panel{background:white;border:1px solid var(--line);border-radius:11px;margin-bottom:20px;padding:22px}.panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px}.panel-head h2,.panel-head h3{margin:0}.panel-head a{font-size:11px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.cards section{margin:0;padding:20px}.cards strong{font-size:28px;line-height:1.3;letter-spacing:-1px;display:block;margin:12px 0 9px;font-weight:650;font-variant-numeric:tabular-nums}.cards small{font-size:10px}.cards .card-label{font-size:11px;color:var(--muted);font-weight:500}.cards .accent{background:var(--green);color:white;border-color:var(--green)}.cards .accent .card-label,.cards .accent small{color:#d0dfd5}.cards .accent .tag{background:#456c53;color:#edf6d7}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid.wide-left{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.grid>section{min-width:0}.chart-wrap{min-height:180px;margin-top:12px}.chart-wrap svg{width:100%;height:200px;overflow:visible}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;padding:0 8px}.cash-label{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin:12px 0}.progress{height:6px;background:#edf1e9;border-radius:5px;overflow:hidden}.progress>span{display:block;height:100%;background:#a0bd69}.task-row{display:flex;gap:13px;padding:16px 0;border-top:1px solid #eef1eb;align-items:start}.task-row:first-of-type{border-top:0}.task-number{width:32px;height:32px;background:var(--light);border-radius:8px;display:grid;place-items:center;flex-shrink:0;font-size:11px;font-weight:700}.task-row p{margin:0 0 4px;font-size:12px;font-weight:600}.task-row a{margin-left:auto;font-size:18px}.mini-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #eef1eb;font-size:12px}.mini-row .right{margin-left:auto;text-align:right;font-weight:600}.bar{flex:1;max-width:100px;background:#e5eddf;border-radius:4px;height:5px}.bar i{display:block;background:#8cab66;height:5px;border-radius:4px}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{font-size:10px;letter-spacing:.3px;font-weight:600;color:#829083;text-align:left;background:#f8faf5;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:13px 14px;border-bottom:1px solid #edf1eb;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcf8}td a{font-weight:550}td small{margin-top:3px}.amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.positive{color:#307751}.negative{color:#8c645b}.match{font-size:10px;color:#458269}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.filters label{margin:0;min-width:150px}.filters .search{flex:1}.filters button{margin-bottom:0}.table-meta{display:flex;justify-content:space-between;padding:14px 0;color:var(--muted);font-size:11px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:20px}.tabs a{padding:12px 0;font-size:12px;color:var(--muted)}.tabs a.active{color:var(--green);border-bottom:2px solid var(--green);font-weight:700}.split-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-actions{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}details{margin:12px 0}summary{cursor:pointer;font-size:12px;color:var(--muted)}dt{font-size:11px;color:var(--muted)}dd{margin:2px 0 14px;overflow-wrap:anywhere}.detail-amount{font-size:30px;font-weight:600;letter-spacing:-1px}.timeline{border-left:2px solid #e0e8da;padding-left:15px;margin-left:4px}.timeline-item{margin-bottom:15px;font-size:11px}.empty{padding:25px;color:var(--muted);text-align:center}.source-card{display:flex;gap:15px;align-items:start}.source-logo{width:40px;height:40px;border-radius:9px;background:var(--light);display:grid;place-items:center;font-weight:700;flex-shrink:0}.source-card .status{margin-left:auto}.login-page{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-story{background:var(--green);padding:70px;color:white;display:flex;flex-direction:column;justify-content:space-between}.login-story .brand{color:white;margin:0}.login-story .brand small{color:#c5d8c5}.login-story h1{font-size:46px;max-width:420px;line-height:1.2;letter-spacing:-1.5px}.login-story p{color:#c2d4c8;max-width:380px}.login-form{display:grid;place-items:center;padding:35px}.login-form section{background:transparent;border:0;max-width:360px;width:100%;padding:0}.login-form button{width:100%;margin-top:14px}.mobile-brand{display:none}.mobile-toggle{display:none}.print-only{display:none}
@media(min-width:1500px){main{padding:36px 50px}.topbar{padding:0 50px}}
@media(max-width:1100px){.sidebar{width:190px;padding:24px 14px}.shell{margin-left:190px}main{padding:26px 22px}.topbar{padding:0 22px}.cards{gap:10px}.cards section{padding:16px}.cards strong{font-size:22px}.grid.wide-left{grid-template-columns:1.3fr 1fr}}
@media(max-width:780px){.sidebar{position:static;width:auto;padding:12px 16px;display:block;border-right:0;border-bottom:1px solid var(--line)}.sidebar .brand{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px}.sidebar nav a{white-space:nowrap;font-size:11px;padding:8px}.sidebar .nav-label,.sidebar-footer{display:none}.shell{margin-left:0}.topbar{height:55px;padding:0 16px}.topbar .breadcrumb{font-size:10px}.context .local-label{display:none}main{padding:22px 16px}.cards{grid-template-columns:repeat(2,1fr)}.grid,.grid.wide-left,.split-detail{grid-template-columns:1fr}.page-head{align-items:start;flex-wrap:wrap;gap:12px}h1{font-size:26px}.page-head .actions{width:100%}.status-line{flex-wrap:wrap}.form-two{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr 1fr}.filters .search{grid-column:1/-1}.table-meta{flex-wrap:wrap;gap:8px}.login-page{grid-template-columns:1fr}.login-story{padding:30px;min-height:240px}.login-story h1{font-size:30px;margin-top:25px}.login-story p{display:none}.login-form{padding:30px 25px}.table-panel{padding:15px}.cards strong{font-size:25px}}
@media print{.sidebar,.topbar,.actions,.filters,.form-actions,button{display:none!important}.shell{margin:0}main{padding:0;max-width:none}.scroll{overflow:visible}body{background:white}.cards{grid-template-columns:repeat(4,1fr)}section{break-inside:avoid}.print-only{display:block}.notice{font-size:10px}a{color:inherit}}

.application-row{border-top:1px solid var(--line);padding:18px 0}h1{overflow-wrap:anywhere}.page-head .actions{flex-wrap:wrap}input[type=checkbox]{flex-shrink:0}.tabs{overflow-x:auto}.tabs a{white-space:nowrap}.scroll:focus-visible{outline:2px solid var(--green)}
@media(max-width:780px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.cards strong{font-size:clamp(18px,5vw,25px)}.cards section{min-width:0}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filters label{min-width:0}.panel-head{flex-wrap:wrap}.source-card{flex-wrap:wrap}.source-card .status{margin-left:55px}.status-line span{max-width:100%}}

/* Management workspace: compact navigation and 13-week decision view. */
.sidebar{overflow-y:auto}.sidebar .brand{margin-bottom:12px}.sidebar nav{gap:1px}.sidebar nav a{padding:7px 10px;font-size:12px}.nav-label{margin-top:14px}.sidebar-footer{padding-top:12px}.company-switch{display:flex;gap:6px;align-items:center;max-width:360px}.company-switch select{font-size:11px;padding:6px 9px}.company-switch button{font-size:10px;padding:6px 8px}.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.inline{display:flex;gap:7px;align-items:center}.coverage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.coverage-grid strong{display:block;font-size:24px}.coverage-grid>*{font-size:12px}.attention{background:#f9f4e7}.cash-bars{display:flex;gap:12px;height:140px;margin:26px 0}.cash-bar-col{flex:1;text-align:center;min-width:0}.cash-bar-track{height:115px;display:flex;align-items:end;background:#f6f8f1;border-radius:5px;overflow:hidden}.cash-bar-track span{display:block;background:#8fb17b;width:100%;min-height:1px}.cash-bar-track .deficit{background:#c7846d}.deficit-row{background:#fbede7}.section-summary{font-weight:600;font-size:16px;color:var(--green);padding:5px 0 15px}.ownership{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.ownership span{background:var(--light);padding:16px;border-radius:9px;font-size:12px}.ownership strong{display:block;margin-top:7px}
@media(max-width:780px){.company-switch{max-width:230px}.topbar .breadcrumb{display:none}.topbar .context{width:100%;justify-content:space-between;gap:6px}.company-switch select{max-width:170px}.coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ownership{grid-template-columns:1fr}.cash-bars{gap:5px}.sidebar nav{overflow-x:auto}}
/* Accounting workspace: review-first, readable on a phone and desktop. */
.account-tabs{display:flex;gap:6px;overflow-x:auto;margin:0 0 24px;border-bottom:1px solid var(--line);padding-bottom:10px}.account-tabs a{white-space:nowrap;padding:8px 13px;border-radius:6px;font-size:12px}.account-tabs .selected{background:var(--green);color:white}.account-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:35px;padding:30px}.account-steps{list-style:none;counter-reset:step;margin:0;padding:0}.account-steps li{counter-increment:step;position:relative;padding:0 0 18px 40px}.account-steps li:before{content:counter(step);position:absolute;left:0;background:var(--light);border-radius:50%;width:26px;height:26px;display:grid;place-items:center}.account-steps strong,.account-steps span{display:block}.account-steps span{font-size:12px;color:var(--muted)}.account-review{min-width:275px;padding-top:18px}.account-empty{padding:45px;max-width:760px}.account-empty h2{font-size:25px;line-height:1.3}.journal-lines{min-width:1180px}.journal-lines th:first-child{width:300px}.journal-lines input,.journal-lines select{font-size:12px;min-width:90px}.journal-lines td{padding:8px}.journal-lines td:first-child select{min-width:240px}.journal-lines [name=centro]{margin-bottom:5px}.preserve-lines{white-space:pre-wrap}.block{display:block}.mini-row>.amount{margin-left:auto}button:disabled{opacity:.45;cursor:not-allowed}.filters{margin-bottom:20px}.form-two>section{min-width:0}
@media(max-width:780px){.account-intro{grid-template-columns:1fr;padding:20px;gap:18px}.account-empty{padding:24px}.account-tabs{gap:2px}.account-tabs a{padding:8px 10px}.account-review{min-width:245px}}

.management-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.management-grid>section{min-width:0}.business-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:15px 0 25px}.business-links a{border:1px solid var(--line);border-radius:8px;min-height:78px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--paper)}.business-links a:hover{background:var(--light);text-decoration:none}.budget-matrix{min-width:1450px}.budget-matrix th:first-child{min-width:265px}.total-row{background:var(--light)}
@media(max-width:780px){.management-grid{grid-template-columns:1fr}.business-links{grid-template-columns:repeat(2,minmax(0,1fr))}.business-links a{font-size:12px;padding:12px}.management-grid .mini-row{flex-wrap:wrap}}

/* Inline category creation preserves the movement form underneath. */
.category-dialog{width:min(460px,calc(100% - 32px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:26px;color:var(--ink);background:white;box-shadow:0 20px 70px #183f3333}.category-dialog::backdrop{background:#152d2759}.category-dialog p{font-size:13px}.category-dialog .form-actions{justify-content:flex-end}.category-dialog .notice[hidden]{display:none}

/* Personal password form is available to every authenticated role. */
.sii-receipt-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sii-receipt-metrics>section{min-width:0}@media(max-width:780px){.sii-receipt-metrics{grid-template-columns:1fr}}
.account-password-link{font-size:11px;white-space:nowrap}.password-panel{max-width:580px}.password-panel .form-actions{align-items:center;justify-content:space-between}.password-panel #password-help{margin:-5px 0 16px}.password-recovery{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}@media(max-width:480px){.topbar:has(.account-password-link){height:auto;min-height:55px;padding-top:10px;padding-bottom:10px}.topbar .context:has(.account-password-link){flex-wrap:wrap}.password-panel .form-actions{gap:16px}}
.statement-filters{grid-template-columns:minmax(180px,1fr) minmax(180px,1.2fr) minmax(160px,1fr) auto}.statement-filters label{min-width:0}@media(max-width:1100px){.statement-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.statement-filters{grid-template-columns:1fr}}

/* Table tools operate on the loaded view without changing financial records. */
.data-grid-tools{display:flex;align-items:end;flex-wrap:wrap;gap:10px;margin:16px 0 8px}.data-grid-tools label{min-width:200px;flex:1;margin:0;font-size:12px}.data-grid-tools input{margin-top:5px;padding:9px 11px}.data-grid-tools button{padding:10px 13px;font-size:12px}.data-grid-status{font-size:12px;color:var(--muted);margin:8px 0 14px}.data-grid-scroll{max-height:70vh;overflow:auto}.data-grid-scroll table{min-width:850px}.data-grid-scroll thead{position:sticky;top:0;z-index:2;background:var(--light,#eef3ec)}.data-grid-sort{display:block;border:0;border-radius:0;background:transparent;color:inherit;box-shadow:none;text-align:left;font:inherit;padding:0;white-space:nowrap;width:100%}.data-grid-sort:hover{background:transparent;color:var(--green);text-decoration:underline}.data-grid-filters td{padding:8px;border-top:1px solid var(--line)}.data-grid-filters input,.data-grid-filters select{font-size:12px;min-width:110px;margin:0;padding:8px}.data-grid-scroll [hidden]{display:none!important}.data-grid-scroll th[aria-sort]{color:var(--green)}.data-grid-tools button:focus-visible,.data-grid-sort:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media(max-width:600px){.data-grid-tools label{flex-basis:100%}.data-grid-tools button{flex:1}.data-grid-scroll{max-height:65vh}}

.inline-business{display:flex;align-items:center;gap:6px;min-width:245px}.inline-business select{min-width:180px;max-width:280px;margin:0;padding:9px;font-size:12px}.inline-business button{padding:9px;font-size:12px}
.cards.recognition-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.recognition-cards a{display:inline-block;margin-top:10px}.recognition-cards section{min-width:0}@media(max-width:780px){.cards.recognition-cards{grid-template-columns:1fr}}
