/* WR-META 2.0 / isolated Community Feed.
 * Uses existing GGLYTICS variables, DLE comment portrait classes, group colors,
 * PRO badges, native WRM buttons/dialogs, BBCode editor and toast stack.
 * Feed-specific layout lives here; core component styles remain unchanged. */
.wrm2-social{--wrmf-mint:var(--wrm2-mint,#1cfb8c);--wrmf-line:var(--wrm2-line-strong,#35484c);--wrmf-muted:var(--wrm2-muted,#8e9da2);min-width:0;max-width:1280px;margin:0 auto;color:var(--wrm2-text,#dce8e4);font-family:var(--wrm2-font,inherit)}
.wrm2-social *{box-sizing:border-box}
.wrm2-social [hidden]{display:none!important}
.wrm2-social-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px;padding:0 0 22px;border-bottom:1px solid var(--wrm2-line,#28373b)}
.wrm2-social-heading h1{margin:7px 0 8px;color:var(--wrm2-text,#f3f6f5);font:900 clamp(24px,2.6vw,34px)/1.15 var(--wrm2-display,inherit)}
.wrm2-social-heading p:not(.wrm2-kicker){margin:0;color:var(--wrmf-muted);font-size:13px;line-height:1.6}
.wrm2-social-pilot{padding:6px 11px;border:1px solid var(--wrmf-mint);font:900 10px/1.3 var(--wrm2-font,inherit);color:var(--wrmf-mint);letter-spacing:.08em;white-space:nowrap}
.wrm2-social-shell{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:18px;align-items:start}
.wrm2-social-primary{min-width:0}
.wrm2-social-sidebox{position:sticky;top:85px;background:var(--wrm2-panel,#0e1618);border:1px solid var(--wrmf-line);padding:21px}
.wrm2-social-sidebox h2,.wrm2-social-stream-label h2{margin:0 0 14px;font:900 12px/1.4 var(--wrm2-font,inherit);letter-spacing:.08em;color:var(--wrm2-text,#e4f1e9)}
.wrm2-social-sidebox strong{font:900 10px/1.3 var(--wrm2-font,inherit);letter-spacing:.08em;color:var(--wrmf-mint)}
.wrm2-social-sidebox p{margin:7px 0 15px;color:var(--wrmf-muted);font-size:12px;line-height:1.75}
.wrm2-social-side-separator{height:1px;background:var(--wrmf-line);margin:18px 0}
.wrm2-social-notice,.wrm2-social-empty{border:1px solid var(--wrmf-line);background:var(--wrm2-panel,#0e1518);padding:22px;color:var(--wrmf-muted);font-size:13px;line-height:1.6}
.wrm2-social a{color:inherit}
.wrm2-social-composer,.wrm2-social-post{background:var(--wrm2-panel,#0c1316);border:1px solid var(--wrmf-line);min-width:0}
.wrm2-social-composer{margin:0 0 20px;padding:18px}
.wrm2-social-composer-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}
.wrm2-social-composer-head strong{font:900 14px/1.3 var(--wrm2-font,inherit);color:var(--wrm2-text,#e8f3ef);letter-spacing:.045em}
.wrm2-social-composer-head small,.wrm2-social-photo-count{color:var(--wrmf-muted);font:800 11px/1.4 var(--wrm2-font,inherit);font-variant-numeric:tabular-nums}
.wrm2-social-composer textarea,.wrm2-social-comment-form textarea,.wrm2-social-url{box-sizing:border-box;width:100%;min-width:0;max-width:100%;background:var(--wrm2-canvas,#091013);border:1px solid var(--wrmf-line);border-radius:0;color:var(--wrm2-text,#e5f0ee);font:500 12px/1.65 var(--wrm2-font,inherit);padding:12px;outline:0}
.wrm2-social-composer textarea,.wrm2-social-comment-form textarea{resize:vertical;min-height:96px}
.wrm2-social-comment-form textarea{min-height:70px}
.wrm2-social-composer textarea:focus,.wrm2-social-url:focus,.wrm2-social-comment-form textarea:focus{border-color:var(--wrmf-mint)}
.wrm2-social-composer textarea::placeholder,.wrm2-social-comment-form textarea::placeholder,.wrm2-social-url::placeholder{color:var(--wrmf-muted)}
.wrm2-social-url{margin-top:10px}
.wrm2-social-btn,.wrm2-social-load{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:37px;padding:9px 12px;background:var(--wrm2-panel2,#111b1e);border:1px solid var(--wrmf-line);border-radius:0;color:var(--wrm2-text,#dce9e5);font:900 10px/1.2 var(--wrm2-font,inherit);letter-spacing:.035em;white-space:nowrap;cursor:pointer;text-decoration:none;transition:border-color .15s,color .15s,background .15s}
.wrm2-social-btn:is(:hover,:focus-visible),.wrm2-social-load:is(:hover,:focus-visible){border-color:var(--wrmf-mint);color:var(--wrmf-mint);outline:0}
.wrm2-social-btn:disabled{opacity:.48;cursor:wait}
.wrm2-social-btn--primary{margin-left:auto;background:var(--wrmf-mint);border-color:var(--wrmf-mint);color:#061b10}
.wrm2-social-btn--primary:hover{background:#a0ffda;border-color:#a0ffda;color:#071a0f}
.wrm2-social-icon-button,.wrm2-social-post-link{gap:7px}
/* All feed action icons are neutral grey; action states are communicated by their labels. */
.wrm2-social-action-icon{display:block;flex:0 0 16px;width:16px;height:16px;object-fit:contain;opacity:.85;filter:grayscale(1)}
.wrm2-social-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.wrm2-social-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.wrm2-social-file-label{position:relative;cursor:pointer}
.wrm2-social-message{margin-top:10px;color:var(--wrmf-muted);font-size:11px;line-height:1.5}
.wrm2-social-message.is-error{color:#ff8291}
.wrm2-social-file-previews{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--wrmf-line) transparent;margin-top:13px;padding-bottom:6px;max-width:100%}
.wrm2-social-file-card{position:relative;flex:0 0 clamp(112px,16vw,155px);min-width:0;padding:4px;background:var(--wrm2-canvas,#0a1113);border:1px solid var(--wrmf-line);scroll-snap-align:start}
.wrm2-social-file-card>img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#11191c}
.wrm2-social-file-card>small{display:block;padding:7px 0 3px;font-size:10px;color:var(--wrmf-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.wrm2-social-file-remove{position:absolute;z-index:2;top:7px;right:7px;display:grid;place-items:center;box-sizing:border-box;width:24px;height:24px;min-width:24px;min-height:24px;padding:4px;border:1px solid var(--wrmf-line);background:var(--wrm2-canvas2,#0b1415);color:var(--wrm2-text,#fff);cursor:pointer;font-size:0;line-height:1}
.wrm2-social-file-remove .wrm2-social-action-icon{width:14px;height:14px;flex-basis:14px}
.wrm2-social-file-remove:is(:hover,:focus-visible){background:var(--wrm2-panel2);border-color:var(--wrmf-mint);outline:0}
.wrm2-social-stream-label{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.wrm2-social-stream-label h2{margin:0}
.wrm2-social-stream-label>span{color:var(--wrmf-muted);font:800 10px/1.3 var(--wrm2-font,inherit)}
.wrm2-social-stream{display:grid;gap:14px}
.wrm2-social-post{padding:17px}
.wrm2-social-post-head,.wrm2-social-comment-head{display:flex;align-items:center;gap:12px;min-width:0}
.wrm2-social-portrait{flex:0 0 48px;position:relative;width:48px;height:48px}
.wrm2-social-portrait-link{display:block;width:48px;height:48px}
.wrm2-social-avatar{display:block;width:48px;height:48px;object-fit:cover;border-radius:50%}
.wrm2-social-identity{min-width:0;flex:1}
.wrm2-social-author-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;min-width:0}
.wrm2-social-identity a.wrm2-comment__author{display:inline-block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;color:var(--wrm2-text,#edf6f0);font:900 12px/1.45 var(--wrm2-font,inherit);text-decoration:none}
.wrm2-social-identity a.wrm2-comment__author:hover{color:var(--wrmf-mint)}
.wrm2-social-identity .wrm2-comment__role{font:800 10px/1.4 var(--wrm2-font,inherit);color:var(--wrmf-muted)}
.wrm2-social-date{display:block;margin-top:4px;color:var(--wrmf-muted);font:500 10px/1.4 var(--wrm2-font,inherit)}
.wrm2-social-post-head>.wrm2-social-delete{margin-left:auto}
.wrm2-social-delete{color:var(--wrmf-muted);border-color:transparent;background:transparent}
.wrm2-social-delete:hover{border-color:var(--wrmf-line);color:var(--wrm2-text,#dce8e4)}
.wrm2-social-post-text{margin:15px 0;color:var(--wrm2-text,#d5e1dd);white-space:pre-wrap;overflow-wrap:anywhere;font:500 13px/1.7 var(--wrm2-font,inherit)}
/* Post gallery: 1 full-width 16:9, 2 side-by-side 16:9, 3-10 one hero plus horizontal miniatures. */
.wrm2-social-images{min-width:0;margin:15px 0;display:grid;gap:7px}
.wrm2-social-images--single{grid-template-columns:minmax(0,1fr)}
.wrm2-social-images--pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.wrm2-social-images--gallery{grid-template-columns:minmax(0,1fr)}
.wrm2-social-image-button{position:relative;display:block;min-width:0;width:100%;height:auto;aspect-ratio:16/9;padding:0;border:1px solid var(--wrmf-line);background:#0a1113;overflow:hidden;cursor:zoom-in}
.wrm2-social-image-button img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .2s ease}
.wrm2-social-image-button:is(:hover,:focus-visible){border-color:var(--wrmf-mint);outline:0}
.wrm2-social-image-button:hover img{transform:scale(1.025)}
.wrm2-social-image-strip{display:flex;gap:7px;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--wrmf-line) transparent;padding-bottom:5px;scroll-snap-type:x proximity}
.wrm2-social-image-strip .wrm2-social-image-button{flex:1 0 clamp(116px,17%,170px);scroll-snap-align:start}
/* Provider embeds stay in their own centered viewport; do not stretch portrait video to the full post width. */
.wrm2-social-video{margin:14px 0;background:#070d10;border:1px solid var(--wrmf-line);display:grid;justify-items:center;min-width:0;overflow:hidden}
.wrm2-social-video iframe{display:block;border:0;width:100%;height:auto;aspect-ratio:16/9}
/* TikTok's official player avoids the legacy embedded post with its large site layout. */
.wrm2-social-video--tiktok iframe{width:min(100%,370px);aspect-ratio:9/16;height:auto;max-height:none}
/* Instagram's licensed embed retains Instagram controls/attribution; restrict its outer dimensions, not the video itself. */
.wrm2-social-video--instagram iframe,.wrm2-social-video--instagram_reel iframe{width:min(100%,390px);height:690px;max-height:none;aspect-ratio:auto}
.wrm2-social-video-caption{box-sizing:border-box;width:100%;padding:9px 12px;color:var(--wrmf-muted);font-size:11px}
.wrm2-social-video-caption a{color:var(--wrmf-mint);text-decoration:none}
.wrm2-social-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;border-top:1px solid var(--wrm2-line,#29383b);padding-top:13px;margin-top:14px}
.wrm2-social-actions .wrm2-social-btn,.wrm2-social-actions .wrm2-social-post-link{min-height:34px;padding:7px 11px;font-size:10px;background:transparent;border:1px solid transparent;color:var(--wrmf-muted)}
.wrm2-social-actions .wrm2-social-btn:is(:hover,:focus-visible),.wrm2-social-actions .wrm2-social-post-link:is(:hover,:focus-visible),.wrm2-social-actions .wrm2-social-btn--active{border-color:var(--wrmf-line);color:var(--wrmf-mint)}
.wrm2-social-post-link{display:inline-flex;align-items:center;gap:7px;text-decoration:none;white-space:nowrap;font:900 10px/1.2 var(--wrm2-font,inherit)}
.wrm2-social-post-link .wrm2-social-action-icon{width:15px;height:15px}
.wrm2-social-comment-count{display:inline-flex;align-items:center;min-height:34px;color:var(--wrmf-muted);font:900 10px/1.2 var(--wrm2-font,inherit);letter-spacing:.035em;white-space:nowrap}
.wrm2-social-comments{margin-top:13px;padding-top:14px;border-top:1px solid var(--wrm2-line,#263538)}
.wrm2-social-comment.wrm2-comment{display:block;margin:0 0 9px;padding:13px;border:1px solid var(--wrmf-line);background:var(--wrm2-canvas2,#0b1315);transition:border-color .15s}
.wrm2-social-comment.wrm2-comment:hover{border-color:var(--wrm2-muted,#7c9195)}
.wrm2-social-comment.is-reply{margin-left:26px;border-left:2px solid var(--wrmf-mint)}
.wrm2-social-comment .wrm2-social-comment-head .wrm2-social-portrait,.wrm2-social-comment .wrm2-social-portrait-link{width:38px;height:38px;flex-basis:38px}
.wrm2-social-comment .wrm2-social-avatar{width:38px;height:38px}
.wrm2-social-comment .wrm2-comment__tier{width:20px;height:20px;right:-4px;bottom:-4px}
.wrm2-social-comment .wrm2-comment__tier img{width:16px;height:16px}
.wrm2-social-comment-body{padding:9px 0 10px 50px;color:var(--wrm2-text,#dce8e4);white-space:pre-wrap;overflow-wrap:anywhere;font:500 12px/1.7 var(--wrm2-font,inherit)}
.wrm2-social-comment-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-left:49px}
.wrm2-social-comment-actions .wrm2-social-btn{padding:5px 8px;min-height:28px;background:transparent;border-color:transparent;font-size:10px;color:var(--wrmf-muted)}
.wrm2-social-comment-actions .wrm2-social-btn:is(:hover,:focus-visible),.wrm2-social-comment-actions .wrm2-social-btn[aria-pressed=true]{color:var(--wrmf-mint);border-color:var(--wrmf-line)}
.wrm2-social-comment-form{display:grid;gap:9px;margin-top:12px;padding:12px;border:1px solid var(--wrmf-line);background:var(--wrm2-panel,#0d1517)}
.wrm2-social-comment-form .wrm2-social-btn--primary{justify-self:end;margin-left:0}
.wrm2-social-comment-form small,.wrm2-social-editor-hint{color:var(--wrmf-muted);font-size:11px}
.wrm2-social-load{width:100%;margin:16px 0}
/* Same shared WRM2 BBCode editor for posts and comments; stable item/emoji sizes. */
.wrm2-social-editor{--wrbc-line:var(--wrmf-line);--wrbc-strong:var(--wrmf-line)}
/* Match the neutral monochrome axe icon in the shared BBCode editors. */
.wrm2-social .wr-bc-editor-toolbar [data-emoji-toggle]{display:grid;place-items:center;align-self:center;line-height:1}
.wrm2-social .wr-bc-editor-toolbar [data-emoji-toggle]::before{content:'';display:block;width:14px;height:14px;background:var(--wrmf-muted);-webkit-mask:url('../../ui/axe.svg') center/contain no-repeat;mask:url('../../ui/axe.svg') center/contain no-repeat}
.wrm2-social .wr-bc-editor-toolbar [data-emoji-toggle] img{display:none}
.wrm2-social .wrm2-social-editor .wr-bc-emoji-panel{top:43px}
.wrm2-social .wrm2-social-editor .wr-bc-rich-surface{min-height:100px}
.wrm2-social .wrm2-social-comment-form .wr-bc-rich-surface{min-height:68px}
.wrm2-social :is(.wr-bc-rich-emoji,.wrm2-game-emoji){display:inline-block;vertical-align:-5px;width:22px;height:22px;max-width:22px;max-height:22px;object-fit:contain;float:none;margin:0 2px}
.wrm2-social .wr-bc-rich-emoji--pixel{width:24px;height:24px;max-width:24px;max-height:24px}
.wrm2-social .wr-bc-rich-emoji--stat{width:16px;height:16px;max-width:16px;max-height:16px;vertical-align:-3px}
/* Stable modal gallery; images letterboxed rather than resizing the viewer. */
.wrm2-social-lightbox{position:fixed;inset:0;display:grid;place-items:center;z-index:99999;padding:54px 52px;background:#020607ed;overscroll-behavior:contain;overflow:hidden}
.wrm2-social-lightbox[hidden],.wrm2-social-lightbox-stage>button[hidden]{display:none!important}
.wrm2-social-lightbox-stage{position:relative;display:grid;place-items:center;width:min(1000px,100%);height:min(760px,calc(100vh - 110px));height:min(760px,calc(100dvh - 110px));min-width:0;min-height:0;overflow:visible;background:var(--wrm2-canvas,#0b1113);border:1px solid var(--wrmf-line)}
.wrm2-social-lightbox-stage>img{display:block;max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;background:#071013;transition:none}
.wrm2-social-lightbox-stage>button{position:absolute;z-index:1;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--wrmf-line);background:var(--wrm2-canvas,#0b1113);color:var(--wrm2-text,#fff);font:800 24px/1 Arial;cursor:pointer}
.wrm2-social-lightbox-stage>button:is(:hover,:focus-visible){border-color:var(--wrmf-mint);color:var(--wrmf-mint);outline:0}
.wrm2-social-lightbox-stage>button .wrm2-social-action-icon{width:18px;height:18px}
.wrm2-social-lightbox-prev .wrm2-social-action-icon{transform:rotate(90deg)}
.wrm2-social-lightbox-next .wrm2-social-action-icon{transform:rotate(-90deg)}
.wrm2-social-lightbox-close{top:-46px;right:0}
.wrm2-social-lightbox-prev{top:50%;left:-50px;transform:translateY(-50%)}
.wrm2-social-lightbox-next{top:50%;right:-50px;transform:translateY(-50%)}
.wrm2-social-lightbox-count{position:absolute;bottom:-36px;left:50%;transform:translateX(-50%);font:900 12px/1.3 var(--wrm2-font,inherit);color:var(--wrm2-text,#fff)}
/* Confirmation and fallback clipboard dialogs, matching existing site modal buttons. */
.wrm2-social-dialog{width:min(460px,calc(100vw - 28px));max-height:calc(100vh - 40px);padding:23px;background:var(--wrm2-canvas2,#0c1517);color:var(--wrm2-text,#e7f3ec);border:1px solid var(--wrmf-line);border-radius:0;box-shadow:0 24px 80px #000c}
.wrm2-social-dialog::backdrop{background:#010606dd;backdrop-filter:blur(4px)}
.wrm2-social-dialog-head h2{font:900 19px/1.3 var(--wrm2-display,inherit);margin:6px 0 15px;color:var(--wrm2-text,#fff)}
.wrm2-social-dialog>p{font:500 12px/1.7 var(--wrm2-font,inherit);color:var(--wrmf-muted);margin:0 0 17px}
.wrm2-social-dialog>input{width:100%;padding:12px;margin:0 0 13px;border:1px solid var(--wrmf-line);background:var(--wrm2-canvas,#0b1113);color:var(--wrm2-text,#fff)}
.wrm2-social-dialog-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}
.wrm2-social-profile{min-width:0}
.wrm2-social-profile>.wrm2-profile-section-head{margin-bottom:15px}
.wrm2-social-profile .wrm2-social-composer,.wrm2-social-profile .wrm2-social-post{padding:14px}
.wrm2-social-full-link{color:var(--wrmf-mint)!important;text-decoration:none;font:900 10px/1.4 var(--wrm2-font,inherit)}
@media(max-width:1050px){.wrm2-social-shell{grid-template-columns:minmax(0,1fr) 235px;gap:14px}}
@media(max-width:800px){.wrm2-social-shell{grid-template-columns:minmax(0,1fr)}.wrm2-social-aside{display:none}}
@media(max-width:620px){.wrm2-social-composer,.wrm2-social-post{padding:12px}.wrm2-social-file-previews{gap:6px}.wrm2-social-file-card{flex-basis:120px}.wrm2-social-controls{gap:7px}.wrm2-social-controls .wrm2-social-btn--primary{margin-left:0}.wrm2-social-action-icon{width:15px;height:15px}.wrm2-social-comment.is-reply{margin-left:11px}.wrm2-social-lightbox{padding:55px 10px 55px}.wrm2-social-lightbox-stage{height:min(640px,calc(100vh - 120px));height:min(640px,calc(100dvh - 120px))}.wrm2-social-lightbox-prev{left:7px;top:auto;bottom:7px;transform:none}.wrm2-social-lightbox-next{right:7px;top:auto;bottom:7px;transform:none}.wrm2-social-lightbox-stage>button .wrm2-social-action-icon{width:18px;height:18px}
.wrm2-social-lightbox-prev .wrm2-social-action-icon{transform:rotate(90deg)}
.wrm2-social-lightbox-next .wrm2-social-action-icon{transform:rotate(-90deg)}
.wrm2-social-lightbox-close{top:-45px;right:0}.wrm2-social-lightbox-count{bottom:-34px}}
@media(max-width:410px){.wrm2-social-heading h1{font-size:24px}.wrm2-social-pilot{font-size:9px}.wrm2-social-actions{gap:3px}.wrm2-social-actions .wrm2-social-btn,.wrm2-social-actions .wrm2-social-post-link{padding:7px;font-size:9px}.wrm2-social-post-head,.wrm2-social-comment-head{gap:9px}.wrm2-social-portrait,.wrm2-social-portrait-link,.wrm2-social-avatar{width:40px;height:40px}.wrm2-social-portrait{flex-basis:40px}.wrm2-social-images{gap:5px}.wrm2-social-image-strip{gap:5px}.wrm2-social-image-strip .wrm2-social-image-button{flex-basis:108px}}
