:root {
  color-scheme: light;
  --accent: #0d6efd;
  --accent-bg: #eaf3ff;
  --bg: #ffffff;
  --text: #0f172a;
  --border: #bfdbfe;
}

body {
  grid-template-columns: 1fr min(52rem, 90%) 1fr;
}

header,
footer {
  background: var(--accent-bg);
}

header nav {
  align-items: center;
}

.brand {
  font-weight: 700;
}

button,
a.button,
input[type="submit"] {
  background-color: var(--accent);
  border-color: var(--accent);
}

.software-grid {
  display: grid;
  gap: 1rem;
  margin-top: 1.5rem;
}

.software-card {
  border: 1px solid var(--border);
  border-radius: 0.5rem;
  padding: 1rem;
}

.software-card h3 {
  margin-top: 0;
}

.software-meta {
  color: var(--accent);
  font-weight: 700;
}

#statusPanel {
  border-color: var(--border);
}

@media (min-width: 720px) {
  .software-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
