.social-feed-section {
    --feed-canvas: var(--home-sponsor-background, var(--bg));
    --feed-surface: var(--card);
    --feed-soft: color-mix(in srgb, var(--card-soft) 70%, var(--feed-surface));
    --feed-preview: var(--card-soft);
    --feed-line: var(--home-card-border, var(--border));
    --feed-muted: #58677b;
    --feed-selected-text: #fff;
    --feed-shadow: 0 2px 4px rgb(25 46 78 / 4%), 0 14px 32px -20px rgb(25 46 78 / 30%);
    --feed-quiet-shadow: 0 2px 3px rgb(25 46 78 / 3%), 0 9px 22px -18px rgb(25 46 78 / 22%);
    --feed-discussion-surface: color-mix(in srgb, var(--feed-soft) 96%, var(--text));
    --feed-discussion-join: color-mix(in srgb, var(--feed-soft) 98%, var(--text));
    --feed-discussion-end: var(--feed-soft);
    --feed-discussion-edge: color-mix(in srgb, var(--text) 10%, transparent);
    position:relative;
    isolation:isolate;
    scroll-margin-top:110px;
}
/* A full-width reading canvas. The posts remain independent surfaces. The
   scoped selector overrides the landing page's transparent section reset. */
.page-landing main > .social-feed-section[data-home-section="activity"] {
    padding-block:var(--home-section-inset) !important;
    border-block:1px solid var(--feed-line);
    background:var(--feed-canvas);
}
body.theme-dark .social-feed-section {
    --feed-surface: color-mix(in srgb, var(--card) 94%, var(--text));
    --feed-muted: #a7b6cb;
    --feed-selected-text: #0b1220;
    --feed-shadow: 0 2px 4px rgb(0 0 0 / 15%), 0 16px 30px -18px rgb(0 0 0 / 65%);
    --feed-quiet-shadow: 0 7px 20px -14px rgb(0 0 0 / 55%);
}
.feed-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:30px; }
.feed-heading-copy { min-width:0; }
.feed-kicker { color:var(--accent); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.feed-heading h2 { color:var(--text); font-size:clamp(1.65rem,3vw,2.1rem); font-weight:750; letter-spacing:-.055em; margin:7px 0 9px; }
.feed-heading p { color:var(--feed-muted); margin:0; font-size:.9rem; line-height:1.7; }
.social-feed-section svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex:none; }
.feed-layout { display:grid; grid-template-columns:minmax(0, 760px) minmax(250px, 300px); justify-content:center; align-items:start; gap:28px; }
.feed-main,.feed-sidebar { min-width:0; }
.feed-composer { margin-bottom:22px; padding:22px 24px 18px; border:1px solid var(--feed-line); border-radius:18px; background:var(--feed-surface); box-shadow:var(--feed-quiet-shadow); }
.feed-composer-heading { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.feed-composer-heading > div { min-width:0; }
.feed-composer-heading h3 { color:var(--text); font-size:.95rem; font-weight:750; line-height:1.5; margin:0 0 3px; }
.feed-composer-heading p { color:var(--feed-muted); font-size:.76rem; line-height:1.5; margin:0; }
.feed-composer-actor { flex:none; }
.feed-composer textarea { width:100%; min-height:106px; max-height:360px; resize:vertical; padding:14px 16px; border:1px solid var(--border-control); border-radius:12px; background:var(--feed-soft); color:var(--text); font:inherit; font-size:.9rem; line-height:1.7; }
.feed-composer textarea::placeholder { color:var(--feed-muted); opacity:1; }
.feed-composer :is(textarea,select):focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.feed-composer-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:12px; }
.feed-composer-actions .feed-action { margin-inline-start:0; padding-inline:0; }
.feed-composer-count { margin-inline-start:auto; font-size:.75rem; white-space:nowrap; color:var(--feed-muted); }
.feed-publish { min-height:44px; padding:10px 20px; border:1px solid var(--primary-control-border); border-radius:var(--control-radius, 10px); background:var(--primary-control-bg); color:var(--primary-control-text); font-size:.8rem; font-weight:750; }
.feed-publish:where(:hover, :focus-visible):not(:disabled) { background:var(--primary-control-hover-bg); border-color:var(--primary-control-state-border); }
.feed-publish:active:not(:disabled) { background:var(--primary-control-active-bg); border-color:var(--primary-control-state-border); }
.feed-publish:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.feed-composer button:disabled { opacity:.5; cursor:default; }
.feed-composer .feed-publish:disabled { opacity:1; background:var(--primary-control-disabled-bg); color:var(--primary-control-disabled-text); }
@media (forced-colors: active) {
    .feed-publish { border-color:ButtonText; }
    .feed-composer .feed-publish:disabled { border-color:GrayText; color:GrayText; }
    .feed-publish:focus-visible { outline-color:Highlight; }
}
.feed-composer-project { padding:12px; margin-top:12px; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); }
.feed-composer-project label { display:block; margin-bottom:6px; font-size:.75rem; font-weight:650; color:var(--feed-muted); }
.feed-composer-project > div { display:flex; gap:8px; align-items:center; }
.feed-composer-project select { min-width:0; width:100%; min-height:44px; padding:8px; border:1px solid var(--border-control); border-radius:8px; background:var(--feed-surface); color:var(--text); font:inherit; font-size:.8rem; }
.feed-composer-project .feed-action { flex:none; width:44px; font-size:1.25rem; }
.feed-composer-feedback { margin:10px 0 0; font-size:.76rem; line-height:1.6; color:var(--feed-muted); }
.feed-composer-feedback:empty { display:none; }
.feed-composer-feedback.is-error { color:var(--danger-text); }
.feed-composer-feedback.is-success { color:var(--success-text); }
.feed-composer-window-button { flex:none; display:grid; place-items:center; margin-inline-start:auto; width:44px; height:44px; padding:8px; border:0; border-radius:10px; background:transparent; color:var(--feed-muted); }
.feed-composer-window-button:hover { background:var(--accent-soft); color:var(--accent); }
.feed-composer-window-button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.feed-composer [hidden] { display:none; }
.feed-composer-editor { min-width:0; }
.feed-composer-attachments { display:flex; flex:1 1 auto; flex-wrap:wrap; gap:4px 14px; min-width:0; }
.feed-composer-actions .feed-composer-attachments .feed-action { margin:0; max-width:100%; min-width:0; white-space:normal; overflow-wrap:anywhere; }
.feed-composer-attachments .feed-action svg { flex:none; }
.feed-composer-media-hint { margin:4px 0 0; color:var(--feed-muted); font-size:.72rem; line-height:1.5; }
.feed-composer-video { margin:14px 0 0; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); overflow:hidden; }
.feed-composer-video video { display:block; width:100%; height:auto; max-height:none; background:#0f172a; }
.feed-composer-video figcaption { display:flex; align-items:center; gap:8px; padding:4px 12px; color:var(--feed-muted); font-size:.78rem; }
.feed-composer-video figcaption > span { min-width:0; overflow-wrap:anywhere; }
.feed-composer-video .feed-action { margin-inline-start:auto; flex:none; min-width:44px; font-size:1.25rem; }
.feed-composer-attachment { margin:14px 0 0; overflow:hidden; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); }
.feed-composer-attachment > img { display:block; width:100%; height:auto; max-height:none; }
.feed-composer-attachment figcaption { display:flex; align-items:center; gap:10px; padding:6px 12px; color:var(--feed-muted); font-size:.78rem; }
.feed-attachment-copy { display:grid; gap:3px; min-width:0; overflow-wrap:anywhere; }
.feed-attachment-copy small { color:var(--feed-muted); font-size:.75rem; }
.feed-document-icon,.feed-download-icon { flex:none; width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.feed-composer-attachment .feed-action { flex:none; margin-inline-start:auto; min-width:44px; font-size:1.25rem; }
.feed-composer-dialog { width:min(760px, calc(100% - 24px)); max-height:calc(100dvh / var(--profile-page-scale, 1) - 24px); padding:0; border:1px solid var(--feed-line); border-radius:20px; background:var(--feed-surface); color:var(--text); box-shadow:var(--shadow-lg); overflow:hidden; }
.feed-composer-dialog::backdrop { background:rgb(15 23 42 / 48%); }
.feed-composer-dialog .feed-composer { display:flex; flex-direction:column; margin:0; padding:0; border:0; border-radius:inherit; max-height:inherit; box-shadow:none; }
.feed-composer-dialog .feed-composer-heading { flex:none; margin:0; padding:20px 24px; border-bottom:1px solid var(--feed-line); }
.feed-composer-dialog .feed-composer-editor { padding:20px 24px; overflow-y:auto; overscroll-behavior:contain; }
.feed-composer-dialog textarea { min-height:220px; border-color:transparent; background:transparent; padding:8px 0; font-size:1rem; }
.feed-composer-dialog .feed-composer-actions { flex:none; margin:0; padding:12px 24px; border-top:1px solid var(--feed-line); }
.feed-composer-dialog .feed-composer-media-hint,
.feed-composer-dialog .feed-composer > .feed-composer-feedback,
.feed-composer-dialog [data-feed-composer-retry] { flex:none; margin:0; padding:0 24px 12px; }
.feed-post-video { margin:0 20px 18px; overflow:hidden; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); }
.feed-post-video video { display:block; width:100%; height:auto; max-height:none; background:#0f172a; }
.feed-post-video.is-unavailable video { display:none; }
.feed-post-video-error { margin:0; padding:16px; color:var(--feed-muted); font-size:.8rem; }
.feed-post-video-error[hidden] { display:none; }
.feed-post-image { margin:0 20px 18px; overflow:hidden; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); }
.feed-post-image img { display:block; width:100%; height:auto; max-height:none; }
.feed-media-layout { display:grid; gap:6px; margin-top:14px; }
.feed-media-layout > label { color:var(--text); font-size:.8rem; font-weight:650; }
.feed-media-layout select { width:100%; min-width:0; min-height:44px; padding:8px 10px; border:1px solid var(--border-control); border-radius:8px; background:var(--feed-surface); color:var(--text); font:inherit; font-size:.85rem; }
.feed-media-layout p { margin:0; color:var(--feed-muted); font-size:.75rem; line-height:1.5; }
:is(.feed-composer-attachment, .feed-composer-video, .feed-post-image, .feed-post-video)[data-media-layout="landscape"] { --feed-media-ratio:16 / 9; }
:is(.feed-composer-attachment, .feed-composer-video, .feed-post-image, .feed-post-video)[data-media-layout="portrait"] { --feed-media-ratio:4 / 5; }
:is(.feed-composer-attachment, .feed-composer-video, .feed-post-image, .feed-post-video)[data-media-layout="square"] { --feed-media-ratio:1; }
:is(.feed-composer-attachment, .feed-composer-video, .feed-post-image, .feed-post-video):is([data-media-layout="landscape"], [data-media-layout="portrait"], [data-media-layout="square"]) > :is(img, video) { aspect-ratio:var(--feed-media-ratio); object-fit:cover; object-position:center; }
.feed-post-image [hidden] { display:none; }
.feed-post-image-error { margin:0; padding:16px; color:var(--feed-muted); font-size:.8rem; }
.feed-profile-name { color:inherit; text-decoration:none; font-weight:inherit; }
.feed-profile-name:hover { color:var(--accent); text-decoration:underline; text-underline-offset:.18em; }
.feed-profile-avatar { display:inline-flex; align-items:center; justify-content:center; flex:none; border-radius:50%; color:inherit; text-decoration:none; }
.feed-profile-name:focus-visible,.feed-profile-avatar:focus-visible { outline:2px solid var(--accent); outline-offset:3px; border-radius:4px; }
.feed-comment-author:focus-visible { outline-offset:-2px; }
.feed-post-document { display:flex; align-items:center; gap:12px; min-width:0; min-height:76px; margin:0 20px 18px; padding:14px; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-soft); color:var(--text); font-size:.86rem; text-decoration:none; }
.feed-post-document:hover { border-color:var(--accent); background:var(--accent-soft); }
.feed-post-document .feed-download-icon { width:20px; height:20px; margin-inline-start:auto; color:var(--accent); }
.feed-document-download { color:var(--accent); font-size:.78rem; font-weight:650; }
.feed-post-menu-panel .feed-delete { color:var(--danger-text); }
@media (max-width:575.98px) {
    .feed-composer { padding:16px; }
    .feed-composer-heading { align-items:flex-start; }
    .feed-composer-heading p { font-size:.75rem; }
    .feed-composer-actions { flex-wrap:wrap; }
    .feed-composer-actions .feed-action { font-size:.75rem; }
    .feed-publish { padding-inline:15px; }
    .feed-composer-attachments { flex:1 0 100%; }
    .feed-composer-dialog .feed-composer-heading,
    .feed-composer-dialog .feed-composer-editor { padding:16px; }
    .feed-composer-dialog .feed-composer-heading { align-items:center; gap:8px; }
    .feed-composer-dialog .feed-composer-heading p { display:none; }
    .feed-composer-dialog .feed-composer-actions { padding:12px 16px; }
    .feed-composer-dialog .feed-composer-media-hint,
    .feed-composer-dialog .feed-composer > .feed-composer-feedback { padding-inline:16px; }
    .feed-composer-dialog textarea { min-height:160px; }
    .feed-post-video,.feed-post-image,.feed-post-document { margin-inline:12px; }
}
.feed-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; min-height:64px; padding:12px; margin-bottom:22px; border:1px solid var(--feed-line); border-radius:14px; background:var(--feed-surface); box-shadow:var(--feed-quiet-shadow); }
.feed-filters { display:flex; gap:5px; flex-wrap:wrap; }
.feed-filters button { border:0; background:transparent; padding:9px 15px; border-radius:var(--control-radius, 10px); font-size:.8rem; font-weight:650; color:var(--feed-muted); min-height:44px; }
.feed-filters button[aria-pressed=true] { color:var(--tab-selected-text, var(--accent)); background:var(--tab-selected-bg, var(--accent-soft)); box-shadow:none; }
.feed-filters button:hover:not([aria-pressed=true]) { background:var(--accent-soft); color:var(--text); }
.feed-sort { display:flex; align-items:center; gap:6px; white-space:nowrap; font-size:.75rem; color:var(--feed-muted); }
.feed-sort svg { width:15px; height:15px; }
.feed-selects { display:flex; flex:1 1 100%; gap:12px; padding-top:10px; border-top:1px solid var(--feed-line); }
.feed-select { display:flex; flex:1; min-width:0; flex-direction:column; gap:5px; color:var(--feed-muted); font-size:.75rem; font-weight:650; }
.feed-select select { width:100%; min-height:44px; border:1px solid var(--border-control); border-radius:var(--control-radius, 10px); padding:8px 30px 8px 10px; background:var(--feed-surface); color:var(--text); font:inherit; }
.feed-select select:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.feed-posts { display:grid; gap:28px; }
.feed-stage-heading { display:flex; align-items:center; gap:12px; margin:0; color:var(--feed-muted); font-size:.84rem; font-weight:650; line-height:1.5; }
.feed-stage-heading span { min-width:0; overflow-wrap:anywhere; }
.feed-stage-heading::after { content:""; flex:1 0 24px; border-top:1px solid var(--feed-line); }
/* Keep each card's controls below the open menu, including in adjacent cards. */
.feed-post { min-width:0; background:var(--feed-surface); border:1px solid var(--feed-line); border-radius:18px; box-shadow:var(--feed-shadow); overflow:clip; isolation:isolate; }
.feed-post:focus-within { border-color:var(--accent); }
.feed-event { display:flex; gap:7px; align-items:center; margin:4px 0; color:var(--feed-muted); font-size:.8rem; line-height:1.55; }
.feed-event svg { width:15px; height:15px; color:var(--accent); }
.feed-post-header { display:grid; grid-template-columns:46px minmax(0,1fr) 44px; align-items:center; column-gap:12px; row-gap:6px; padding:18px 24px 14px; }
.feed-post-person { min-width:0; }
.feed-post-meta { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1fr) fit-content(45%); column-gap:12px; }
.feed-post-meta > .feed-event { grid-column:1; grid-row:1; min-width:0; }
.feed-post-meta > .feed-event svg { flex:none; }
.feed-post-meta > .feed-author-meta { grid-column:1/-1; grid-row:2; }
.feed-author-row { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; }
.feed-post-context { grid-column:2; grid-row:1; align-self:center; margin:4px 0; color:var(--feed-muted); font-size:.75rem; line-height:1.5; text-align:end; overflow-wrap:anywhere; }
.feed-context-mobile { display:none; }
@media (max-width:767.98px) {
    .feed-context-desktop { display:none; }
    .feed-context-mobile { display:inline; }
}
.feed-avatar { position:relative; display:grid; place-items:center; flex:0 0 46px; width:46px; height:46px; overflow:hidden; border-radius:50%; background:var(--accent-soft); color:var(--accent); border:1px solid color-mix(in srgb,var(--accent) 15%,var(--border)); font-weight:750; font-size:.9rem; }
.feed-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.feed-author { display:block; font-weight:750; font-size:.9rem; color:var(--text); line-height:1.5; }
.feed-author-meta { display:flex; gap:6px; align-items:center; flex-wrap:wrap; color:var(--feed-muted); font-size:.75rem; margin-top:3px; }
.feed-author-meta svg { width:12px; height:12px; }
.feed-audience { display:inline-flex; align-items:center; gap:5px; white-space:nowrap; }
.feed-post-header > div { min-width:0; overflow-wrap:anywhere; }
.feed-kind { background:var(--feed-soft); border:1px solid var(--feed-line); color:var(--feed-muted); border-radius:6px; padding:2px 6px; font-size:.7rem; white-space:nowrap; }
.feed-post-menu { position:relative; z-index:5; flex:none; align-self:flex-start; margin-inline-start:auto; }
.feed-post-menu > summary { display:grid; place-items:center; width:44px; height:44px; border:1px solid transparent; border-radius:var(--control-radius, 10px); color:var(--feed-muted); background:transparent; cursor:pointer; list-style:none; }
.feed-post-menu > summary::-webkit-details-marker { display:none; }
.feed-post-menu > summary::marker { content:""; }
.feed-post-menu > summary:hover,.feed-post-menu[open] > summary { color:var(--text); background:var(--feed-soft); border-color:var(--feed-line); }
.feed-post-menu-panel { position:absolute; inset-inline-end:0; top:calc(100% + 6px); display:grid; width:min(236px, calc(100vw - 64px)); padding:6px; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-surface); box-shadow:var(--shadow-md); }
.feed-post-menu-panel :is(button, a) { display:flex; align-items:center; gap:10px; width:100%; min-height:44px; padding:10px 12px; border:0; border-radius:var(--control-radius, 10px); background:transparent; color:var(--text); font:inherit; font-size:.78rem; line-height:1.5; text-align:start; text-decoration:none; }
.feed-post-menu-panel :is(button, a):hover { background:var(--feed-soft); }
.feed-post-menu-panel button:disabled { opacity:.6; }
.feed-post-menu-panel svg { width:18px; height:18px; color:var(--feed-muted); }
.feed-post-menu-panel :focus-visible { outline-offset:-3px !important; }
.feed-post-menu-panel { width:min(280px, calc(100vw - 64px)); max-height:min(70vh, 560px); overflow-y:auto; overscroll-behavior:contain; }
.feed-menu-section { border-top:1px solid var(--feed-line); margin-top:4px; padding-top:6px; }
.feed-menu-label { display:block; padding:6px 12px; font-size:.75rem; font-weight:700; color:var(--feed-muted); }
.feed-post-menu-panel [data-action="hide"], .feed-post-menu-panel [data-action="hide"] svg { color:var(--danger-text); }
.feed-body { color:var(--text); padding:0 24px 18px; font-size:.94rem; line-height:1.85; white-space:pre-wrap; overflow-wrap:anywhere; }
.feed-body p { margin:0; }
.feed-post.is-comment-deleted .feed-body { color:var(--feed-muted); font-size:.75rem; padding-block-start:16px; }
.feed-body .is-clamped,.feed-project-description.is-clamped { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.feed-expand { border:0; background:transparent; padding:4px 0; color:var(--accent); font-size:.78rem; font-weight:650; }
.feed-project { margin:0 24px 20px; overflow:hidden; border:1px solid var(--feed-line); border-radius:12px; background:var(--feed-preview); }
.feed-cover { position:relative; aspect-ratio:16/8.5; background:var(--card-soft); overflow:hidden; }
.feed-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.feed-cover-fallback { display:none; }
.feed-cover.is-missing { display:none; }
.feed-project-copy { padding:10px 14px 12px; background:var(--feed-preview); }
.feed-project-copy > [hidden] { display:none; }
.feed-project-identity { display:grid; grid-template-columns:32px minmax(0,1fr) auto; gap:10px; align-items:center; margin:0; }
.feed-project-identity:has([data-feed-preview-caption-slot]) { grid-template-columns:32px minmax(0,1fr) fit-content(42%); }
.feed-project-identity > div { min-width:0; }
.feed-project-identity > .project-follow-control { margin-inline-start:0; max-inline-size:240px; justify-self:end; }
.feed-project-identity > .feed-logo { width:32px; height:32px; font-size:.75rem; }
.feed-logo { display:grid; place-items:center; flex:0 0 38px; width:38px; height:38px; border-radius:9px; overflow:hidden; position:relative; color:var(--accent); background:var(--card); border:1px solid var(--border); font-size:.8rem; font-weight:750; }
.feed-logo img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
.feed-project-identity h3 { min-width:0; margin:0; line-height:1.5; color:var(--text); font-size:.9rem; font-weight:750; white-space:normal; overflow-wrap:anywhere; }
.feed-project-open { display:flex; align-items:center; gap:8px; max-width:100%; min-height:44px; padding:2px 0; border:0; border-radius:4px; background:none; color:inherit; font:inherit; text-align:start; }
.feed-project-open:hover { color:var(--accent); }
.feed-project-open .home-app-card-title { margin:0; font:inherit; }
.feed-project-open > [aria-hidden] { flex:none; color:var(--feed-muted); }
.feed-project-type { font-size:.75rem; color:var(--feed-muted); }
/* Keep the shared description hook for project details, without its gallery
   minimum height or unconditional clamp inside the feed. */
.feed-project-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:0; margin:3px 0 0; line-height:1.6; color:var(--feed-muted); font-size:.82rem; white-space:pre-wrap; overflow-wrap:anywhere; }
.feed-project-link { display:inline-flex; align-items:center; gap:8px; margin-top:12px; padding:0; border:0; background:none; color:var(--accent); font-size:.75rem; font-weight:700; min-height:30px; }
.feed-project-copy > :is(.feed-project-link,.feed-expand) { justify-self:start; min-height:44px; margin:0; padding:0; }
.feed-interactions { display:flex; flex-wrap:wrap; align-items:center; gap:6px 16px; padding:12px 24px 10px; border-top:1px solid var(--feed-line); background:var(--feed-soft); }
.feed-interactions .showcase-reactions { width:100%; max-width:100%; display:flex; flex-direction:row; justify-content:space-between; align-items:center; min-height:44px; padding:0; border:0; border-radius:0; background:none; gap:8px; }
.feed-interactions .showcase-reaction-picker { gap:3px; min-width:0; max-width:100%; flex-wrap:wrap; overflow:visible; }
.feed-interactions .showcase-reaction-button { flex:0 0 33px; width:33px; min-width:33px; height:33px; padding:5px; }
.feed-interactions .showcase-reaction-summary { max-width:60%; font-size:.75rem; }
.feed-interactions .showcase-reaction-picker { order:2; }
.feed-interactions .showcase-reaction-summary { order:1; }
.feed-interactions .showcase-reaction-summary { min-height:44px; min-width:44px; padding:4px 0; text-align:start; }
.feed-interactions .showcase-reaction-more { order:2; display:inline-flex; justify-content:center; gap:7px; flex:0 1 auto; width:auto; min-width:44px; height:auto; min-height:44px; margin-inline-start:auto; padding:6px 10px; border-color:transparent; background:transparent; box-shadow:none; color:var(--feed-muted); font-size:.78rem; font-weight:650; }
.feed-interactions .showcase-reaction-more svg { flex:none; fill:none; }
.feed-interactions .showcase-reaction-more.is-selected { color:var(--accent); background:transparent; }
.feed-interactions .showcase-reaction-more:is(:hover,:focus-visible,[aria-expanded="true"]) { border-color:var(--accent); color:var(--accent); background:transparent; }
.feed-interactions .showcase-reaction-popover { inset-inline-start:auto; inset-inline-end:0; max-width:100%; padding:6px; border-radius:12px; }
.feed-interactions .showcase-reaction-popover .showcase-reaction-picker { display:grid; grid-template-columns:repeat(6,44px); gap:4px; }
.feed-interactions .showcase-reaction-popover .showcase-reaction-button { width:44px; min-width:44px; height:44px; }
.feed-post:has([data-showcase-reactions-toggle][aria-expanded="true"]) { overflow:visible; position:relative; z-index:4; }
.feed-post:has(.feed-post-menu[open]) { overflow:visible; position:relative; z-index:5; }
.feed-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; border:0; border-radius:var(--control-radius, 10px); background:none; color:var(--feed-muted); font-size:.76rem; font-weight:650; padding:8px 10px; text-decoration:none; }
.feed-action:hover { background:var(--accent-soft); color:var(--accent); }
.feed-action:last-child { margin-inline-start:auto; }
.feed-comment-summary > [data-feed-comments] { margin-inline-start:0; }
.feed-action svg { width:18px; height:18px; }
.feed-comments { display:grid; gap:7px; margin:0; padding:4px 24px 16px; list-style:none; background:var(--feed-soft); }
.feed-comments:empty { display:none; }
.feed-comment { display:flex; align-items:flex-start; gap:8px; min-width:0; }
.feed-comment .feed-avatar { flex:0 0 24px; width:24px; height:24px; font-size:.62rem; }
.feed-comment p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-width:0; margin:1px 0 0; color:var(--text); font-size:.8rem; line-height:1.6; overflow-wrap:anywhere; }
.feed-comment strong { font-weight:700; margin-inline-end:4px; }
.feed-discussion { min-width:0; padding:0 24px 16px; background:var(--feed-soft); }
.feed-discussion .feed-comments { padding:4px 0 8px; }
/* A quiet tonal wash separates discussion without another heavy card.
   Both gradients share a stop at the summary/body seam. */
.feed-post > .feed-interactions:has(> .feed-comment-summary) { padding-bottom:0; row-gap:0; }
.feed-comment-summary,.feed-comment-reading { --feed-muted:var(--muted); }
.feed-comment-summary {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px 16px;
    width:100%;
    min-width:0;
    padding:6px 12px 0;
    border-top:1px solid var(--feed-discussion-edge);
    border-radius:10px 10px 0 0;
    background:var(--feed-discussion-surface);
    background-image:linear-gradient(to bottom,var(--feed-discussion-surface),var(--feed-discussion-join));
}
.feed-comment-summary > [data-feed-comments] { color:var(--text); font-weight:750; }
.feed-comment-reading {
    min-width:0;
    padding:6px 12px 12px;
    border-radius:0 0 10px 10px;
    background:var(--feed-discussion-join);
    background-image:linear-gradient(to bottom,var(--feed-discussion-join),var(--feed-discussion-end));
    box-shadow:inset 0 -1px var(--feed-discussion-edge);
}
.feed-comment-reading .feed-comments { background:transparent; }
.feed-comment-reading > .feed-comments > .feed-comment + .feed-comment { padding-block-start:8px; border-top:1px solid var(--feed-discussion-edge); }
.feed-comment-reading .feed-comment p { font-size:.825rem; line-height:1.65; }
.feed-comment-reading .feed-comment-replies { margin-block-start:4px; padding-inline-start:10px; border-inline-start:2px solid var(--feed-discussion-edge); }
.feed-comment-content { min-width:0; flex:1; }
.feed-discussion.is-expanded .feed-comment p { display:block; overflow:visible; -webkit-line-clamp:unset; white-space:pre-wrap; }
.feed-comments-navigation,.feed-comment-actions { display:flex; flex-wrap:wrap; align-items:center; gap:0 10px; }
.feed-comment-actions { margin-block:-2px 0; }
.feed-comments-navigation:has(> [hidden]:first-child):has(> [hidden]:last-child) { display:none; }
.feed-comment-more,.feed-comment-actions button { min-height:44px; max-width:100%; padding:4px 0; border:0; border-radius:5px; background:none; color:var(--feed-muted); font-size:.75rem; font-weight:650; text-align:start; overflow-wrap:anywhere; }
.feed-comment-more:hover,.feed-comment-actions button:hover { color:var(--text); text-decoration:underline; text-underline-offset:3px; }
.feed-comment-more:disabled { opacity:.7; cursor:wait; }
.feed-comment-replies { display:grid; gap:8px; margin:0; padding:2px 0 4px; list-style:none; }
.feed-comment--reply .feed-avatar { width:22px; height:22px; flex-basis:22px; }
.feed-comment-composer { display:grid; gap:4px; min-width:0; margin-top:6px; }
.feed-comment-input-row { display:flex; align-items:flex-end; gap:2px; min-width:0; border:1px solid var(--feed-line); border-radius:var(--control-radius,10px); background:var(--feed-surface); padding:3px; }
.feed-comment-input-row:focus-within { border-color:var(--accent); }
.feed-comment-input-row textarea { flex:1; min-width:0; min-height:44px; max-height:144px; width:100%; resize:none; border:0; border-radius:6px; outline:none; padding:11px 7px; background:transparent; color:var(--text); font:inherit; font-size:.82rem; line-height:1.5; overflow-wrap:anywhere; }
.feed-comment-input-row textarea::placeholder { color:var(--feed-muted); opacity:1; }
.feed-comment-send,.feed-reply-target button { display:inline-flex; align-items:center; justify-content:center; flex:none; width:44px; min-height:44px; padding:8px; border:0; border-radius:var(--control-radius,10px); background:none; color:var(--feed-muted); }
.feed-comment-send { background:var(--accent-soft); color:var(--accent); }
.feed-comment-send:disabled { background:none; color:var(--feed-muted); opacity:.55; }
.feed-comment-send svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
[dir="rtl"] .feed-comment-send svg { transform:scaleX(-1); }
.feed-reply-target button:hover { background:var(--accent-soft); color:var(--text); }
.feed-reply-target { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; padding-inline-start:8px; color:var(--feed-muted); font-size:.76rem; }
.feed-reply-target span { min-width:0; overflow-wrap:anywhere; }
.feed-comment-notice { margin:4px 0 0; color:var(--feed-muted); font-size:.75rem; line-height:1.6; overflow-wrap:anywhere; }
.feed-comment-notice:empty { display:none; }
.feed-comment-notice.is-error { color:var(--danger-text); }
.feed-comment-edited { display:inline-flex; flex-wrap:wrap; gap:4px; color:var(--feed-muted); font-size:.68rem; line-height:1.5; }
.feed-comment-edited time { white-space:nowrap; }
.feed-comment-editor { display:grid; gap:4px; min-width:0; margin-block:4px 8px; }
.feed-comment-editor .feed-comment-actions { gap:12px; margin:0; }
.feed-comment-editor .feed-comment-actions button,.feed-comment-confirm button { padding-inline:8px; }
.feed-comment-confirm { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 12px; color:var(--feed-muted); font-size:.76rem; }
.feed-comment-confirm > span { overflow-wrap:anywhere; }
.feed-discussion .feed-comment-deleted { display:block; padding-block:8px; color:var(--feed-muted); font-size:.75rem; font-weight:400; }
.feed-comment-actions button:disabled { opacity:.55; cursor:default; }
.feed-discussion [hidden] { display:none!important; }
.feed-discussion button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
/* The shared input row carries focus, so the textarea has no inner frame. */
.feed-comment-input-row:has(textarea:focus-visible) { outline:2px solid var(--accent); outline-offset:2px; border-color:transparent; }
html[data-profile-contrast="high"] :is(.feed-comment-summary,.feed-comment-reading) {
    --feed-discussion-edge:var(--border);
    background:var(--card-soft);
}
@media(max-width:575.98px) {
    .feed-post > .feed-interactions:has(> .feed-comment-summary) { padding-inline:16px; }
    .feed-discussion { padding-inline:16px; }
    .feed-comment-input-row { flex-wrap:nowrap; }
    .feed-comment-input-row textarea { flex-basis:0; }
}
@media(forced-colors:active) {
    .feed-comment-summary,.feed-comment-reading { --feed-muted:CanvasText; --feed-discussion-edge:CanvasText; background:Canvas; color:CanvasText; }
    .feed-comment-summary { border-top:1px solid CanvasText; }
    .feed-comment-reading { border-bottom:1px solid CanvasText; }
    .feed-comment-input-row { border-color:CanvasText; }
    .feed-discussion button:focus-visible,.feed-comment-input-row:has(textarea:focus-visible) { outline-color:Highlight; }
    .feed-comment-send { border:1px solid ButtonText; }
}
.feed-new-posts,.feed-load-more { width:100%; padding:13px 20px; border-radius:var(--control-radius, 10px); border:1px solid var(--feed-line); color:var(--accent); background:var(--feed-surface); font-size:.82rem; font-weight:700; box-shadow:var(--feed-quiet-shadow); }
.feed-new-posts { margin-bottom:18px; background:var(--accent-soft); border-color:color-mix(in srgb,var(--accent) 25%,var(--border)); }
.feed-new-posts span { margin-inline-start:8px; }
.feed-load-more:disabled { opacity:.65; }
.feed-scroll-sentinel { height:1px; pointer-events:none; }
.feed-status { color:var(--feed-muted); font-size:.78rem; text-align:center; padding:16px 10px; }
.feed-status:empty { padding:0; }
.feed-status.is-error { color:var(--danger-text); }
.feed-status button { margin:8px; }
.feed-empty { text-align:center; padding:60px 26px; border:1px dashed var(--feed-line); border-radius:16px; background:var(--feed-surface); }
.feed-empty svg { width:36px; height:36px; margin-bottom:18px; color:var(--accent); }
.feed-empty h3 { font-size:1.1rem; font-weight:700; }
.feed-empty p { color:var(--muted); line-height:1.8; font-size:.85rem; }
.feed-sidebar { display:grid; gap:22px; padding-top:0; }
.feed-notifications { border:1px solid var(--feed-line); background:var(--feed-surface); border-radius:14px; box-shadow:var(--feed-quiet-shadow); scroll-margin-top:115px; }
.feed-notifications[open] summary { background:var(--feed-soft); border-bottom:1px solid var(--feed-line); border-radius:13px 13px 0 0; }
.feed-notifications summary { display:flex; align-items:center; justify-content:space-between; cursor:pointer; gap:10px; padding:17px 18px; font-size:.85rem; font-weight:700; list-style:none; }
.feed-notifications summary::-webkit-details-marker { display:none; }
.feed-notifications summary > span:first-child { display:flex; align-items:center; gap:10px; }
.feed-notifications summary svg { color:var(--accent); width:18px; }
.feed-details-chevron { color:var(--muted); }
.feed-notifications[open] .feed-details-chevron { transform:rotate(180deg); }
.feed-notifications-body { padding:14px 16px 12px; }
.feed-notifications-description { font-size:.75rem; line-height:1.7; color:var(--muted); }
.feed-notifications .home-activity-read-all { width:100%; justify-content:center; font-size:.75rem; padding:8px; min-height:36px; }
.feed-notifications .home-activity-list { padding:0; }
.feed-notifications .activity-item { padding:15px 0; display:grid; grid-template-columns:30px minmax(0,1fr); gap:8px; }
.feed-notifications .activity-item-type { display:none; }
.feed-notifications .activity-item-avatar { width:30px; height:30px; font-size:.75rem; }
.feed-notifications .activity-item-copy p { font-size:.75rem; line-height:1.7; }
.feed-notifications .activity-item-meta { font-size:.75rem; }
.feed-notifications .activity-item-actions { grid-column:2; justify-content:space-between; }
.feed-notifications .activity-item-open { font-size:.75rem; }
.feed-notifications .activity-item::before { display:none; }
.feed-notifications .activity-empty { padding:24px 0; font-size:.75rem; }
.feed-notifications .notifications-pagination { display:grid; gap:8px; padding-top:12px; font-size:.75rem; }
.feed-notifications .notifications-pagination button { min-height:40px; }
.feed-discovery { border:1px solid var(--feed-line); border-radius:14px; background:linear-gradient(180deg, var(--feed-preview), var(--feed-surface) 150px); box-shadow:var(--feed-quiet-shadow); padding:22px 20px; }
.feed-discovery .feed-kicker { font-size:.75rem; }
.feed-discovery h3 { margin:8px 0; color:var(--text); font-size:1rem; line-height:1.5; font-weight:750; letter-spacing:-.025em; }
.feed-discovery > p { font-size:.75rem; color:var(--muted); line-height:1.7; margin-bottom:18px; }
.feed-suggestion { display:flex; gap:10px; align-items:center; padding:15px 0; border-bottom:1px solid var(--border); }
.feed-suggestion > div { min-width:0; }
.feed-suggestion h4 { margin:0 0 4px; color:var(--text); font-size:.76rem; font-weight:700; overflow-wrap:anywhere; }
.feed-suggestion p { margin:0; color:var(--muted); font-size:.75rem; }
.feed-suggestion .feed-project-link { font-size:.75rem; margin:2px 0 0; }
.feed-discover-link { display:flex; justify-content:space-between; align-items:center; color:var(--accent); text-decoration:none; font-size:.75rem; font-weight:700; padding-top:18px; }
.feed-sidebar-note { color:var(--feed-muted); font-size:.75rem; line-height:1.8; padding:0 8px; }
.social-feed-section :is(button,a,summary):focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
@media (forced-colors:active) {
    .feed-filters button[aria-pressed=true] { outline:2px solid Highlight; outline-offset:-2px; }
    .feed-filters button[aria-pressed=true]:focus-visible { outline-width:3px; outline-offset:4px; }
    .feed-filters button:focus-visible { outline-color:Highlight; }
}
.feed-skeleton { padding:24px; border:1px solid var(--feed-line); background:var(--feed-surface); border-radius:18px; box-shadow:var(--feed-shadow); }
.feed-skeleton-heading { display:flex; gap:12px; align-items:center; margin-bottom:22px; }
.feed-skeleton-heading i { width:46px; height:46px; border-radius:50%; }
.feed-skeleton-heading span { width:40%; height:14px; border-radius:4px; }
.feed-skeleton-line { height:12px; margin-top:12px; width:90%; border-radius:4px; }
.feed-skeleton-line.short { width:60%; }
.feed-skeleton-cover { height:220px; margin-top:22px; border-radius:10px; }
.feed-skeleton :is(i,span,.feed-skeleton-line,.feed-skeleton-cover) { background:var(--accent-soft); animation:feed-pulse 1.6s ease-in-out infinite alternate; }
@keyframes feed-pulse { to { opacity:.4; } }
@media (prefers-reduced-motion:reduce) { .feed-skeleton * { animation:none !important; } }
@media (max-width:991px) {
    .feed-layout { grid-template-columns:minmax(0,720px); gap:16px; }
    .feed-sidebar { grid-row:1; padding-top:0; gap:0; }
    .feed-sidebar-note,.feed-discovery { display:none; }
    .feed-notifications-body { max-height:55vh; overflow-y:auto; }
    .feed-heading { margin-bottom:20px; }
}
@media (max-width:575px) {
    .page-landing main > .social-feed-section[data-home-section="activity"] { background-image:none; }
    .feed-heading { display:grid; grid-template-columns:minmax(0,1fr); align-items:center; gap:4px; }
    .feed-heading-copy { display:contents; }
    .feed-heading .feed-kicker { grid-column:1; grid-row:1; overflow-wrap:anywhere; }
    .feed-heading h2 { grid-column:1; grid-row:2; margin:0; overflow-wrap:anywhere; }
    .feed-heading p { grid-column:1/-1; grid-row:3; margin-top:5px; font-size:.77rem; }
    .feed-kicker { font-size:.75rem; }
    .feed-toolbar { gap:4px; flex-wrap:wrap; padding:7px; margin-bottom:18px; border-radius:12px; }
    .feed-filters { gap:1px; }
    .feed-filters button { font-size:.75rem; padding:9px 10px; }
    .feed-sort { margin-inline-start:auto; font-size:.75rem; padding:5px; }
    .feed-posts { gap:22px; }
    .feed-post { border-radius:14px; }
    .feed-event { font-size:.75rem; }
    .feed-event { flex-wrap:wrap; }
    .feed-event > svg { flex:none; }
    .feed-event .feed-ranking-reason { display:inline-block; order:3; flex:1 1 100%; margin-inline-start:23px; white-space:normal; }
    .feed-event .feed-kind { margin-inline-start:auto; }
    .feed-post-header { grid-template-columns:40px minmax(0,1fr) 44px; padding:14px 16px 12px; column-gap:10px; row-gap:6px; }
    .feed-avatar { width:40px; height:40px; flex-basis:40px; }
    .feed-author { font-size:.81rem; }
    .feed-author-meta { font-size:.75rem; }
    .feed-kind { font-size:.75rem; }
    .feed-body { padding:0 16px 16px; font-size:.92rem; }
    .feed-project { margin:0 12px 14px; }
    .feed-project-copy { padding:8px 10px 10px; }
    .feed-project-identity { grid-template-columns:32px minmax(0,1fr); }
    .feed-project-identity > .project-follow-control { grid-column:1/-1; max-inline-size:100%; justify-self:start; }
    .feed-interactions { padding:10px 14px 8px; gap:4px; }
    .feed-interactions .showcase-reactions { flex-wrap:wrap; gap:4px 8px; }
    .feed-interactions .showcase-reaction-summary { max-width:100%; }
    .feed-interactions .showcase-reaction-button { flex-basis:44px; width:44px; min-width:44px; height:44px; }
    .feed-interactions .showcase-reaction-popover .showcase-reaction-picker { grid-template-columns:repeat(3,44px); }
    .feed-action { font-size:.75rem; padding:8px; gap:5px; min-height:44px; }
    .feed-action svg { width:16px; height:16px; }
    .feed-comments { padding:4px 16px 14px; }
}
@media (max-width:360px) {
    .feed-filters button { padding-inline:4px; font-size:.75rem; }
}
@media (forced-colors:active) {
    .page-landing main > .social-feed-section[data-home-section="activity"] { background:Canvas; }
    .feed-filters button[aria-pressed=true] { border:2px solid Highlight; }
    .feed-post,.feed-project,.feed-toolbar,.feed-notifications,.feed-discovery { border-color:CanvasText; box-shadow:none; }
}
