.executive-dashboard{margin-top:38px;padding-top:27px;border-top:1px solid #d6e1e8;color:#203546}
.executive-dashboard[hidden],.executive-dashboard [hidden]{display:none!important}
.dashboard-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.dashboard-heading h2{font-size:1.65rem;margin:2px 0 5px;color:#16354b}
.dashboard-eyebrow{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.12em;color:#0875b8}
.dashboard-subtitle{margin:0;color:#607889;font-size:.9rem}
.dashboard-period{display:flex;gap:3px;background:#e5eff6;padding:4px;border-radius:10px}
.dashboard-period button{border:0;border-radius:8px;background:transparent;color:#345063;padding:9px 16px;font:inherit;font-weight:700;cursor:pointer}
.dashboard-period button.active{background:#0b76bd;color:#fff;box-shadow:0 2px 6px #0b76bd33}
.dashboard-toolbar{display:grid;gap:15px;background:#fff;border:1px solid #d8e5ee;border-radius:13px;padding:16px;margin-bottom:18px;box-shadow:var(--shadow)}
.dashboard-date-controls{display:flex;align-items:end;gap:7px}
.dashboard-date-controls>button{min-height:39px;border:1px solid #bfd3e1;border-radius:8px;background:#f2f8fc;color:#075f9d;padding:5px 14px;font:inherit;font-weight:700;cursor:pointer}
.dashboard-date-controls>button:disabled{opacity:.45;cursor:not-allowed}
.dashboard-date-controls label,.dashboard-filters label{display:grid;gap:5px;color:#486172;font-size:.77rem;font-weight:750}
.dashboard-date-controls input,.dashboard-filters select{height:39px;min-width:0;border:1px solid #bfd3e1;border-radius:8px;background:white;color:#1d3648;padding:7px 10px;font:inherit;font-size:.88rem}
.dashboard-filters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.dashboard-loading{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;padding:8px 0}
.dashboard-loading span{display:block;height:106px;border-radius:12px;background:linear-gradient(100deg,#eaf2f7 15%,#f7fbfd 40%,#eaf2f7 65%);background-size:200% 100%;animation:dashboard-shimmer 1.2s linear infinite}
.dashboard-loading p{grid-column:1/-1;color:#607889;font-size:.88rem;margin:0}
@keyframes dashboard-shimmer{to{background-position-x:-200%}}
.dashboard-message{background:#fff;padding:24px;border:1px solid #d8e5ee;border-radius:12px;color:#607889;text-align:center}
.dashboard-error{background:#fff5f3;border-color:#f3c9c3;color:#a63122}
.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}
.dashboard-kpi{min-width:0;background:#fff;border:1px solid #d8e5ee;border-radius:12px;padding:15px 16px;box-shadow:var(--shadow)}
.dashboard-kpi>span{display:block;color:#5f7686;font-weight:700;font-size:.8rem}
.dashboard-kpi strong{display:block;color:#16415c;font-size:1.35rem;margin:7px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.dashboard-kpi small{color:#6c8494}
.dashboard-comparison{margin:0;color:#607889;font-size:.72rem;line-height:1.4}
.dashboard-charts{display:grid;grid-template-columns:1.45fr 1fr;gap:13px;margin-bottom:13px}
.dashboard-card{min-width:0;background:#fff;border:1px solid #d8e5ee;border-radius:12px;padding:17px;box-shadow:var(--shadow)}
.dashboard-card h3{font-size:1rem;color:#1e4056;margin:0 0 13px}
.dashboard-card-note{margin:-8px 0 12px;color:#6d8797;font-size:.75rem}
.dashboard-trend{grid-row:span 2}
#dashboard-trend svg{display:block;width:100%;height:auto;min-height:230px;overflow:visible}
#dashboard-trend svg text{font-size:10px;fill:#6d8494}
.dashboard-gridline{stroke:#dce7ed;stroke-width:1}
.dashboard-line{fill:none;stroke:#087bc4;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.dashboard-dot{fill:#087bc4;stroke:#fff;stroke-width:1}
.dashboard-bar-item{margin:12px 0}
.dashboard-bar-label{display:flex;justify-content:space-between;gap:9px;font-size:.78rem;color:#486172}
.dashboard-bar-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-bar-label strong{white-space:nowrap;color:#17415c}
.dashboard-bar-track{height:8px;margin-top:5px;border-radius:99px;background:#eaf2f6;overflow:hidden}
.dashboard-bar-track span{display:block;height:100%;border-radius:99px;background:#1185c8}
#dashboard-payments-chart .dashboard-bar-track span{background:#22a06b}
.dashboard-tables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:13px}
.dashboard-table-wrap{overflow:auto;max-height:360px}
.dashboard-table{border-collapse:collapse;width:100%;font-size:.78rem;white-space:nowrap}
.dashboard-table th{position:sticky;top:0;background:#edf5fa;color:#34556a;text-align:left;font-weight:750}
.dashboard-table th,.dashboard-table td{border-bottom:1px solid #e4ecf1;padding:8px 10px}
.dashboard-table td:not(:first-child){font-variant-numeric:tabular-nums}
.dashboard-table tbody tr:hover{background:#f7fafc}
.dashboard-table tfoot{font-weight:800;background:#eaf4fa;color:#123e59}
.dashboard-no-rows{text-align:center;color:#78909c}
.dashboard-daily{margin-bottom:12px}
.dashboard-daily .dashboard-table-wrap{max-height:none}
.dashboard-notes{color:#6b8493;font-size:.75rem;margin:0 2px 8px}
@media(max-width:980px){.dashboard-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-charts{grid-template-columns:1fr 1fr}.dashboard-trend{grid-column:1/-1;grid-row:auto}}
@media(max-width:650px){.executive-dashboard{margin-top:28px}.dashboard-heading{flex-direction:column}.dashboard-period{width:100%}.dashboard-period button{flex:1}.dashboard-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-charts,.dashboard-tables{grid-template-columns:1fr}.dashboard-trend{grid-column:auto}.dashboard-date-controls{flex-wrap:wrap}.dashboard-date-controls label{flex:1}.dashboard-loading{grid-template-columns:1fr 1fr}.dashboard-loading span:last-of-type{display:none}}
@media(max-width:430px){.dashboard-filters{grid-template-columns:1fr}.dashboard-kpi strong{font-size:1.1rem}}
