/* AgNumo: shared visual language. No change to body font sizes or data. */
:root{--ag-ink:#173b49;--ag-muted:#526b78;--ag-line:#d5e3e9;--ag-blue:#176984;--ag-green:#166c51;--ag-red:#aa3041;--ag-amber:#81580c}
#finance-app,#rh-app,#admin-app,.content{--muted:var(--ag-muted);--line:var(--ag-line)}
.sidebar .nav,.sidebar .nav a,.fin-nav button{color:#476471}.sidebar .nav.active,.sidebar .nav a.active,.fin-nav button.active{color:#104f65;background:#e3f3f8;box-shadow:inset 3px 0 #288aa4}
.nav-label,.sidebar .nav-label,.eyebrow,.caption,.field-hint,.hint,.footnote,.dashboard-empty,.muted,td small,th,.stat small,.summary small,.page-head p,.page-heading p,#rh-app p,#admin-app p{color:var(--ag-muted)}
.eyebrow.light,.brand-panel .eyebrow,.login-brand .eyebrow{color:#a9d0df}
.card.highlight .caption,.card.highlight small,.card.highlight p{color:#c4dce7}.card.highlight .value{color:#fff}
.workspace>header time,.app-shell .topbar time{color:#bdcdd5}
.main>.page-head h1,.content>.page-heading h1,#rh-app>header h1,#admin-app>header h1{font-size:clamp(26px,2.3vw,32px);line-height:1.25;letter-spacing:-.8px;margin:7px 0 9px;color:var(--ag-ink)}
.page-head,.page-heading{margin-bottom:22px;gap:18px}.page-head p,.page-heading p{line-height:1.65;max-width:720px}.content{padding-top:24px}
#rh-app,#admin-app{padding-top:28px}#rh-app>header,#admin-app>header{margin-bottom:22px}
.main{padding-top:25px}.fin-nav{padding-top:22px}.fin-nav>.eyebrow{padding-bottom:13px}.fin-nav button{min-height:43px}.sidebar-toggle{color:#345f70}
.ag-icon{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;line-height:1;color:currentColor}.ag-icon svg{width:20px;height:20px;display:block}
.btn.primary,button.primary,.button:not(.secondary):not(.danger){background:#9bdeed;border:1px solid #79c6d9;color:#123f50;font-weight:600;box-shadow:0 1px 2px #173b490a}
.btn.primary:hover,button.primary:hover,.button:not(.secondary):not(.danger):hover{background:#87d5e7;border-color:#5fb4cb}
.btn:not(.primary):not(.danger):not(.dark),button.secondary,.button.secondary{color:#315c6e;border-color:#c6dbe5;background:#fff}
.btn.danger,.button.danger,button.danger{color:var(--ag-red);background:#fff4f4;border-color:#e4b7bf}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #278aa4;outline-offset:3px}
.positive,.paid,.tag.green,.pill.ok,.pill.paid{color:var(--ag-green)}.negative,.overdue,.pill.overdue,.form-error,.error-text{color:var(--ag-red)}
.pill.ok,.pill.paid,.tag.green{background:#e5f4ec;border-color:#bfdfce}.pill.overdue,.tag.red{background:#fff0f1;border-color:#e7c0c6}
.pill.warning,.tag.warning{color:var(--ag-amber)}
.table-wrap{max-height:65vh;overflow:auto;scrollbar-gutter:stable;overscroll-behavior:contain;border-radius:9px}
.table-wrap table{border-collapse:separate;border-spacing:0;min-width:100%}.table-wrap thead th,.report-table thead th{position:sticky;top:0;z-index:2;background:#eef5f8;color:#3f6171;font-weight:600;box-shadow:0 1px #d5e3e9}
.table-wrap tbody tr:hover>td,.report-table tbody tr:hover>td{background:#f0f8fb}.table-wrap tbody tr:focus-within>td{background:#eaf5f9}
.money-cell,.amount{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.money-cell{text-align:right!important}
.table-wrap td{line-height:1.55}.table-wrap td small{line-height:1.5}.panel,.summary article{border-color:#d9e6ec;box-shadow:0 2px 7px #173b4903}
dialog{border-color:#c9dde6}dialog .modal-head h2,dialog .dialog-head h2{letter-spacing:-.4px}
.rh-tabs button{margin-bottom:4px}.soon-badge{color:#5e7380}.beta-badge,.beta{color:#306379}
@media(max-width:760px){.main>.page-head h1,.content>.page-heading h1,#rh-app>header h1,#admin-app>header h1{font-size:26px}.page-head,.page-heading{align-items:flex-start;flex-wrap:wrap}.main{padding-top:22px}.table-wrap{max-height:68vh}#rh-app,#admin-app{padding-top:22px}.ag-icon,.ag-icon svg{width:19px;height:19px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.table-wrap{max-height:none;overflow:visible}.table-wrap thead th{position:static}.panel{box-shadow:none}}

body.erp-embedded .page-heading h1{font-size:clamp(26px,2.3vw,32px);line-height:1.25;letter-spacing:-.8px;margin:7px 0 9px;color:var(--ag-ink)}
#app>.shell>.sidebar{overflow-x:hidden;scrollbar-width:thin}#app>.shell>.sidebar .logo{min-width:0;max-width:100%}#app>.shell>.sidebar .logo img{flex-shrink:1;min-width:0;max-width:126px}.sidebar nav{min-width:0}.sidebar nav button,.sidebar nav a{max-width:100%}

.stat-icon.ag-icon{width:44px;height:44px;flex-basis:44px;padding:12px;color:#26738c;background:#ecf6fa;border-radius:12px}
@media(min-width:651px){#app>.shell>.sidebar{overflow:hidden;padding-top:25px;padding-bottom:20px;gap:18px}#app>.shell>.sidebar>.logo,#app>.shell>.sidebar>.sidebar-toggle,#app>.shell>.sidebar>.nav-label,#app>.shell>.sidebar>.sidebar-bottom{flex-shrink:0}#app>.shell>.sidebar>.nav-label{margin:0}#app>.shell>.sidebar>nav{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;margin-top:0;scrollbar-width:thin;gap:4px}#app>.shell>.sidebar>nav>*{flex-shrink:0}#app>.shell>.sidebar>.sidebar-bottom{padding-top:16px}}
.btn,.button,button.primary,button.secondary{border-radius:10px}.app-shell .view:not(#view-dialer) button.primary{background:#9bdeed;border:1px solid #79c6d9;color:#123f50;border-radius:10px;font-weight:600}.app-shell .view:not(#view-dialer) button.primary:hover{background:#87d5e7}.work-panel{padding:16px 20px!important}.work-panel h2{font-size:18px}
