.rm-board { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; align-items: start; padding: 40px 0 8px; }

@media (min-width: 1120px) { .rm-board { margin-left: -80px; margin-right: -80px; } }

.rm-col-head { display: flex; align-items: center; gap: 13px; padding-bottom: 16px; margin-bottom: 18px; border-bottom: 0.5px solid var(--border); }
.rm-col-head h2 { font-family: var(--font-display); font-weight: 700; font-size: 1.3rem; margin: 0; line-height: 1; }
.rm-col-head p { font-size: 0.8rem; color: var(--text-muted); margin: 4px 0 0; }

.rm-moon { width: 22px; height: 22px; border-radius: 50%; flex-shrink: 0; }
.rm-moon-full { background: radial-gradient(circle at 38% 34%, #eef0ff, #c4ccf6 26%, #6d83e0 62%, #34406f 100%); box-shadow: 0 0 12px rgba(94, 124, 230, 0.45); }
.rm-moon-waxing { background: linear-gradient(90deg, #2a3158 0 50%, #c4ccf6 50% 100%); box-shadow: 0 0 9px rgba(94, 124, 230, 0.22); }
.rm-moon-new { background: var(--bg-surface); border: 1px solid var(--border-strong); box-shadow: inset -4px -1px 7px rgba(94, 124, 230, 0.20); }
.rm-moon-crescent { background: linear-gradient(90deg, #232a4d 0 68%, #c4ccf6 68% 100%); box-shadow: 0 0 7px rgba(94, 124, 230, 0.16); }

.rm-item { display: flex; gap: 13px; background: var(--bg-surface); border: 0.5px solid var(--border); border-radius: var(--radius-lg); padding: 15px 16px; margin-bottom: 12px; transition: border-color 160ms, transform 160ms; }
.rm-item:hover { border-color: var(--border-strong); transform: translateY(-1px); }
.rm-item-icon { width: 36px; height: 36px; flex-shrink: 0; display: grid; place-items: center; border-radius: var(--radius-md); background: var(--bg-app-soft); border: 0.5px solid var(--border); color: var(--periwinkle); font-size: 1.1rem; }
.rm-item h3 { font-family: var(--font-display); font-weight: 600; font-size: 1rem; margin: 0 0 4px; }
.rm-item p { font-size: 0.88rem; color: var(--text-secondary); margin: 0; line-height: 1.45; }
.rm-item.star .rm-item-icon { color: var(--teal); border-color: color-mix(in srgb, var(--teal) 45%, transparent); }

.rm-col.dense .rm-item { padding: 10px 13px; margin-bottom: 8px; gap: 11px; }
.rm-col.dense .rm-item-icon { width: 31px; height: 31px; font-size: 1rem; }
.rm-col.dense .rm-item h3 { margin-bottom: 2px; }
.rm-col.dense .rm-item p { line-height: 1.38; }

.rm-note { text-align: center; font-size: 0.9rem; color: var(--text-muted); max-width: 62ch; margin: 32px auto 0; line-height: 1.5; }

@media (max-width: 1024px) {
    .rm-board { grid-template-columns: repeat(2, 1fr); margin-left: 0; margin-right: 0; }
}

@media (max-width: 860px) {
    .rm-board { grid-template-columns: 1fr; gap: 12px; padding-top: 34px; }
    .rm-col { margin-bottom: 16px; }
}

@media (prefers-reduced-motion: reduce) {
    .rm-item { transition: none; }
}
