/* Shared shell for Gold Rush Town public subpages (#1058/#1059/#1060/#1061/#1062). */
.townbar { position: sticky; top: 0; z-index: 50; display: flex; align-items: center; gap: 12px;
  padding: 8px 14px; background: #24170e; color: #fff3cf; border-bottom: 2px solid var(--accent, #f4c95d);
  font-family: monospace; font-size: 13px; }
.townbar-back { color: #24170e; background: #f4c95d; text-decoration: none; padding: 5px 11px; border-radius: 4px; font-weight: bold; white-space: nowrap; }
.townbar-back:hover { filter: brightness(1.08); }
.townbar-crumb { opacity: .9; }
.townbar-crumb b { color: var(--accent, #f4c95d); }
.townbar-crumb span { opacity: .5; margin: 0 4px; }
.townbar-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--accent, #f4c95d); margin-left: auto; box-shadow: 0 0 8px var(--accent, #f4c95d); }
/* Standardized loading / empty / error states (#1059/#983). */
.sp-state { padding: 28px 18px; text-align: center; font-family: monospace; font-size: 14px; color: #6b5535; }
.sp-loading::before { content: "⛏ "; }
.sp-error { color: #9f3d25; }
.sp-retry { margin-left: 10px; padding: 5px 10px; border: 1px solid #9f3d25; background: transparent; color: #9f3d25; border-radius: 4px; cursor: pointer; font-family: monospace; }
@media (prefers-reduced-motion: no-preference) { .sp-loading { animation: sp-pulse 1.2s ease-in-out infinite; } }
@keyframes sp-pulse { 50% { opacity: .55; } }
