.rm-saved-page { max-width: 1100px; margin: 0 auto; padding: var(--rm-space-6) var(--rm-space-5); }
.rm-saved-sub { color: var(--rm-fog); margin-bottom: var(--rm-space-5); }

.rm-saved-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--rm-space-4);
}

.rm-saved-loading { color: var(--rm-fog); padding: var(--rm-space-6) 0; }

.rm-saved-grid .rm-empty {
    grid-column: 1 / -1;
}
.rm-saved-eyebrow {
    display: block;
    font-family: var(--rm-font-body);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--rm-moss);
    margin-bottom: var(--rm-space-2);
}
.rm-saved-page h1 { font-size: 1.9rem; margin-bottom: var(--rm-space-2); }
.rm-saved-section-heading { font-size: 1.3rem; margin: var(--rm-space-6) 0 var(--rm-space-4); }
.rm-saved-divider { border: none; border-top: 1px solid var(--rm-fog-light); margin: var(--rm-space-6) 0; }
.rm-spot-icon-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-right: var(--rm-space-2);
}
.rm-saved-grid .rm-spot-card {
    margin-bottom: 0;
    opacity: 0;
    animation: rm-card-rise 420ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.rm-saved-grid .rm-spot-card:nth-child(1) { animation-delay: 0ms; }
.rm-saved-grid .rm-spot-card:nth-child(2) { animation-delay: 40ms; }
.rm-saved-grid .rm-spot-card:nth-child(3) { animation-delay: 80ms; }
.rm-saved-grid .rm-spot-card:nth-child(4) { animation-delay: 120ms; }
.rm-saved-grid .rm-spot-card:nth-child(5) { animation-delay: 160ms; }
.rm-saved-grid .rm-spot-card:nth-child(6) { animation-delay: 200ms; }
.rm-saved-grid .rm-spot-card:nth-child(n+7) { animation-delay: 240ms; }
@keyframes rm-card-rise {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
    .rm-saved-grid .rm-spot-card { animation: none; opacity: 1; }
}
.rm-saved-grid .rm-spot-card {
    box-shadow: var(--rm-shadow-sm);
    border-radius: var(--rm-radius-lg);
}
.rm-saved-grid .rm-spot-card:hover { box-shadow: var(--rm-shadow-lg); }
.rm-spot-type-label {
    display: inline-flex;
    align-items: center;
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--rm-moss-dark);
}
.rm-tag-outline {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--rm-fog-light);
    border-radius: var(--rm-radius-sm);
    padding: 2px 8px;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--rm-fog);
    margin-left: var(--rm-space-2);
}

/* Font direction: Inter throughout, no Fraunces on this page (TrailsOffroad / AllTrails style) */
.rm-saved-page h1,
.rm-saved-page h2,
.rm-saved-page h3 {
    font-family: var(--rm-font-body);
    font-weight: 500;
    letter-spacing: -0.01em;
}
.rm-saved-section-heading {
    font-weight: 600;
}
