*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: system-ui, -apple-system, sans-serif;
  background: #f0f2f5;
  color: #1a1a1a;
  min-height: 100vh;
}

main {
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem;
}

h2 {
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 1rem;
  color: #1a1a2e;
}

.category { margin-bottom: 2.5rem; }

.tools-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
}

.tool-card {
  background: #fff;
  border-radius: 8px;
  padding: 1.2rem 1.4rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  text-decoration: none;
  color: inherit;
  transition: box-shadow .15s, transform .15s;
  display: block;
}
.tool-card:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,.12);
  transform: translateY(-2px);
}

.tool-card h3 {
  font-size: 1rem;
  font-weight: 600;
  color: #2563eb;
  margin-bottom: .3rem;
  display: flex;
  align-items: center;
  gap: .35rem;
}
.tool-card .lock { font-size: .8rem; opacity: .55; }
.tool-card-locked { opacity: .75; }
.tool-card-locked:hover { opacity: 1; }

/* Niet-klikbare info-tegel (bijv. countdown). */
.tool-card-info {
  background: #eef4ff;
  cursor: default;
}
.tool-card-info:hover {
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  transform: none;
}
.tool-card-info h3 { color: #1a1a2e; }
.tool-card-info p { font-size: 1rem; font-weight: 600; color: #2563eb; }
.tool-card p {
  font-size: .85rem;
  color: #555;
  line-height: 1.5;
}
