* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; background: #f5f5f5; color: #333; }

.dashboard-layout { display: grid; grid-template-columns: 220px 1fr; grid-template-rows: 60px 1fr; min-height: 100vh; }

.dashboard-header { grid-column: 1 / -1; background: #2c3e50; color: white; display: flex; align-items: center; padding: 0 20px; gap: 20px; }
.dashboard-header h1 { font-size: 1.1em; margin-right: auto; }
.dashboard-header input[type="date"] { padding: 4px 8px; border: 1px solid #555; border-radius: 4px; background: #34495e; color: white; }
.dashboard-header .user-info { font-size: 0.9em; color: #bdc3c7; }
.dashboard-header button { background: none; border: 1px solid #e74c3c; color: #e74c3c; padding: 4px 12px; border-radius: 4px; cursor: pointer; }
.dashboard-header button:hover { background: #e74c3c; color: white; }

.sidebar { background: white; border-right: 1px solid #ddd; padding: 20px 0; }
.sidebar a { display: block; padding: 10px 20px; color: #333; text-decoration: none; font-size: 0.95em; }
.sidebar a:hover { background: #eaf2f8; color: #2E86C1; }
.sidebar a.active { background: #eaf2f8; color: #2E86C1; font-weight: bold; border-left: 3px solid #2E86C1; }

.main-content { padding: 20px; overflow-y: auto; }

.cards-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; margin-bottom: 20px; }
.metric-card { background: white; border-radius: 8px; padding: 20px; box-shadow: 0 2px 4px rgba(0,0,0,0.1); }
.metric-label { font-size: 0.85em; color: #888; margin-bottom: 4px; }
.metric-value { font-size: 1.8em; font-weight: bold; color: #2E86C1; }

table { width: 100%; border-collapse: collapse; background: white; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,0.1); }
th { background: #2E86C1; color: white; padding: 12px; text-align: left; }
td { padding: 10px 12px; border-bottom: 1px solid #eee; }
tr:hover { background: #f9f9f9; }

@media (max-width: 768px) {
    .dashboard-layout { grid-template-columns: 1fr; }
    .sidebar { display: none; }
    .cards-grid { grid-template-columns: repeat(2, 1fr); }
}
