@import url('https://fonts.googleapis.com/css2?family=Istok+Web:wght@400;700&display=swap');

:root {
  --paasport-primary: #00689C;
  --paasport-accent: #67C1C4;
  --paasport-secondary: #E6FEFF;
  --paasport-ink: #333333;
  --paasport-mid: #7D7D7D;
  --paasport-line: #E0E0E0;
  --paasport-surface: #F5F5F5;
  --paasport-white: #FFFFFF;
}

body {
  font-family: 'Istok Web', sans-serif;
  background: var(--paasport-surface);
  color: var(--paasport-ink);
}

a {
  color: var(--paasport-primary);
}

.navbar,
.account-masthead,
.masthead,
.site-footer {
  background: var(--paasport-white);
  border-color: var(--paasport-line);
}

.dataset-list {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  margin: 0;
  padding: 0;
}

.dataset-item {
  background: var(--paasport-white);
  border: 1px solid var(--paasport-line);
  border-radius: 18px;
  padding: 20px;
  box-shadow: 0 16px 30px rgba(0, 104, 156, 0.08);
}

.dataset-heading {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 8px;
}

.dataset-heading a {
  color: var(--paasport-primary);
}

.dataset-private.badge,
.badge.bg-info,
.badge.bg-danger {
  border-radius: 999px;
  padding: 4px 10px;
}

.dataset-private.badge {
  background: var(--paasport-secondary);
  border: 1px solid var(--paasport-accent);
  color: var(--paasport-primary);
}

.dataset-content .empty {
  color: var(--paasport-mid);
}

.dataset-resources .badge {
  background: var(--paasport-secondary);
  border: 1px solid var(--paasport-accent);
  color: var(--paasport-primary);
  font-weight: 600;
}

.module {
  border: none;
  background: transparent;
}

.module-content {
  padding: 0;
}
