:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#17201b;--ink:#17201b;--muted:#5b6860;--surface:#fff;--surface-soft:#f7f9f6;--border:#d9e0da;--brand:#174f3a;--brand-dark:#0e3828;--focus:#f0a51a;--success:#17633f;--error:#a12622;background:#f4f6f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px}body{min-height:100vh;margin:0}a{color:var(--brand);text-underline-offset:.2em}a:hover{color:var(--brand-dark)}:is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:2px}button,input,select,textarea{font:inherit}button{background:var(--brand);color:#fff;cursor:pointer;border:0;border-radius:.45rem;padding:.65rem .9rem}button:hover{background:var(--brand-dark)}.secondary-button{border:1px solid var(--brand);color:var(--brand);background:#fff}.secondary-button:hover{background:#eaf1ec}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #aeb9b1;border-radius:.4rem;padding:.65rem .7rem}input:disabled,select:disabled,textarea:disabled{color:#556159;background:#edf0ed}form{gap:1rem;width:min(100%,42rem);display:grid}.import-actions{flex-wrap:wrap;gap:.75rem;display:flex}.import-actions form{width:auto}label{gap:.4rem;font-weight:650;display:grid}main:not(.app-content){place-items:center;min-height:100vh;padding:2rem;display:grid}main:not(.app-content)>section{gap:1rem;width:min(100%,48rem);display:grid}.app-shell{min-height:100vh}.app-header{z-index:10;background:var(--brand-dark);color:#fff;border-bottom:1px solid #2d604d;grid-template-columns:auto minmax(12rem,1fr) auto;align-items:center;gap:1rem;min-height:4.5rem;padding:.75rem clamp(1rem,3vw,2rem);display:grid;position:sticky;top:0}.app-header a{color:#fff}.brand{letter-spacing:-.04em;font-size:1.4rem;font-weight:800;text-decoration:none}.business-identity,.user-identity{align-items:center;gap:.6rem;display:flex}.business-identity{flex-direction:column;align-items:flex-start;min-width:0}.business-identity strong,.business-identity span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.business-identity span{color:#c9dbd2;font-size:.78rem}.user-identity{justify-content:flex-end;font-size:.9rem}.role-badge,.status-badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;width:fit-content;padding:.25rem .55rem;font-size:.72rem;font-weight:750;display:inline-flex}.role-badge{color:#173f2f;background:#d9ece2}.quiet-button{background:0 0;border:1px solid #88aa9b;padding:.45rem .65rem}.app-frame{grid-template-columns:15rem minmax(0,1fr);min-height:calc(100vh - 4.5rem);display:grid}.app-sidebar{border-right:1px solid var(--border);background:var(--surface);padding:1.25rem 1rem}.business-switcher{border:1px solid var(--border);background:var(--surface-soft);border-radius:.45rem;margin-bottom:1.25rem}.business-switcher summary{cursor:pointer;padding:.75rem;font-weight:700}.business-switcher ul,.app-nav{margin:0;padding:0;list-style:none}.business-switcher ul{gap:.25rem;padding:0 .75rem .75rem;display:grid}.business-switcher a[aria-current=page]{font-weight:750}.app-nav{gap:.3rem;display:grid}.app-nav a{color:var(--ink);border-radius:.4rem;padding:.7rem .75rem;font-weight:650;text-decoration:none;display:block}.app-nav a:hover{color:var(--brand-dark);background:#eaf1ec}.app-content{min-width:0;padding:clamp(1.25rem,4vw,3rem)}.page-stack{gap:2rem;width:min(100%,72rem);margin:0 auto;display:grid}.page-header h1,.page-stack h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.75rem,4vw,2.5rem)}.page-header p,.section-heading p{color:var(--muted);margin:.45rem 0 0}.page-stack section{gap:1rem;display:grid}.page-stack h2,.page-stack h3{margin:0}.summary-grid,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.summary-card,.module-card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;align-content:start;gap:.6rem;padding:1.15rem;display:grid}.summary-card strong{font-size:1.25rem}.summary-card>span:last-child,.eyebrow{color:var(--muted)}.eyebrow{letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:750}.section-heading,.card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.status-badge{color:#664e08;background:#f6e9bf;flex:none}.empty-state{background:var(--surface-soft);border-left:3px solid #b7c2ba;padding:.8rem}.empty-state p{color:var(--muted);margin:.25rem 0 0}.quick-links{flex-wrap:wrap;gap:.75rem;display:flex}.quick-links a{border:1px solid var(--border);background:var(--surface);border-radius:.45rem;padding:.75rem .9rem;font-weight:650;text-decoration:none}.financial-form{gap:1.25rem;display:grid}.financial-form fieldset{border:1px solid var(--border);background:var(--surface);border-radius:.65rem;padding:1rem}.financial-form legend{padding:0 .35rem;font-size:1.15rem;font-weight:700}.financial-form-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;display:grid}.financial-form label{gap:.35rem;font-weight:650;display:grid}.financial-form input,.financial-form select{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);font:inherit;border-radius:.4rem;padding:.65rem}.financial-form .checkbox-label{align-items:center;gap:.65rem;display:flex}.financial-form .checkbox-label input{width:auto}.financial-form-wide{grid-column:1/-1}.muted-copy{color:var(--muted)}.feedback{border-radius:.4rem;padding:.75rem .9rem}.feedback-error,[role=alert]{border-left:4px solid var(--error);color:#761d1a;background:#fff1ef}.feedback-success,[role=status]:not(.loading-state){border-left:4px solid var(--success);color:#164c32;background:#edf8f1}.retention-note{color:#594508;background:#fff8df;border-left:4px solid #947010;border-radius:.4rem;margin:0;padding:.9rem 1rem}.table-scroll{border:1px solid var(--border);background:var(--surface);border-radius:.65rem;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--border);vertical-align:top;padding:.75rem}th{background:var(--surface-soft);color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.78rem}.money-cell{white-space:nowrap}.section-introduction{max-width:48rem;color:var(--muted)}.forecast-movement-list{gap:1rem;display:grid}.forecast-movement-card{border:1px solid var(--border);background:var(--surface);border-radius:.75rem;padding:1.25rem}.forecast-movement-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.forecast-movement-heading h3{margin:.25rem 0 0}.forecast-source-note{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}.forecast-movement-details{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;margin:0;display:grid}.forecast-movement-details div{min-width:0}.forecast-movement-details dt{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:700}.forecast-movement-details dd{margin:.35rem 0 0;font-weight:700}.pagination{justify-content:space-between;align-items:center;gap:1rem;display:flex}.pagination>span:not([aria-current=page]){color:var(--muted)}.loading-state{min-height:8rem;color:var(--muted);align-items:center;gap:.7rem;display:flex}.loading-indicator{border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;width:1.1rem;height:1.1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.loading-indicator{animation:none}}@media (max-width:720px){.app-header{grid-template-columns:auto 1fr;position:static}.business-identity span,.user-identity>span:first-child{display:none}.user-identity{grid-column:1/-1;justify-content:space-between}.app-frame{grid-template-columns:1fr}.app-sidebar{border-right:0;border-bottom:1px solid var(--border);padding:.75rem 1rem}.business-switcher{margin-bottom:.6rem}.app-nav{padding-bottom:.2rem;display:flex;overflow-x:auto}.app-nav li{flex:none}.app-content{padding:1.25rem 1rem 2rem}.summary-grid,.module-grid{grid-template-columns:1fr}.section-heading,.card-heading{flex-direction:column;align-items:flex-start}}
