/* B30 — isolated post overflow action owner. No duplicate Account Library or Pin styling. */
.dhvx-post__actor .dhvx-context { flex: 0 0 auto; margin-inline-start: auto; align-self: flex-start; }
.dhvx-context__trigger { appearance: none; border: 0; border-radius: 50%; background: transparent; color: var(--dhvx-text-secondary, #555); min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0; font: 700 29px/1 system-ui, sans-serif; cursor: pointer; }
.dhvx-context__trigger:hover, .dhvx-context__trigger[aria-expanded="true"] { background: var(--dhvx-surface-soft, #f3f4f6); color: var(--dhvx-text, #222); }
.dhvx-context__trigger:focus-visible, .dhvx-context__item:focus-visible, .dhvx-context__close:focus-visible { outline: 2px solid var(--dhvx-brand, #bd1b29); outline-offset: 2px; }
.dhvx-context__panel[hidden], .dhvx-context__scrim[hidden], .dhvx-context__item[hidden], .dhvx-context__notice[hidden] { display: none !important; }
.dhvx-context__panel { box-sizing: border-box; position: fixed; z-index: 100200; width: min(340px, calc(100vw - 24px)); max-height: min(77vh, 620px); overflow-y: auto; overscroll-behavior: contain; padding: 8px; border: 1px solid var(--dhvx-border, #e0e0e0); border-radius: 15px; box-shadow: 0 12px 40px #0002; background: var(--dhvx-surface, #fff); color: var(--dhvx-text, #222); font-family: var(--dhv-sans, system-ui, sans-serif); }
.dhvx-context__header { display: none; }
.dhvx-context__group { background: var(--dhvx-surface-soft, #f6f6f7); border-radius: 12px; padding: 5px; }
.dhvx-context__group + .dhvx-context__group { margin-top: 8px; }
.dhvx-context__item { box-sizing: border-box; text-align: left; display: flex; align-items: center; gap: 12px; width: 100%; min-height: 46px; padding: 10px 12px; border: none; border-radius: 9px; text-decoration: none; color: var(--dhvx-text, #222); background: transparent; cursor: pointer; font: 600 15px/1.35 var(--dhv-sans, system-ui, sans-serif); }
.dhvx-context__item:hover { background: color-mix(in srgb, var(--dhvx-border, #ddd) 50%, transparent); color: var(--dhvx-text, #222); }
.dhvx-context__item:disabled { opacity: .5; cursor: default; }
.dhvx-context__glyph { flex: 0 0 26px; display: flex; justify-content: center; align-items: center; font-size: 21px; }
.dhvx-context__report { margin: 0; }
.dhvx-context__status { padding: 4px 10px; font-size: 13px; color: var(--dhvx-text-secondary, #555); }
.dhvx-context__scrim { display: none; }
.dhvx-context__notice { position: fixed; z-index: 100220; inset-inline: 12px; bottom: 18px; width: fit-content; max-width: min(520px, calc(100vw - 24px)); margin-inline: auto; padding: 11px 16px; border: 1px solid var(--dhvx-border, #ddd); border-radius: 10px; background: var(--dhvx-surface, #fff); color: var(--dhvx-text, #222); box-shadow: 0 8px 22px #0002; font: 600 14px/1.4 system-ui, sans-serif; }
/* Only when JS is ready and matching actions exist: keep native controls as behavior owners, hide duplicate UI. */
.dhvx-post.dhvx-context-pin-ready .dhvx-feed-pin-action { display: none !important; }
.dhvx-post.dhvx-context-pin-only .dhvx-feed-pin-tools { display: none !important; }
.dhvx-post.dhvx-context-ready .dhvx-save-action, .dhvx-post.dhvx-context-ready .dhvx-save-login { display: none !important; }
@media (max-width: 700px) {
  .dhvx-context__scrim:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 100180; background: rgb(0 0 0 / 48%); }
  .dhvx-context__panel.is-mobile { top: auto !important; left: 0 !important; right: 0 !important; bottom: 0; width: 100vw; max-height: min(83dvh, 730px); border: none; border-radius: 22px 22px 0 0; padding: 8px 14px max(18px, env(safe-area-inset-bottom)); box-shadow: 0 -10px 32px #0003; }
  .dhvx-context__panel.is-mobile .dhvx-context__header { display: flex; position: relative; align-items: center; justify-content: center; min-height: 62px; padding-top: 11px; margin-bottom: 5px; font: 700 18px/1.3 var(--dhv-sans, system-ui, sans-serif); }
  .dhvx-context__handle { position: absolute; top: 1px; left: 50%; transform: translateX(-50%); height: 5px; width: 39px; border-radius: 6px; background: #94979e; }
  .dhvx-context__close { appearance: none; position: absolute; right: 0; top: 9px; display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; background: transparent; border: none; border-radius: 50%; color: inherit; }
  .dhvx-context__item { min-height: 52px; font-size: 16px; padding: 12px 10px; }
  .dhvx-context__notice { bottom: max(16px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { .dhvx-context__panel, .dhvx-context__trigger { transition: none !important; } }
