/* Readable workspace typography and shared control sizing. */
.app-layout{font-size:14px}.app-main{padding-left:26px;padding-right:26px}
.sidebar nav a{font-size:14px;padding:10px 11px}.nav-group summary{font-size:10px;letter-spacing:1.1px}.nav-group{margin-bottom:14px}.appearance-control,.logout-control{font-size:14px}.sidebar nav a svg{width:18px;height:18px}
.business-identity b{font-size:15px}.business-identity small{font-size:12px}.workspace-user b{font-size:13px}.global-search{padding:10px 12px}.global-search input{font-size:13px}.global-search kbd{font-size:12px}.workspace-heading h1{font-size:29px}.workspace-heading p{font-size:13px}.access-strip p,.access-strip b,.access-strip>a,.access-strip .text-button{font-size:12px}.access-strip{padding:11px 13px}
.app-layout .page-actions>.btn,.app-layout .page-actions>.entry-action,.app-layout .page-actions>.filter-toggle,.workspace-controls .btn,.workspace-controls select,.quick-actions .entry-action,.chart-controls .filter-toggle{height:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border-radius:8px;font-size:13px;font-weight:500;line-height:1;white-space:nowrap;box-sizing:border-box}
.app-layout .page-actions svg,.quick-actions .entry-action svg:first-child,.chart-controls .filter-toggle svg{width:16px;height:16px}.page-actions{gap:9px;flex-wrap:wrap}.workspace-controls select{padding-right:30px}.app-layout .btn.secondary{border:1px solid var(--line)}
.kpi-label{font-size:13px;gap:6px}.metric-context{font-size:10px;margin-left:0}.finance-kpi{padding:16px}.finance-kpi strong{font-size:32px;margin:13px 0 12px}.finance-kpi a,.kpi-note{font-size:12px}.quick-actions>span:first-child{font-size:10px;letter-spacing:1px}.quick-actions{padding-top:8px;padding-bottom:15px}.quick-actions button svg:last-child{width:12px;height:12px}
.workspace-panel h2{font-size:16px}.workspace-panel header p{font-size:11px}.workspace-panel header a{font-size:12px}.chart-legend{font-size:11px;gap:10px}.chart-controls{gap:7px}.collection-chart text{font-size:11px}.collection-chart{height:170px}.chart-data summary{font-size:12px;padding:9px 18px}.chart-data td,.chart-data th{font-size:12px}
.attention-name b{font-size:13px}.attention-name small{font-size:11px}.attention-list strong{font-size:14px}.customer-avatar{width:33px;height:33px;font-size:13px}.coverage-note{font-size:11px;padding:10px 16px}.attention-list a{padding:11px 0}.row-arrow{font-size:14px}
.dense-table{font-size:13px}.dense-table th{font-size:10px;padding:11px 16px}.dense-table td{padding:12px 16px}.entry-type,.posted-status{font-size:11px}.table-search input{font-size:12px;width:145px}.table-search{height:36px}.recent-panel .filter-toggle{height:36px;font-size:12px;padding:0 11px}.workspace-empty b{font-size:14px}.workspace-empty p{font-size:12px}.section-skeleton,.section-failure{font-size:13px}.section-failure .text-button{font-size:13px}
.balance-breakdown{font-size:12px}.balance-breakdown small{font-size:11px;margin-left:0}.workspace-status{font-size:11px}.record-count{font-size:13px}.filter-fields label{font-size:12px}.filter-fields input,.filter-fields select{font-size:13px;min-height:40px}.filter-footer>span,.filter-footer .text-button,.filter-footer .btn{font-size:12px}.filter-footer .btn{height:40px;padding:0 14px}.filter-footer{align-items:center}.filter-toggle{font-size:13px}.filter-error{font-size:12px}.table-head h3{font-size:17px}.search{font-size:14px}table{font-size:14px}th{font-size:11px}.app-heading h1{font-size:29px}.app-heading p{font-size:13px}.pill{font-size:11px}.device p{font-size:14px}.device h3{font-size:16px}.notice{font-size:13px}
.entry-dialog label,.entry-dialog p{font-size:14px}.entry-dialog .form-hint,.entry-stepup p{font-size:12px}.entry-dialog input,.entry-dialog select,.entry-dialog textarea{font-size:14px;min-height:44px}.entry-dialog .btn{min-height:42px;font-size:14px}.entry-dialog .entry-error{font-size:13px}.form-eyebrow{font-size:10px}.optional{font-size:11px}
.tag-position{font-size:12px!important}.app-layout select:focus-visible{outline:2px solid var(--brand);outline-offset:3px}
.sidebar{overflow:hidden}.sidebar-heading,.sidebar-footer{flex-shrink:0}.sidebar nav{flex:1;min-height:0;overflow-y:auto;margin-bottom:14px}.sidebar-footer{background:var(--card)}
.sidebar nav{scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:transparent transparent}
.sidebar:hover nav,.sidebar:focus-within nav{scrollbar-color:var(--muted) transparent}
.sidebar nav::-webkit-scrollbar{width:6px}
.sidebar nav::-webkit-scrollbar-track{background:transparent}
.sidebar nav::-webkit-scrollbar-thumb{background:transparent;border-radius:6px}
.sidebar:hover nav::-webkit-scrollbar-thumb,.sidebar:focus-within nav::-webkit-scrollbar-thumb{background:var(--muted)}
.overdue-amount,.attention-name small.overdue-label{color:var(--red)}
.aging-track svg{display:block;width:100%;height:7px}.aging-track rect{fill:var(--red)}
.payment-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:3px 16px 17px}.payment-status-card,.payment-status-card.aging-summary{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.payment-status-card h3{font-size:13px;font-weight:600;margin:0 0 4px}.payment-status-card strong{font-size:25px;line-height:1.2;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.payment-status-card span{font-size:12px;color:var(--muted)}.payment-status-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:4px 0 0}.payment-status-card[data-payment-status=late] strong{color:var(--red)}.payment-status-card[data-payment-status=today] strong{color:var(--action-text)}.payment-customer-heading{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:15px 16px 7px;border-top:1px solid var(--line)}.payment-customer-heading h3{font-size:13px;margin:0;font-weight:600}.payment-customer-heading a{font-size:11px;color:var(--action-text)}.payment-customer-list{list-style:none;padding:0 16px;margin:0 0 10px}.payment-customer-list li+li{border-top:1px solid var(--line)}.payment-customer-list a{display:block;padding:12px 0}.payment-customer-list a>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.payment-customer-list b{font-size:13px;font-weight:500;overflow-wrap:anywhere}.payment-customer-list strong{font-size:14px;white-space:nowrap;font-weight:600;font-variant-numeric:tabular-nums}.payment-customer-list a>div+div{margin-top:6px;font-size:12px;color:var(--muted)}.payment-customer-list .overdue-label{color:var(--red)}.payment-customer-list a:hover b{color:var(--action-text);text-decoration:underline}.late-breakdown{border-top:1px solid var(--line)}.late-breakdown summary{padding:13px 16px;font-size:12px;font-weight:500;color:var(--muted)}.late-breakdown .aging-buckets{padding-top:4px}.late-breakdown .aging-buckets>div{grid-template-columns:100px 1fr 95px}.insight-panels>section:first-child{align-self:start}
@media(max-width:360px){.payment-status-grid{gap:8px;padding-left:12px;padding-right:12px}.payment-status-card,.payment-status-card.aging-summary{padding:11px}.payment-status-card strong{font-size:22px}.payment-customer-list,.payment-customer-heading{padding-left:12px;padding-right:12px}.payment-customer-heading{flex-wrap:wrap}.late-breakdown .aging-buckets>div{grid-template-columns:94px 1fr 83px;gap:6px}}
.insight-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.comparison-period{font-size:12px;color:var(--muted);margin:13px 0 20px;line-height:1.6}.insight-panels{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px;margin-bottom:18px}.insight-panels .collection-chart{height:220px}.aging-summary{padding:4px 18px 16px;display:flex;flex-direction:column;gap:6px}.aging-summary strong{font-size:29px}.aging-summary span{font-size:12px;color:var(--muted)}.aging-buckets{padding:0 18px 16px;display:grid;gap:12px}.aging-buckets>div{display:grid;grid-template-columns:76px 1fr 95px;gap:10px;align-items:center;font-size:12px}.aging-buckets b{font-weight:500;text-align:right;font-variant-numeric:tabular-nums}.aging-track{height:7px;background:var(--soft);border-radius:5px;overflow:hidden}.aging-track i{display:block;background:var(--red);height:100%;border-radius:5px}.aging-coverage{padding:12px 18px;display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;border-top:1px solid var(--line);color:var(--muted)}.aging-coverage b{color:var(--ink);margin-left:6px;font-weight:500}.daily-report>header{flex-wrap:wrap}.daily-report .entry-action{height:40px;font-size:13px}.daily-report{margin-bottom:20px}
@media(max-width:1150px){.insight-panels{grid-template-columns:1fr}.insight-kpis{grid-template-columns:1fr}.insight-kpis .finance-kpi{min-height:140px}}
@media(max-width:750px){.aging-buckets>div{grid-template-columns:70px 1fr 90px}.insight-kpis{gap:10px}.insight-panels{gap:12px}.comparison-period{font-size:12px}.daily-report .entry-action{width:100%}}
@media(max-width:1150px){.financial-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-panel>header{flex-wrap:wrap}.chart-controls{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.recent-panel>header{flex-wrap:wrap}.table-tools{flex-wrap:wrap}.sidebar nav a{font-size:13px}.business-identity b{max-width:170px}.global-search{width:38%}.workspace-user b{display:none}.workspace-controls .btn span{display:none}}
@media(max-width:750px){.app-main{padding-left:16px;padding-right:16px}.sidebar nav a,.compact-nav .sidebar nav a{font-size:13px;padding:10px 12px}.sidebar .brand{font-size:20px}.business-identity b{font-size:14px;max-width:230px}.business-identity small{font-size:11px}.global-search input{font-size:13px}.workspace-heading{flex-wrap:wrap}.workspace-heading h1{font-size:27px}.workspace-heading p{font-size:12px;max-width:none}.workspace-controls{width:100%;justify-content:flex-end}.workspace-controls select{max-width:none}.access-strip p,.access-strip b{font-size:12px}.access-strip>a,.access-strip .text-button{font-size:11px}.access-strip{flex-wrap:wrap}.access-strip p{flex:1;min-width:170px}.access-strip>a,.access-strip .text-button{margin-left:25px}.finance-kpi{padding:14px 12px;min-height:148px}.kpi-label{font-size:12px}.metric-context{font-size:9px;margin-left:0}.finance-kpi strong{font-size:28px}.finance-kpi a,.kpi-note{font-size:11px}.quick-actions .entry-action{font-size:12px;padding:0 11px;justify-content:flex-start;min-width:0}.quick-actions>span:first-child{font-size:10px}.workspace-panel h2{font-size:15px}.workspace-panel header p{font-size:11px}.chart-legend{font-size:11px}.chart-controls .filter-toggle{font-size:12px;height:38px;min-height:38px}.attention-name b{font-size:13px}.attention-name small{font-size:11px}.attention-list strong{font-size:14px}.coverage-note{font-size:11px}.table-tools{width:100%;gap:8px}.table-search{flex:1}.table-search input{font-size:12px;min-width:50px;width:100%}.table-tools>a{font-size:12px}.dense-table th{font-size:10px;padding:11px 13px}.dense-table td{padding:13px;font-size:13px}.entry-type,.posted-status{font-size:11px}.balance-breakdown{font-size:11px}.balance-breakdown small,.workspace-status{font-size:11px}.workspace-status>span:last-child{font-size:10px}.app-heading h1{font-size:27px}.app-heading p{font-size:13px}.app-heading{gap:14px}.page-actions{width:100%}.app-layout .page-actions>.btn,.app-layout .page-actions>.entry-action,.app-layout .page-actions>.filter-toggle{font-size:13px}.form-grid{gap:0}.filter-footer{gap:10px}.filter-footer>span{font-size:11px}}

@media(max-width:750px){.sidebar{overflow:visible}.sidebar nav{flex:none;overflow:visible;margin-bottom:0}.global-search{width:100%;order:3}.quick-actions .entry-action>svg:only-child{margin-left:0;width:16px;height:16px}.workspace-heading{gap:12px}}
@media(max-width:360px){.finance-kpi strong{font-size:25px}.finance-kpi{padding:13px 10px}}
.payment-overview{margin-bottom:18px}.payment-overview .payment-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-status-grid .payment-status-card strong{font-size:25px}.aging-panel .payment-customer-heading{border-top:0;padding-top:18px}.aging-panel .payment-customer-list{margin-bottom:12px}
@media(max-width:750px){.payment-overview .payment-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:360px){.payment-status-grid .payment-status-card strong{font-size:22px}}
.payment-status-card{font-family:inherit;text-align:left;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}.payment-status-card:hover{border-color:var(--brand);background:var(--card)}.payment-status-card:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.payment-status-grid .payment-card-title{font-size:13px;color:var(--ink);font-weight:600;margin:0 0 4px}.payment-status-card .payment-card-description{font-size:12px;line-height:1.5;margin-top:4px}.payment-status-card .payment-card-link{font-size:12px;color:var(--action-text);margin-top:auto;padding-top:9px}.payment-card-link>span{color:inherit}.payment-details-dialog{width:min(640px,calc(100% - 32px));max-width:640px;max-height:85dvh;overflow:auto;padding:0}.payment-details-dialog>header{display:flex;justify-content:space-between;gap:20px;padding:23px 22px 18px;border-bottom:1px solid var(--line)}.payment-details-dialog h2{font-size:25px;letter-spacing:-.5px;margin:0 0 7px}.payment-details-dialog header p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}.payment-details-summary{display:flex;flex-direction:column;gap:6px;padding:20px 22px 12px}.payment-details-summary>strong{font-size:30px;font-variant-numeric:tabular-nums}.payment-details-summary>span{color:var(--muted);font-size:13px}.payment-details-dialog .payment-customer-list{padding:0 22px}.payment-details-dialog .payment-customer-list small{display:block;margin-top:5px;font-size:12px;color:var(--muted)}.payment-details-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 22px;border-top:1px solid var(--line)}.payment-details-dialog footer>span{font-size:12px;line-height:1.5;color:var(--muted)}.payment-details-dialog footer .btn{font-size:13px;min-height:40px;padding:10px 16px}
@media(max-width:360px){.payment-details-dialog>header{padding:19px 16px}.payment-details-summary{padding:16px}.payment-details-dialog .payment-customer-list{padding:0 16px}.payment-details-dialog>footer{padding:14px 16px}.payment-details-dialog h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.payment-status-card{transition:none}}
