/* Owner media controls are siblings of the grid's open buttons. */
.profile-media-grid-cell { position: relative; min-width: 0; }
.profile-media-grid-cell > .profile-media-grid-item { width: 100%; height: 100%; }
#profileBackdrop .gallery[data-media-tab="photo"] .profile-media-grid-cell[data-profile-media-kind="video"],
#profileBackdrop .gallery[data-media-tab="video"] .profile-media-grid-cell[data-profile-media-kind="photo"] { display: none !important; }
button.profile-media-delete,
button.profile-media-viewer-delete {
  display: grid !important; place-items: center; flex-shrink: 0;
  width: 44px !important; min-width: 44px !important; height: 44px !important; min-height: 44px !important;
  padding: 10px !important; border: 1px solid rgba(255,255,255,.3) !important; border-radius: 50% !important;
  color: #fff !important; background: rgba(8,8,14,.78) !important; cursor: pointer;
}
button.profile-media-delete { position: absolute !important; z-index: 4; top: 4px; right: 4px; }
button.profile-media-delete svg, button.profile-media-viewer-delete svg { width: 22px; height: 22px; pointer-events: none; }
button.profile-media-delete:focus-visible, button.profile-media-viewer-delete:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
button.profile-media-delete:disabled, button.profile-media-viewer-delete:disabled { opacity: .55; cursor: wait; }
.profile-media-delete-status:empty { display: none; }

/* A saved photo pin remains visible while the options menu is closed. */
html body svg.dancer-photo-pin-indicator { position:absolute; top:8px; left:8px; z-index:3; box-sizing:border-box; width:24px; height:24px; padding:4px; border:1px solid rgba(255,255,255,.4); border-radius:50%; color:#fff; background:rgba(8,8,14,.82); fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }

/* The same three-dot disclosure is used throughout the dancer media editors. */
.tv-managed-video { position:relative; }
html body details.dancer-media-menu { position:absolute; top:2px; right:2px; z-index:5; width:44px; height:44px; min-width:44px; margin:0; padding:0; border:0; background:transparent; box-shadow:none; }
html body details.dancer-media-menu[open] { z-index:6; }
html body details.dancer-media-menu.is-left { left:2px; right:auto; }
html body details.dancer-media-menu.is-inline { position:relative; inset:auto; flex:0 0 44px; }
html body details.dancer-media-menu > summary { display:grid; place-items:center; width:44px; height:44px; min-height:44px; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:#fff; cursor:pointer; list-style:none; }
html body details.dancer-media-menu > summary::-webkit-details-marker { display:none; }
html body details.dancer-media-menu > summary::after { content:none; }
html body details.dancer-media-menu > summary > span { box-sizing:border-box; width:30px; height:30px; display:grid; place-items:center; justify-self:end; border:1px solid #ffffff80; border-radius:50%; background:#08080ee6; }
html body details.dancer-media-menu.is-left > summary > span, html body details.dancer-media-menu.is-inline > summary > span { justify-self:center; }
html body details.dancer-media-menu > summary svg { width:19px; height:19px; fill:currentColor; stroke:none; }
html body details.dancer-media-menu[data-pinned="true"] > summary > span { border-color:#c4a5eb; background:#21182ee6; }
html body details.dancer-media-menu > .dancer-media-menu-popover { box-sizing:border-box; position:absolute; top:38px; right:0; width:88px; padding:0; overflow:hidden; border:1px solid #ffffff38; border-radius:9px; background:#17141d; box-shadow:0 4px 12px #0006; }
html body details.dancer-media-menu:not([open]) > .dancer-media-menu-popover { display:none; }
html body details.dancer-media-menu.is-left > .dancer-media-menu-popover { left:0; right:auto; }
html body details.dancer-media-menu.is-inline > .dancer-media-menu-popover { top:auto; bottom:46px; }
html body details.dancer-media-menu > .dancer-media-menu-popover > button, html body.dancr-button-system details.dancer-media-menu > .dancer-media-menu-popover > button { box-sizing:border-box; display:flex !important; align-items:center; justify-content:flex-start; gap:7px; width:100% !important; height:44px !important; min-width:0 !important; max-width:none !important; min-height:44px !important; max-height:44px !important; aspect-ratio:auto !important; margin:0 !important; padding:0 11px !important; border:0 !important; border-radius:0 !important; background:transparent !important; color:#f5f2f8 !important; -webkit-text-fill-color:currentColor !important; box-shadow:none !important; transform:none !important; font:500 12px/1 system-ui,sans-serif !important; letter-spacing:normal !important; text-transform:none !important; text-align:left !important; cursor:pointer; }
html body details.dancer-media-menu > .dancer-media-menu-popover > button:not(:disabled):hover { background:#ffffff0c !important; }
html body details.dancer-media-menu > .dancer-media-menu-popover svg { flex:0 0 16px; width:16px; height:16px; fill:none; stroke:currentColor; }
html body details.dancer-media-menu[data-pinned="true"] > .dancer-media-menu-popover svg { color:#d4b5fa; }
html body details.dancer-media-menu :is(summary, button):focus-visible { outline:2px solid #fff; outline-offset:2px; }
html body details.dancer-media-menu > .dancer-media-menu-popover > button:focus-visible { outline-offset:-3px; }
html body details.dancer-media-menu > summary[aria-disabled="true"] { opacity:.7; cursor:wait; }
html body details.dancer-media-menu > .dancer-media-menu-popover > button:disabled { opacity:.55 !important; cursor:not-allowed; }
