/* Dashboard daybook */
.dash-page{ min-width:0; --dash-aging-rust:#B5562B; }
.dash-page .card{ border:1px solid var(--app-line); box-shadow:none; background:var(--app-card); }
.dash-kpi-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.dash-net{ margin-top:12px; padding:12px 16px 16px; border:1px solid var(--app-line); border-radius:var(--bs-border-radius,8px); background:var(--app-card); }
.dash-net-labels{ display:grid; grid-template-columns:1fr auto 1fr; gap:12px; align-items:end; color:var(--muted); font-size:var(--text-xs); }
.dash-net-labels strong{ color:var(--app-ink); text-align:center; }
.dash-net-labels span:last-child{ text-align:right; }
.dash-net-bar,.dash-aging-bar{ display:flex; overflow:hidden; height:12px; margin-top:8px; border-radius:999px; background:var(--app-line-soft); }
.dash-net-bar span,.dash-aging-bar span{ display:block; min-width:0; }
.dash-net-ar,.dash-age-31_60{ background:var(--gold); }.dash-net-ap,.dash-age-91_plus{ background:var(--debt); }
.dash-columns{ display:grid; grid-template-columns:minmax(0,2fr) minmax(280px,1fr); gap:16px; align-items:start; }
.dash-main,.dash-side{ display:grid; gap:16px; min-width:0; }
.dash-section-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:14px; }
.dash-section-head h5{ margin:0; font-size:var(--text-xl); }.dash-section-head p{ margin:3px 0 0; color:var(--muted); font-size:var(--text-xs); }
.dash-section-head>a{ white-space:nowrap; font-size:var(--text-sm); }
.dash-legend{ display:flex; flex-wrap:wrap; gap:10px; color:var(--muted); font-size:var(--text-xs); }
.dash-swatch,.dash-age-key{ display:inline-block; width:9px; height:9px; margin-right:4px; border-radius:2px; }
.dash-swatch-today,.dash-bar-today,.dash-age-0_30{ fill:var(--green); background:var(--green); }
.dash-swatch-week,.dash-bar-week{ fill:var(--slate-line); background:var(--slate-line); }
.dash-chart-scroll{ width:100%; overflow-x:auto; overflow-y:hidden; }
.dash-hourly-svg{ display:block; width:100%; min-width:650px; height:auto; max-height:230px; }
.dash-hourly-svg text{ fill:var(--muted); font-size:var(--text-xs); }.dash-axis{ stroke:var(--app-line); }.dash-now{ stroke:var(--debt); stroke-width:1.5; stroke-dasharray:4 4; }
.dash-log-list{ border-top:1px solid var(--app-line-soft); }
.dash-log-row{ display:grid; grid-template-columns:42px 9px minmax(0,1fr) auto; gap:10px; align-items:center; padding:10px 0; border-bottom:1px solid var(--app-line-soft); color:var(--app-ink); text-decoration:none; }
.dash-log-row:hover{ background:var(--app-hover); }.dash-log-row time{ color:var(--muted); font-size:var(--text-xs); font-variant-numeric:tabular-nums; }
.dash-dot{ width:8px; height:8px; border-radius:50%; background:var(--green); }.dash-dot-payment_in,.dash-dot-payment_out{ background:var(--gold); }.dash-dot-return{ background:var(--debt); }.dash-dot-order{ background:var(--slate); }
.dash-log-copy{ min-width:0; display:flex; flex-direction:column; }.dash-log-copy small{ color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.dash-log-amount{ font-weight:700; white-space:nowrap; }
.dash-aging-bar{ margin:2px 0 9px; }.dash-age-0_30{ background:var(--green); }.dash-age-61_90{ background:var(--dash-aging-rust); }
.dash-aging-labels{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 10px; color:var(--muted); font-size:var(--text-xs); }.dash-aging-labels span{ min-width:0; }.dash-aging-labels strong{ display:block; color:var(--app-ink); margin-left:13px; }
.dash-debtors{ margin-top:12px; }.dash-debtor{ padding:10px 0; border-top:1px solid var(--app-line-soft); }.dash-thin{ height:3px; margin:6px 0; border-radius:3px; background:var(--app-line-soft); }.dash-thin span{ display:block; height:100%; background:var(--gold); border-radius:inherit; }.dash-thin span.is-late{ background:var(--debt); }
.dash-debtor-meta{ display:flex; justify-content:space-between; gap:8px; color:var(--muted); font-size:var(--text-xs); }.dash-actions{ display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.dash-subsection{ margin-top:12px; padding-top:12px; border-top:2px solid var(--app-line); }.dash-subtitle{ display:flex; justify-content:space-between; font-weight:600; margin-bottom:4px; }.dash-subtitle a{ font-size:var(--text-sm); }
.dash-due{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 8px; padding:9px 0; border-top:1px solid var(--app-line-soft); }.dash-due>div:first-child{ display:flex; flex-direction:column; }.dash-due small{ color:var(--muted); }.dash-due.is-overdue>strong{ color:var(--debt); }.dash-due .dash-actions{ grid-column:1/-1; }
.dash-compact>a,.dash-order>a{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 0; border-top:1px solid var(--app-line-soft); color:var(--app-ink); text-decoration:none; }.dash-compact span,.dash-order>a span{ display:flex; flex-direction:column; min-width:0; }.dash-compact small,.dash-order small{ color:var(--muted); }
.dash-order{ padding:5px 0 9px; border-top:1px solid var(--app-line-soft); }.dash-order>a{ border:0; padding-bottom:5px; }.dash-order>div{ display:flex; justify-content:space-between; align-items:center; }
.dash-alert{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:9px 0; border-top:1px solid var(--app-line-soft); }.dash-alert span{ min-width:0; }
.dash-empty{ padding:16px 0; color:var(--muted); text-align:center; font-size:var(--text-sm); }
@media(max-width:999.98px){.dash-columns{ grid-template-columns:minmax(0,1fr); }}
@media(max-width:999.98px){.dash-kpi-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:519.98px){.dash-kpi-grid{ grid-template-columns:minmax(0,1fr); }}
@media(max-width:519.98px){.dash-store{ align-items:stretch!important; flex-direction:column; }.dash-store .form-select{ width:100%!important; }.dash-net-labels{ grid-template-columns:1fr 1fr; }.dash-net-labels strong{ grid-column:1/-1; grid-row:2; text-align:left; }.dash-log-row{ grid-template-columns:36px 8px minmax(0,1fr); }.dash-log-amount{ grid-column:3; }.dash-debtor-meta{ flex-direction:column; }.dash-actions{ justify-content:flex-start; }.dash-page .card-body{ padding:14px; }}
.btn-group > .btn-check:focus-visible + .btn{ outline-offset:-2px; }
