/* Marcos de red limitados a la vista Feed; no alteran la identidad del portal. */
.pf-root { margin-block: 24px 48px; color: var(--pg-text, #f5f5f5); }
.pf-root *, .pf-root *::before, .pf-root *::after { box-sizing: border-box; }
.pf-root button, .pf-root a { -webkit-tap-highlight-color: transparent; }
.pf-root button { font: inherit; cursor: pointer; }
.pf-root button:disabled { cursor: default; opacity: .38; }
.pf-root button:focus-visible, .pf-root a:focus-visible, .pf-root summary:focus-visible { outline: 3px solid #82b8ff; outline-offset: 4px; }
.pf-root svg { width: 20px; height: 20px; flex: 0 0 auto; }
.pf-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.pf-networks, .pf-order-tools { display: flex; gap: 8px; flex-wrap: wrap; }
.pf-networks button, .pf-order-tools button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; border: 1px solid var(--pg-line, #484038); border-radius: 24px; padding: 9px 17px; background: transparent; color: var(--pg-text-dim, #b0b0b0); font-size: 14px; font-weight: 600; }
.pf-networks button[aria-pressed="true"] { background: #eee; border-color: #eee; color: #111; }
.pf-networks button[aria-pressed="true"].pf-network-ig svg { color: #c72871; }
.pf-networks button[aria-pressed="true"].pf-network-fb svg { color: #0866ff; }
.pf-order-tools button[aria-pressed="true"] { color: var(--pg-text); background: var(--pg-accent-dim, #433722); border-color: var(--pg-accent, #be9658); }
.pf-order-tools button:not(:disabled):hover { background: var(--pg-accent-dim, #433722); color: var(--pg-text); }
.pf-preview-note { display: flex; align-items: center; gap: 9px; margin: 14px 0 24px; color: var(--pg-text-dim, #aaa); font-size: 13px; }
.pf-preview-note > span { min-width: 0; }
.pf-order-help { position: relative; z-index: 3; flex: 0 0 auto; }
.pf-order-help summary { display: grid; place-items: center; list-style: none; width: 24px; height: 24px; border: 1px solid #64605b; border-radius: 50%; font: italic 14px Georgia, serif; cursor: pointer; }
.pf-order-help summary::-webkit-details-marker { display: none; }
.pf-order-help p { position: absolute; z-index: 4; top: 30px; right: 0; width: min(330px, 76vw); padding: 16px; margin: 0; border: 1px solid var(--pg-line, #484038); border-radius: 10px; background: #222; color: #eee; line-height: 1.55; box-shadow: 0 10px 35px #0008; }
.pf-organize-help, .pf-storage-warning { margin: -6px 0 24px; font-size: 14px; line-height: 1.5; color: var(--pg-text-dim); }
.pf-storage-warning { color: #f4c87c; }
.pf-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.pf-avatar { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 42px; height: 42px; padding: 7px; overflow: hidden; border: 1px solid #494949; border-radius: 50%; background: #171717; color: #eee; font-weight: 700; }
.pf-avatar img { width: 100%; height: 100%; object-fit: contain; }
.pf-instagram { max-width: 936px; margin: 0 auto; border: 1px solid #292929; border-radius: 12px; overflow: hidden; background: #050505; color: #f5f5f5; font-family: Arial, Helvetica, sans-serif; }
.pf-ig-profile { display: flex; align-items: center; gap: 48px; min-height: 205px; padding: 35px 68px; }
.pf-avatar-profile { width: 126px; height: 126px; padding: 24px; border-color: #363636; }
.pf-ig-profile-info { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.pf-ig-profile h3 { margin: 0 0 10px; color: #f5f5f5; font-family: inherit; font-size: 24px; font-weight: 400; line-height: 1.2; overflow-wrap: anywhere; }
.pf-ig-profile-info strong { color: #eee; font-size: 14px; }
.pf-ig-profile-info > span { font-size: 13px; color: #a8a8a8; }
.pf-ig-nav { display: flex; justify-content: center; align-items: center; gap: 8px; min-height: 53px; border-top: 1px solid #292929; color: #f5f5f5; font-size: 12px; font-weight: 600; letter-spacing: 1px; text-transform: uppercase; }
.pf-ig-nav svg { width: 14px; height: 14px; }
.pf-ig-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; }
.pf-ig-tile { position: relative; min-width: 0; background: #202020; }
.pf-tile-open, .pf-fb-media-open { display: block; width: 100%; padding: 0; border: 0; position: relative; border-radius: 0; color: #fff; background: #171717; text-align: left; overflow: hidden; }
.pf-media { display: block; position: relative; width: 100%; overflow: hidden; }
.pf-media > img { display: block; width: 100%; height: auto; }
.pf-ig-image { aspect-ratio: 3 / 4; }
.pf-ig-image > img { width: 100%; height: 100%; object-fit: cover; }
.pf-carousel-badge { position: absolute; top: 12px; right: 12px; display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border-radius: 7px; background: #0007; color: #fff; font: 600 11px Arial, sans-serif; pointer-events: none; }
.pf-carousel-badge svg { width: 20px; height: 20px; filter: drop-shadow(0 1px 2px #0008); }
.pf-tile-meta { display: flex; flex-direction: column; justify-content: flex-end; gap: 7px; position: absolute; inset: 0; padding: 22px 16px; background: linear-gradient(transparent 20%, #000d); opacity: 0; transition: opacity 140ms ease; pointer-events: none; }
.pf-tile-meta > span { font-size: 12px; }
.pf-tile-meta strong { font-size: 15px; line-height: 1.3; color: #fff; }
.pf-tile-open:hover .pf-tile-meta, .pf-tile-open:focus-visible .pf-tile-meta { opacity: 1; }
.pf-root .pf-tile-open:focus-visible { outline-offset: -4px; z-index: 1; }
.pf-image-placeholder { min-height: 160px; display: flex; position: absolute; inset: 0; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 14px; text-align: center; color: #b5b5b5; font: 14px/1.4 Arial, sans-serif; }
.pf-image-placeholder svg { width: 28px; height: 28px; }
.pf-facebook { max-width: 850px; margin: 0 auto; padding-bottom: 30px; border: 1px solid #3a3b3c; border-radius: 12px; background: #18191a; color: #e4e6eb; font-family: Arial, Helvetica, sans-serif; overflow: hidden; }
.pf-fb-brand { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 26px; border-bottom: 1px solid #393a3b; background: #242526; }
.pf-facebook-wordmark { color: #408cff; font-size: 31px; font-weight: 700; letter-spacing: -1.5px; }
.pf-fb-brand > span:last-child { color: #b0b3b8; font-size: 12px; }
.pf-fb-stream { display: grid; grid-template-columns: minmax(0, 590px); justify-content: center; gap: 22px; padding: 26px 20px 0; }
.pf-fb-post { position: relative; min-width: 0; border: 1px solid #3a3b3c; border-radius: 9px; background: #242526; overflow: hidden; }
.pf-fb-post-header { display: flex; align-items: center; gap: 10px; padding: 15px 16px 8px; }
.pf-fb-post-header > div { min-width: 0; }
.pf-fb-post-header strong { display: block; color: #e4e6eb; font-size: 15px; font-weight: 600; line-height: 1.5; }
.pf-fb-post-header div > span { display: block; color: #b0b3b8; font-size: 12px; line-height: 1.5; }
.pf-fb-copy { padding: 4px 16px 15px; color: #e4e6eb; font-size: 15px; line-height: 1.4; overflow-wrap: anywhere; }
.pf-fb-copy p { margin: 0; color: inherit; font-size: inherit; line-height: inherit; white-space: pre-wrap; }
.pf-copy-toggle { padding: 5px 0 0; background: none; border: none; color: #e4e6eb; font-size: 15px; font-weight: 600; }
.pf-copy-toggle:hover { text-decoration: underline; }
.pf-fb-image > img { object-fit: contain; }
.pf-fb-image.pf-media-missing { aspect-ratio: 4 / 3; }
.pf-fb-post-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 16px; border-top: 1px solid #3a3b3c; }
.pf-fb-post-footer button, .pf-fb-post-footer a { display: inline-flex; align-items: center; gap: 5px; min-height: 34px; padding: 4px 0; border: 0; background: none; text-decoration: none; color: #b9d6ff; font-size: 13px; font-weight: 600; }
.pf-fb-post-footer svg { width: 16px; height: 16px; }
.pf-fb-post-footer button:hover, .pf-fb-post-footer a:hover { text-decoration: underline; }
.pf-move-tools { display: flex; align-items: center; justify-content: flex-end; gap: 5px; padding: 7px 8px; background: #202020; color: #eee; }
.pf-position { margin-right: auto; font: 600 12px Arial, sans-serif; }
.pf-move-tools button { width: 36px; height: 34px; padding: 0; border: 1px solid #555; border-radius: 6px; background: #313131; color: #fff; font-size: 19px; line-height: 1; }
.pf-move-tools button:not(:disabled):hover { background: #4a4a4a; }
.pf-organizing [draggable="true"] { cursor: grab; }
.pf-dragging { opacity: .4; }
.pf-drop-target { outline: 3px solid #82b8ff; outline-offset: -3px; }
.pf-empty { display: flex; flex-direction: column; align-items: center; padding: 65px 20px; border: 1px dashed var(--pg-line, #484038); border-radius: 12px; text-align: center; }
.pf-empty > svg { width: 36px; height: 36px; margin-bottom: 15px; color: var(--pg-text-dim); }
.pf-empty h3 { margin: 0 0 9px; font-size: 18px; color: var(--pg-text); }
.pf-empty p { margin: 0; font-size: 14px; color: var(--pg-text-dim); }
@media (max-width: 650px) {
  .pf-toolbar { gap: 12px; }
  .pf-networks, .pf-order-tools { width: 100%; }
  .pf-networks button { flex: 1; }
  .pf-order-tools button { padding-inline: 14px; font-size: 12px; }
  .pf-preview-note { align-items: flex-start; font-size: 12px; line-height: 1.6; }
  .pf-preview-note > span { flex: 1; }
  .pf-ig-profile { gap: 22px; min-height: 140px; padding: 25px 20px; }
  .pf-avatar-profile { width: 80px; height: 80px; padding: 14px; }
  .pf-ig-profile h3 { font-size: 19px; margin-bottom: 3px; }
  .pf-ig-profile-info { gap: 6px; }
  .pf-ig-profile-info strong { font-size: 12px; }
  .pf-ig-profile-info > span { font-size: 11px; }
  .pf-ig-grid { gap: 2px; }
  .pf-carousel-badge { top: 6px; right: 5px; gap: 3px; padding: 3px; font-size: 10px; }
  .pf-carousel-badge svg { width: 17px; height: 17px; }
  .pf-tile-meta { gap: 4px; padding: 10px 7px; }
  .pf-tile-meta strong { font-size: 11px; }
  .pf-tile-meta > span { font-size: 10px; }
  .pf-move-tools { gap: 3px; padding: 5px; }
  .pf-move-tools button { width: 30px; height: 32px; }
  .pf-position { font-size: 10px; }
  .pf-fb-brand { padding: 12px 16px; }
  .pf-facebook-wordmark { font-size: 26px; }
  .pf-fb-stream { padding: 15px 0 0; gap: 16px; }
  .pf-fb-post { border-left: 0; border-right: 0; border-radius: 0; }
  .pf-fb-copy { font-size: 14px; }
  .pf-image-placeholder { min-height: 0; gap: 7px; padding: 6px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .pf-tile-meta { transition: none; }
}
