feat: admin dashboard with stats and recent activity

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Gestoría LP
2026-03-02 00:21:58 +00:00
parent fbf1b31dc0
commit 660d41fb31
2 changed files with 329 additions and 1 deletions

View File

@@ -1625,7 +1625,143 @@ textarea.form-control {
}
/* ==========================================================
23. PRINT STYLES
23. DASHBOARD
========================================================== */
/* stat-card__number — alias for stat-card__value used on dashboard */
.stat-card__number {
font-size: var(--admin-font-2xl);
font-weight: 700;
color: var(--admin-gray-900);
line-height: 1.2;
display: block;
}
/* Card body (generic content area inside .card) */
.card__body {
/* inherits padding from .card; no extra padding needed */
}
/* Card header headings */
.card__header h2 {
font-size: var(--admin-font-md);
font-weight: 600;
color: var(--admin-gray-900);
display: flex;
align-items: center;
gap: 0.5rem;
}
.card__header h2 i {
color: var(--admin-primary);
font-size: var(--admin-font-base);
}
/* Dashboard two-column grid */
.dashboard-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.5rem;
}
@media (max-width: 992px) {
.dashboard-grid {
grid-template-columns: 1fr;
}
}
/* Reminder list */
.reminder-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0.75rem;
}
.reminder-item {
display: flex;
align-items: center;
gap: 1rem;
padding: 0.75rem;
border-radius: var(--admin-radius);
background: var(--admin-gray-100);
transition: var(--admin-transition);
}
.reminder-item:hover {
background: var(--admin-gray-200);
}
.reminder-item--overdue {
background: var(--admin-danger-light);
border-left: 3px solid var(--admin-danger);
}
.reminder-item--overdue:hover {
background: #f5c6cb;
}
.reminder-item--today {
background: var(--admin-warning-light);
border-left: 3px solid var(--admin-warning);
}
.reminder-item--today:hover {
background: #ffe8a1;
}
.reminder-item__date {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-width: 48px;
height: 48px;
background: var(--admin-white);
border-radius: var(--admin-radius-sm);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
flex-shrink: 0;
}
.reminder-item__day {
font-size: var(--admin-font-lg);
font-weight: 700;
color: var(--admin-gray-900);
line-height: 1.1;
}
.reminder-item__month {
font-size: var(--admin-font-xs);
color: var(--admin-gray-600);
text-transform: uppercase;
font-weight: 600;
letter-spacing: 0.05em;
}
.reminder-item__info {
display: flex;
flex-direction: column;
gap: 0.125rem;
min-width: 0;
}
.reminder-item__info strong {
font-size: var(--admin-font-sm);
color: var(--admin-gray-800);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.reminder-item__info small {
font-size: var(--admin-font-xs);
color: var(--admin-gray-600);
}
/* ==========================================================
24. PRINT STYLES
========================================================== */
@media print {
.sidebar,