::selection {
  background: #bae6fd;
  color: #0c4a6e;
}

html {
  scroll-behavior: smooth;
}

body {
  background-color: #faf8f5;
}

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: #f1efe9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5c8;
  border-radius: 8px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94a3ad;
}

.gp-cursor {
  display: inline-block;
  width: 0.55em;
  background: #0284c7;
  margin-left: 2px;
  animation: gp-blink 1.1s steps(1) infinite;
}

@keyframes gp-blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

.gp-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.gp-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.gp-feed-row {
  transition: background-color 120ms ease;
}

.gp-feed-row:hover {
  background-color: #f1f5f9;
}

.gp-prose h2 {
  font-weight: 700;
  font-size: 1.15rem;
  margin-top: 2rem;
  margin-bottom: 0.6rem;
  color: #1c1917;
}

.gp-prose p {
  color: #44403c;
  line-height: 1.75;
  margin-bottom: 1rem;
}

.gp-prose ul {
  list-style: disc;
  padding-left: 1.25rem;
  color: #44403c;
  margin-bottom: 1rem;
}

.gp-prose li {
  margin-bottom: 0.4rem;
  line-height: 1.6;
}

#gp-cookie-banner {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 60;
  background: #ffffff;
  border-top: 1px solid #d6d3ce;
}
