body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #f4f6f9;
}

.sidebar {
    height: 100vh;
    background-color: #2c3e50;
    color: white;
    padding-top: 20px;
    position: fixed;
    width: 250px;
}

.sidebar a {
    padding: 15px 25px;
    text-decoration: none;
    font-size: 16px;
    color: #b8c7ce;
    display: block;
}

.sidebar a:hover, .sidebar a.active {
    background-color: #34495e;
    color: white;
    border-left: 4px solid #3498db;
}

.content {
    margin-left: 250px;
    padding: 20px;
}

.card-summary {
    border-left: 4px solid #3498db;
}

.status-present { color: green; }
.status-absent { color: red; }
.status-scheduled { color: blue; }

.table-responsive {
    background: white;
    padding: 15px;
    border-radius: 5px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
