/* the project page only. notes/ and couplings/ carry their own styles.
   the card layout is the noise-scaling page's (g-kl.github.io/noise-scaling/),
   but the colours are the notes': the --c-* values come from
   notes/assets/tokens.css, which index.html loads first, so a change to
   src/notes/theme.py reaches this page too. */

:root {
  --link-purple: #efe6ff;
  --link-blue: #e6f0ff;
  --link-green: #e6ffef;
  --link-yellow: #fff6dd;
}

html, body { min-height: 100%; }

body {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--c-bg);
  font-family: 'M PLUS Rounded 1c', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  color: var(--c-ink);
  padding: 3rem;
}

.card {
  width: 100%;
  max-width: 900px;
  background: var(--c-sheet);
  border-radius: 8px;
  padding: 2rem;
  border: 1px solid var(--c-hairline);
  line-height: 1.45;
}

h1 { font-size: 1.25rem; margin: 0; }

.authors {
  color: var(--c-ink-muted);
  font-size: 0.95rem;
  margin-top: 0.25rem;
  font-style: italic;
}

/* boxed like the contents block at the top of the notes (.contents in
   src/notes/static/site.css), label included. */
.abstract {
  margin-top: 1rem;
  padding: 1rem 1.3rem 1.2rem;
  border: 1px solid var(--c-hairline);
  border-radius: var(--radius);
  background: var(--c-wash);
  font-size: var(--size-small);
}
.abstract-head {
  margin: 0 0 0.2rem;
  font-size: var(--size-tiny);
  letter-spacing: 0.07em;
  color: var(--c-ink-faint);
}

.card-footer {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: space-between;
  margin-top: 1rem;
  flex-wrap: wrap;
  padding-top: 0.75rem;
  border-top: 1px solid var(--c-hairline);
}

.desc { color: var(--c-ink-muted); font-size: 0.95rem; flex: 1; min-width: 220px; }

.links { display: flex; gap: 0.75rem; flex-wrap: wrap; }
.links a {
  text-decoration: none;
  color: var(--c-ink);
  padding: 0.6rem 0.9rem;
  border-radius: 10px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  border: 1px solid transparent;
  transition: transform 0.14s ease, box-shadow 0.14s ease;
}
.links a:hover { transform: translateY(-3px); }
.paper { background: var(--link-purple); }
.notes { background: var(--c-bg); }
.couplings { background: var(--link-green); }
.code { background: var(--link-blue); }
.data { background: var(--link-yellow); }

@media (max-width: 560px) {
  body {
    padding: 1rem;
    align-items: flex-start;
    padding-top: 1.5rem;
  }
  .card { padding: 1.25rem; }
  h1 { font-size: 1.1rem; line-height: 1.3; }
  .authors { font-size: 0.85rem; }
  .card-footer { gap: 0.75rem; }
  .desc { min-width: 100%; order: 2; }
  .links { order: 1; width: 100%; justify-content: flex-start; }
}
