/* Homepage "Notes on the work" carousel. Static cards in a scroll-snap track;
   JavaScript groups cards into looping pages. Without JS the track scrolls sideways. */
.rr-notes-carousel{margin-top:3.5rem}
.rr-notes-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:1.25rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding-bottom:.75rem;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
@media (min-width:640px){.rr-notes-track{grid-auto-columns:calc((100% - 1.25rem)/2)}}
@media (min-width:1024px){.rr-notes-track{grid-auto-columns:calc((100% - 2.5rem)/3)}}
.rr-notes-track>.post-card{scroll-snap-align:start;display:flex;flex-direction:column;min-height:16rem;min-width:0}
.rr-notes-track>.post-card>p:last-child{margin-top:auto;padding-top:1.25rem}
.rr-notes-track:focus-visible{outline:2px solid hsl(var(--accent));outline-offset:4px}
.rr-notes-carousel__controls{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}
.rr-notes-carousel__btn{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--foreground));transition:border-color .2s ease,color .2s ease}
.rr-notes-carousel__btn:hover:not(:disabled){border-color:hsl(var(--accent));color:hsl(var(--accent))}
.rr-notes-carousel__btn:focus-visible{outline:2px solid hsl(var(--accent));outline-offset:2px}
.rr-notes-carousel__btn:disabled{opacity:.4;cursor:default}
/* Space is reserved before JS runs, so the buttons never shift the layout. */
.rr-notes-carousel:not(.is-ready) .rr-notes-carousel__btn{visibility:hidden}
@media (prefers-reduced-motion:no-preference){.rr-notes-track{scroll-behavior:smooth}}

/* Each page slides as one group; sentinel copies keep either loop direction moving. */
.rr-notes-track.is-paged{grid-auto-columns:100%;scroll-behavior:auto}
.rr-notes-page{display:grid;grid-template-columns:repeat(var(--rr-notes-columns,1),minmax(0,1fr));gap:1.25rem;scroll-snap-align:start;min-width:0}
.rr-notes-page>.post-card{display:flex;flex-direction:column;min-height:16rem;min-width:0}
.rr-notes-page>.post-card>p:last-child{margin-top:auto;padding-top:1.25rem}
.rr-notes-carousel__pause{width:auto;min-width:4.75rem;padding-inline:1rem;font-size:.875rem}
/* The scrollport needs clearance above lifted cards and focus rings. */
.rr-notes-track{padding-top:.375rem}
