/* Scoped to the guestbook so the rest of the page keeps its own styling. */
.guestbook { margin-top: 24px; }
.guestbook-intro { margin-bottom: 20px; }
.guestbook-form { display: grid; gap: 16px; }
.guestbook-field { display: grid; gap: 7px; min-width: 0; }
.guestbook-field label { color: var(--purple); font: 0.875rem/1.5 var(--mono); }
.guestbook-field input, .guestbook-field textarea {
  width: 100%; min-width: 0; padding: 11px 12px;
  color: var(--text); background: var(--surface-deep);
  border: 2px inset var(--edge-light); border-radius: 0;
  font: 1rem/1.6 Verdana, Geneva, sans-serif;
}
.guestbook-field input { max-width: 400px; }
.guestbook-field textarea { resize: vertical; min-height: 130px; }
.guestbook-field input::placeholder, .guestbook-field textarea::placeholder { color: var(--muted); opacity: 1; }
.guestbook-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.guestbook-actions p { color: var(--muted); font-size: 0.875rem; }
.guestbook-actions .retro-button { width: auto; margin: 0; padding: 10px 18px; font-size: 0.875rem; }
.guestbook-trap { display: none; }
.guestbook-error { border-left: 3px solid var(--pink); padding: 12px; margin-bottom: 16px; background: var(--surface-deep); color: var(--pink); }
.guestbook-heading { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; flex-wrap: wrap; margin-top: 28px; padding-top: 22px; border-top: 1px dashed var(--edge-light); }
.guestbook-heading h3 { font: normal 1.3rem/1.5 Georgia, serif; }
.guestbook-heading > span { color: var(--muted); font: 0.875rem/1.5 var(--mono); }
.guestbook-entry { padding: 20px 0; border-bottom: 1px solid #554264; scroll-margin-top: 20px; }
.guestbook-entry:target { background: #30243f; padding-inline: 12px; }
.guestbook-entry header { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 9px; }
.guestbook-entry h4 { color: var(--green); font: bold 1rem/1.6 var(--mono); overflow-wrap: anywhere; }
.guestbook-entry time { color: var(--muted); font: 0.75rem/1.8 var(--mono); }
.guestbook-entry > p { white-space: pre-wrap; overflow-wrap: anywhere; }
.guestbook-empty { padding-top: 18px; color: var(--muted); }
.guestbook-pagination { display: flex; justify-content: center; flex-wrap: wrap; gap: 18px; padding-top: 22px; font: 0.875rem/1.7 var(--mono); }
@media (max-width: 700px) { .guestbook-actions .retro-button { width: 100%; } }
