.ent-section {
  margin-bottom: var(--space-10);
}

.ent-section h2 {
  font-size: 1.125rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--color-text-secondary);
  margin-bottom: var(--space-4);
}

.ent-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-4);
}

.ent-card {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-card);
  transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}

.ent-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-card);
  border-color: #cbd5e1;
}

.ent-icon {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-btn);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}

.ent-info {
  display: flex;
  flex-direction: column;
}

.ent-title {
  font-weight: 600;
  font-size: 1rem;
  color: var(--color-text);
  margin-bottom: 2px;
}

.ent-desc {
  font-size: 0.8125rem;
  color: var(--color-text-secondary);
}

/* Icon Colors */
.ent-card.moodle .ent-icon { background: #e0e7ff; color: #4f46e5; }
.ent-card.planning .ent-icon { background: #dbeafe; color: #2563eb; }
.ent-card.mail .ent-icon { background: #d1fae5; color: #059669; }
.ent-card.results .ent-icon { background: #fef3c7; color: #d97706; }
.ent-card.docs .ent-icon { background: #fce7f3; color: #db2777; }
.ent-card.biu .ent-icon { background: #fae8ff; color: #c026d3; }
.ent-card.pstage .ent-icon { background: #e0f2fe; color: #0284c7; }
.ent-card.support .ent-icon { background: #f3f4f6; color: #4b5563; }

.ent-notice {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-text-secondary);
  font-size: 0.875rem;
  margin-top: var(--space-6);
  padding-top: var(--space-6);
  border-top: 1px solid var(--color-border);
}
