.fsf-feed { --fsf-gap: 4px; --fsf-accent: #39ff14; width: 100%; }
.fsf-feed .fsf-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--fsf-gap); align-items: start; overflow-anchor: none; }
.fsf-feed .fsf-tile { display: block; position: relative; aspect-ratio: 4/5; overflow: hidden; background: #151515; color: #39ff14; min-width: 0; text-decoration: none; }
.fsf-feed .fsf-tile img { display: block; width: 100%; height: 100%; object-fit: cover; margin: 0; border-radius: 0; }
.fsf-feed .fsf-tile[aria-expanded="true"] { outline: 3px solid var(--fsf-accent); outline-offset: -3px; }
.fsf-feed .fsf-tile:focus-visible, .fsf-feed button:focus-visible { outline: 3px solid currentColor; outline-offset: -4px; }
.fsf-feed .fsf-placeholder { display: grid; place-items: center; height: 100%; font-size: clamp(20px,8vw,80px); }
.fsf-feed .fsf-panel { grid-column: 1/-1; min-width: 0; padding: clamp(16px,4vw,56px); background: var(--cs-layout-background,Canvas); color: var(--cs-primary-color,CanvasText); border-block: 1px solid currentColor; overflow-wrap: anywhere; scroll-margin-top: calc(var(--cs-header-height,0px) + 16px); }
.fsf-feed .fsf-panel header, .fsf-feed .fsf-content { max-width: 760px; margin-inline: auto; }
.fsf-feed .fsf-panel h2 { font-size: clamp(24px,4vw,44px); line-height: 1.15; margin-block: 1em .5em; }
.fsf-feed .fsf-content { line-height: 1.7; }
.fsf-feed .fsf-content img { max-width: 100%; height: auto; }
.fsf-feed .fsf-close { display: block; margin-left: auto; cursor: pointer; border: 1px solid currentColor; background: transparent; color: inherit; padding: .65em 1em; border-radius: 0; font: inherit; }
.fsf-feed .fsf-pages { display: flex; flex-wrap: wrap; gap: 16px; justify-content: center; margin-block: 24px; }
.fsf-feed .fsf-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (prefers-reduced-motion: reduce) { .fsf-feed * { scroll-behavior: auto !important; } }
