/* ============================================================
   PropertyRoute Manager — Panel de Agente  v3.0.0
   Sistema de diseño basado en member-hub.css
   ============================================================ */

/* ── Variables ─────────────────────────────────────────────── */
#prwa-root {
  --prwa-accent:       #18b652;
  --prwa-accent-dark:  #0f9b41;
  --prwa-accent-soft:  #effbf3;
  --prwa-text:         #10213f;
  --prwa-muted:        #73839d;
  --prwa-border:       #e5edf4;
  --prwa-bg:           #f4f7fb;
  --prwa-card:         #ffffff;
  --prwa-card-soft:    #fbfdff;
  --prwa-shadow:       0 12px 34px rgba(15,23,42,.06);
  --prwa-shadow-soft:  0 4px 16px rgba(15,23,42,.04);
  --prwa-radius:       28px;
  --prwa-radius-sm:    18px;
  --prwa-radius-xs:    12px;
  --prwa-gap:          20px;
  --prwa-pad:          24px;
  color: var(--prwa-text);
  font-size: 16px;
  line-height: 1.5;
  writing-mode: horizontal-tb !important;
}
#prwa-root *, #prwa-root *::before, #prwa-root *::after {
  box-sizing: border-box;
  writing-mode: horizontal-tb !important;
  text-orientation: mixed !important;
}

/* ── Focus visible (keyboard accessibility) ───────────────── */
#prwa-root button:focus-visible,
#prwa-root a:focus-visible,
#prwa-root select:focus-visible,
#prwa-root input:focus-visible,
#prwa-root textarea:focus-visible {
  outline: 2px solid var(--prwa-accent);
  outline-offset: 2px;
}

/* ── Shell ─────────────────────────────────────────────────── */
#prwa-root .prwa-shell {
  max-width: 1800px;
  margin: 0 auto;
  padding: 24px 40px 64px;
}

/* ── Header card ───────────────────────────────────────────── */
#prwa-root .prwa-header-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 28px 32px;
  margin-bottom: var(--prwa-gap);
  background:
    radial-gradient(circle at top right, rgba(24,182,82,.09), transparent 34%),
    linear-gradient(170deg, #ffffff, #f9fefc);
  border: 1px solid #ddf0e6;
  border-radius: var(--prwa-radius);
  box-shadow: 0 4px 28px rgba(15,23,42,.07);
}
/* Círculo decorativo inferior-izquierdo */
#prwa-root .prwa-header-card::before {
  content: "";
  position: absolute;
  inset: auto auto -48px -48px;
  width: 160px; height: 160px;
  border-radius: 50%;
  background: rgba(24,182,82,.05);
  pointer-events: none;
}
/* Círculo decorativo derecho (el grande visible en pantalla) */
#prwa-root .prwa-header-card::after {
  content: "";
  position: absolute;
  top: 50%; right: -72px;
  transform: translateY(-50%);
  width: 220px; height: 220px;
  border-radius: 50%;
  background: rgba(24,182,82,.11);
  pointer-events: none;
}
#prwa-root .prwa-header-card > * { position: relative; z-index: 1; }
#prwa-root .prwa-header-card--slim { padding: 28px 32px; } /* compat */

#prwa-root .prwa-header-left { display: flex; flex-direction: column; }

#prwa-root .prwa-kicker {
  color: var(--prwa-accent);
  text-transform: uppercase;
  letter-spacing: .16em;
  font-size: 11px; font-weight: 900;
  margin-bottom: 8px;
}
#prwa-root .prwa-hello {
  font-size: 32px; line-height: 1.06;
  font-weight: 900; letter-spacing: -.04em;
  margin: 0;
}
#prwa-root .prwa-hello strong { color: var(--prwa-accent); }
#prwa-root .prwa-subline {
  color: var(--prwa-muted); font-size: 14px;
  line-height: 1.65; margin: 8px 0 0;
}
#prwa-root .prwa-head-actions {
  display: flex; flex-direction: column; align-items: stretch; gap: 6px;
  flex-shrink: 0;
}
#prwa-root .prwa-status-badges {
  display: flex; gap: 8px; align-items: center; justify-content: flex-end;
}
#prwa-root .prwa-action-btns {
  display: flex; gap: 8px; align-items: center; justify-content: flex-end; flex-wrap: wrap;
}
/* prwa-nobrand-badge removed — content moved inside popover */

/* ── Plan badge ─────────────────────────────────────────────── */
#prwa-root .prwa-plan-badge {
  display: inline-flex; align-items: center;
  padding: 5px 12px; border-radius: 999px;
  font-size: 11px; font-weight: 800; letter-spacing: .4px;
  white-space: nowrap; border: 1.5px solid;
}
#prwa-root .prwa-plan-badge.is-plan--free    { color: #64748b; background: #f8fafc; border-color: #e2e8f0; }
#prwa-root .prwa-plan-badge.is-plan--pro     { color: #7c3aed; background: #f5f3ff; border-color: #ddd6fe; }
#prwa-root .prwa-plan-badge.is-plan--premium { color: #92400e; background: #fffbeb; border-color: #fde68a; }
#prwa-root .prwa-plan-badge:not(.is-plan--free):not(.is-plan--pro):not(.is-plan--premium) {
  color: #2563eb; background: #eff6ff; border-color: #bfdbfe;
}

/* ── Public page popover ────────────────────────────────────── */
#prwa-root .prwa-pubweb-wrap { position: relative; }
#prwa-root .prwa-pubweb-trig {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 999px;
  border: 1.5px solid #bfdbfe; background: #eff6ff;
  color: #2563eb; font-size: 13px; font-weight: 800;
  cursor: pointer; white-space: nowrap; line-height: 1;
  transition: background .15s, border-color .15s, box-shadow .15s;
}
#prwa-root .prwa-pubweb-trig:hover {
  background: #dbeafe; border-color: #93c5fd;
  box-shadow: 0 2px 8px rgba(37,99,235,.13);
}
#prwa-root .prwa-pubweb-chev { transition: transform .2s; opacity: .65; flex-shrink: 0; }
#prwa-root .prwa-pubweb-trig[aria-expanded="true"] .prwa-pubweb-chev { transform: rotate(180deg); }
/* Popover card — position:fixed so it escapes overflow:hidden on header card */
#prwa-root .prwa-pubweb-pop {
  position: fixed;
  width: 272px; z-index: 9999;
}
#prwa-root .prwa-pubweb-pop[hidden] { display: none; }
#prwa-root .prwa-pubweb-pop-inner {
  background: #fff; border: 1px solid #e2e8f0;
  border-radius: 14px;
  box-shadow: 0 10px 32px rgba(15,36,71,.13), 0 2px 8px rgba(15,36,71,.06);
  overflow: hidden;
}
/* URL row */
#prwa-root .prwa-pubweb-urlrow {
  display: flex; align-items: center; gap: 7px;
  padding: 9px 13px; background: #f8fafc;
  border-bottom: 1px solid #edf3f8; color: #64748b;
}
/* Sin marca row — inside the popover */
#prwa-root .prwa-pubweb-sinmarca {
  display: flex; align-items: center; gap: 6px;
  padding: 6px 13px;
  background: linear-gradient(90deg, rgba(16,185,129,.08) 0%, rgba(14,165,233,.06) 100%);
  border-bottom: 1px solid rgba(16,185,129,.15);
  font-size: 10.5px; font-weight: 700; letter-spacing: .02em;
  color: #059669;
}
#prwa-root .prwa-pubweb-sinmarca svg { opacity: .75; flex-shrink: 0; stroke: #059669; }
#prwa-root .prwa-pubweb-urltext {
  flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-size: 10.5px; color: #475569; font-family: monospace;
}
/* 3-column actions */
#prwa-root .prwa-pubweb-actions { display: grid; grid-template-columns: 1fr 1fr 1fr; }
#prwa-root .prwa-pubweb-action {
  display: flex; flex-direction: column; align-items: center; gap: 5px;
  padding: 13px 6px; border: none; background: transparent;
  color: #374151; font-size: 11.5px; font-weight: 700;
  cursor: pointer; text-decoration: none; line-height: 1;
  border-right: 1px solid #edf3f8;
  transition: background .12s, color .12s;
}
#prwa-root .prwa-pubweb-action:last-child { border-right: none; }
#prwa-root .prwa-pubweb-action:hover { background: #f1f5f9; color: #2563eb; }
#prwa-root #prwa-pubweb-copy.is-copied,
#prwa-root #prwa-pubweb-share.is-shared { color: #129647; }
/* Arrow (bocadillo tail pointing down) */
#prwa-root .prwa-pubweb-arrow {
  width: 0; height: 0; margin: 0 auto;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 9px solid #e2e8f0;
  position: relative;
}
#prwa-root .prwa-pubweb-arrow::after {
  content: ''; position: absolute;
  top: -10px; left: -7px;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 8px solid #fff;
}

/* ── Export bar ──────────────────────────────────────────────── */
#prwa-root .prwa-export-bar {
  display: flex; align-items: center; gap: 14px;
  padding: 12px 16px;
  background: #fff;
  border: 1px solid var(--prwa-border);
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(15,36,71,.05);
  margin-bottom: 20px;
}
#prwa-root .prwa-export-bar-head {
  display: flex; align-items: center; gap: 7px;
  flex-shrink: 0;
  font-size: 13px; color: #374151;
  white-space: nowrap;
}
#prwa-root .prwa-export-bar-head svg { color: #7c3aed; flex-shrink: 0; }
#prwa-root .prwa-export-bar-hint {
  font-size: 11px; color: #94a3b8; font-weight: 400;
  margin-left: 2px;
}
#prwa-root .prwa-export-bar-sep {
  width: 1px; height: 28px; background: var(--prwa-border); flex-shrink: 0;
}
#prwa-root .prwa-export-bar-btns {
  display: flex; align-items: center; gap: 6px;
  margin-left: auto; flex-wrap: wrap;
}
#prwa-root .prwa-export-bar-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 13px; border-radius: 8px;
  border: 1.5px solid #e2e8f0; background: #f8fafc;
  color: #374151; font-size: 12.5px; font-weight: 600;
  cursor: pointer; text-decoration: none; white-space: nowrap; line-height: 1;
  transition: background .15s, border-color .15s, color .15s;
}
#prwa-root .prwa-export-bar-btn:hover {
  background: #ede9fe; border-color: #c4b5fd; color: #7c3aed;
}
#prwa-root #prwa-export-copy-xml.is-copied {
  color: #129647; border-color: #a7f3d0; background: #f0fdf4;
}

/* ── Quick nav ─────────────────────────────────────────────── */
#prwa-root .prwa-quicknav {
  display: flex; align-items: center; gap: 4px; flex-wrap: wrap;
  margin-bottom: 22px; padding: 10px 14px;
  background: rgba(255,255,255,.9);
  border: 1px solid var(--prwa-border);
  border-radius: 14px;
  box-shadow: 0 2px 10px rgba(15,36,71,.05);
}
.prwa-qn-spacer { flex: 1; min-width: 8px; }
#prwa-root .prwa-qn-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 15px; background: transparent;
  border: 1.5px solid transparent; border-radius: 8px;
  color: #4a5c70; font-size: 14px; font-weight: 600;
  text-decoration: none; cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
  white-space: nowrap; line-height: 1;
}
#prwa-root .prwa-qn-btn:hover {
  background: var(--prwa-accent-soft);
  border-color: rgba(24,182,82,.3);
  color: var(--prwa-accent); text-decoration: none;
}
#prwa-root .prwa-qn-btn.is-active {
  background: var(--prwa-accent-soft);
  border-color: var(--prwa-accent);
  color: var(--prwa-accent);
  font-weight: 700;
  text-decoration: none;
}
#prwa-root .prwa-qn-btn--cta {
  margin-left: auto;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; border: none;
  box-shadow: 0 4px 14px rgba(24,182,82,.3);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
#prwa-root .prwa-qn-btn--cta:hover {
  /* Mantener el mismo gradiente (el parent rule cambia background a accent-soft) */
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  /* filter: brightness para oscurecer suavemente sin flash */
  filter: brightness(.88);
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(24,182,82,.38);
}

/* ── Quicknav badge (nuevas propiedades pendientes) ── */
#prwa-root .prwa-qn-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 18px; height: 18px; padding: 0 5px;
  background: #6b7b8d;
  color: #fff; font-size: 11px; font-weight: 800;
  border-radius: 999px; line-height: 1;
}
@keyframes prwa-badge-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.12); }
}

/* ── Banner propiedades nuevas pendientes (feeds section) ── */
#prwa-root .prwa-pending-banner {
  display: flex; align-items: center; gap: 14px;
  position: relative;
  margin-bottom: 16px; padding: 14px 18px;
  background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 50%, #fff7ed 100%);
  border: 1.5px solid #fbbf24;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(251,191,36,.12);
  animation: prwa-banner-slide-in .35s ease-out;
}
@keyframes prwa-banner-slide-in {
  from { opacity: 0; transform: translateY(-8px); }
  to   { opacity: 1; transform: translateY(0); }
}
#prwa-root .prwa-pending-banner__icon {
  flex-shrink: 0;
  width: 36px; height: 36px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(245,158,11,.12);
  border-radius: 10px;
}
#prwa-root .prwa-pending-banner__body {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column; gap: 1px;
}
#prwa-root .prwa-pending-banner__body strong {
  font-size: 14px; color: #92400e; font-weight: 700;
}
#prwa-root .prwa-pending-banner__sub {
  font-size: 12px; color: #b45309; font-weight: 500;
}
#prwa-root .prwa-pending-banner__btn {
  flex-shrink: 0;
  padding: 9px 20px; font-size: 13px; font-weight: 700;
  border-radius: 10px; line-height: 1; white-space: nowrap;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; border: none;
  box-shadow: 0 3px 10px rgba(24,182,82,.22);
  cursor: pointer;
  transition: transform .15s, box-shadow .15s, filter .15s;
}
#prwa-root .prwa-pending-banner__btn:hover {
  transform: translateY(-1px); filter: brightness(.92);
  box-shadow: 0 5px 14px rgba(24,182,82,.3);
}
#prwa-root .prwa-pending-banner__actions {
  display: flex; align-items: center; gap: 6px; flex-shrink: 0; flex-wrap: wrap;
}
#prwa-root .prwa-pending-banner__close {
  flex-shrink: 0;
  width: 28px; height: 28px; padding: 0; border: none;
  background: transparent; cursor: pointer;
  color: #b45309; font-size: 20px; line-height: 1;
  display: flex; align-items: center; justify-content: center;
  border-radius: 8px; opacity: .4;
  transition: opacity .15s, background .15s;
}
#prwa-root .prwa-pending-banner__close:hover {
  opacity: .8; background: rgba(180,89,9,.08);
}
#prwa-root .prwa-pending-banner.is-hidden {
  display: none;
}

/* ── Removed from XML banner ── */
/* ── Removed-from-XML banner (subtle) ── */
#prwa-root .prwa-removed-banner {
  margin-bottom: 16px; padding: 0;
  background: #fff;
  border: 1px solid #f0e0df;
  border-left: 3px solid #e8a09c;
  border-radius: 12px;
  box-shadow: 0 1px 4px rgba(0,0,0,.04);
  animation: prwa-banner-slide-in .35s ease-out;
  overflow: hidden;
}
#prwa-root .prwa-removed-banner__header {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid #f5eded;
}
#prwa-root .prwa-removed-banner__dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #e8a09c;
  flex-shrink: 0;
  animation: prwa-dot-pulse 2s ease-in-out infinite;
}
@keyframes prwa-dot-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: .4; }
}
#prwa-root .prwa-removed-banner__title {
  flex: 1;
  font-size: 13px; font-weight: 600; color: #78716c;
  letter-spacing: -.01em;
}
#prwa-root .prwa-removed-banner__dismiss {
  flex-shrink: 0;
  width: 26px; height: 26px; padding: 0; border: none;
  background: transparent; cursor: pointer;
  color: #a8a29e;
  display: flex; align-items: center; justify-content: center;
  border-radius: 7px;
  transition: all .15s;
}
#prwa-root .prwa-removed-banner__dismiss:hover {
  color: #78716c; background: #f5f5f4;
}
#prwa-root .prwa-removed-banner__list {
  display: flex; flex-direction: column;
}
#prwa-root .prwa-removed-card {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 16px;
  transition: background .15s;
}
#prwa-root .prwa-removed-card:not(:last-child) {
  border-bottom: 1px solid #faf5f5;
}
#prwa-root .prwa-removed-card:hover {
  background: #fdfafa;
}
#prwa-root .prwa-removed-card__icon {
  font-size: 20px; line-height: 1;
  width: 34px; height: 34px;
  display: flex; align-items: center; justify-content: center;
  background: #faf5f5;
  border-radius: 9px;
  flex-shrink: 0;
}
#prwa-root .prwa-removed-card__info {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column; gap: 2px;
}
#prwa-root .prwa-removed-card__main {
  font-size: 13.5px; font-weight: 600; color: #44403c;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#prwa-root .prwa-removed-card__sep {
  color: #d6d3d1; margin: 0 1px;
}
#prwa-root .prwa-removed-card__meta {
  display: flex; align-items: center; gap: 4px;
  font-size: 11.5px; color: #a8a29e; font-weight: 500;
}
#prwa-root .prwa-removed-card__meta > span:not(:last-child)::after {
  content: '·'; margin-left: 4px; color: #d6d3d1;
}
#prwa-root .prwa-removed-card__ago {
  font-style: italic; color: #c4b5b0;
}
#prwa-root .prwa-removed-card__price {
  font-size: 14px; font-weight: 700; color: #292524;
  white-space: nowrap;
  letter-spacing: -.02em;
}

/* ── WordPress site nav menu badge ── */
.prwa-menu-badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 18px; height: 18px; padding: 0 5px;
  background: #6b7b8d;
  color: #fff !important; font-size: 11px; font-weight: 800;
  border-radius: 999px; line-height: 1;
  margin-left: 4px; vertical-align: middle;
}

/* ── Feeds header (no accordion) ── */
#prwa-root .prwa-feeds-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 2px; margin-bottom: 14px;
}
#prwa-root .prwa-feeds-header-left { display: flex; align-items: center; gap: 8px; }
#prwa-root .prwa-feeds-header-count { font-size: 13px; color: var(--prwa-muted); font-weight: 600; }
#prwa-root .prwa-feeds-header-count strong { color: var(--prwa-accent); }

/* ── Feeds grid ── */
#prwa-root .prwa-feeds-grid {
  display: grid; grid-template-columns: 1fr; gap: 12px;
}

/* ── Feed card v2 ── */
#prwa-root .prwa-fv2-card {
  border: 1.5px solid var(--prwa-border);
  border-radius: 16px; padding: 18px 20px;
  background: #fff;
  transition: border-color .2s, box-shadow .2s;
  display: flex; flex-direction: column; gap: 10px;
}
#prwa-root .prwa-fv2-card:hover {
  border-color: rgba(24,182,82,.25);
  box-shadow: 0 4px 18px rgba(15,36,71,.06);
}
#prwa-root .prwa-fv2-card.has-new {
  border-color: #fbbf24;
  background: linear-gradient(135deg, #fffdf7 0%, #fff 60%);
}

/* Head row: status dot + name + tags (accordion toggle) */
#prwa-root .prwa-fv2-head {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
#prwa-root .prwa-fv2-toggle {
  cursor: pointer;
  user-select: none;
  -webkit-user-select: none;
  border-radius: 12px;
  padding: 4px 6px;
  margin: -4px -6px;
  transition: background .12s;
}
#prwa-root .prwa-fv2-toggle:hover {
  background: rgba(0,0,0,.025);
}
#prwa-root .prwa-fv2-chevron {
  margin-left: auto;
  flex-shrink: 0;
  color: #94a3b8;
  transition: transform .25s cubic-bezier(.4,0,.2,1), color .15s;
}
#prwa-root .prwa-fv2-toggle:hover .prwa-fv2-chevron {
  color: #64748b;
}
#prwa-root .prwa-fv2-card.is-collapsed .prwa-fv2-chevron {
  transform: rotate(-90deg);
}
#prwa-root .prwa-fv2-head-count {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 20px; height: 20px; padding: 0 6px;
  border-radius: 10px;
  background: #f1f5f9; color: #64748b;
  font-size: 11px; font-weight: 700;
  line-height: 1;
}
/* Accordion body */
#prwa-root .prwa-fv2-body {
  overflow: hidden;
  max-height: 600px;
  transition: max-height .3s cubic-bezier(.4,0,.2,1), opacity .2s, margin .2s;
  opacity: 1;
}
#prwa-root .prwa-fv2-card.is-collapsed .prwa-fv2-body {
  max-height: 0;
  opacity: 0;
  margin-top: 0;
}
#prwa-root .prwa-fv2-status {
  width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
}
#prwa-root .prwa-fv2-status--ok    { background: var(--prwa-accent); box-shadow: 0 0 0 3px rgba(24,182,82,.15); }
#prwa-root .prwa-fv2-status--warn  { background: #f59e0b; box-shadow: 0 0 0 3px rgba(245,158,11,.15); }
#prwa-root .prwa-fv2-status--error { background: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,.15); }
#prwa-root .prwa-fv2-status--never { background: #cbd5e1; }
#prwa-root .prwa-fv2-name {
  font-size: 15px; font-weight: 700; color: var(--prwa-text);
  margin: 0; line-height: 1.2;
}

/* Stats chips row */
#prwa-root .prwa-fv2-stats {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
}
#prwa-root .prwa-fv2-chip {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 12px; font-weight: 600; color: var(--prwa-text);
  background: #f1f5f9; border-radius: 6px; padding: 3px 8px;
  line-height: 1.2;
}
#prwa-root .prwa-fv2-chip strong { font-weight: 800; }
#prwa-root .prwa-fv2-chip--muted { color: var(--prwa-muted); background: #f8fafc; }
#prwa-root .prwa-fv2-chip--green { color: #166534; background: #dcfce7; }
#prwa-root .prwa-fv2-chip--blue  { color: #1e40af; background: #dbeafe; }
#prwa-root .prwa-fv2-chip--red   { color: #991b1b; background: #fee2e2; }
#prwa-root .prwa-fv2-chip--amber {
  color: #92400e; background: linear-gradient(135deg, #fef3c7, #fde68a);
  border: 1px solid #fbbf24; font-weight: 700;
}

/* URL row */
#prwa-root .prwa-fv2-url {
  font-size: 11px; color: var(--prwa-muted); font-family: monospace;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  padding: 0 2px;
}

/* Actions row */
#prwa-root .prwa-fv2-actions {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  padding-top: 4px; border-top: 1px solid var(--prwa-border);
}
#prwa-root .prwa-fv2-btn {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 7px 14px; font-size: 12px; font-weight: 700;
  border: 1.5px solid var(--prwa-border); border-radius: 8px;
  background: #fff; color: var(--prwa-text);
  cursor: pointer; white-space: nowrap; line-height: 1;
  transition: background .15s, border-color .15s, color .15s, box-shadow .15s;
}
#prwa-root .prwa-fv2-btn:hover {
  background: var(--prwa-accent-soft); border-color: rgba(24,182,82,.3); color: var(--prwa-accent);
}
#prwa-root .prwa-fv2-btn--primary {
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; border-color: transparent;
  box-shadow: 0 3px 10px rgba(24,182,82,.2);
}
#prwa-root .prwa-fv2-btn--primary:hover {
  filter: brightness(.9); color: #fff; border-color: transparent;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
}
#prwa-root .prwa-fv2-btn--danger {
  color: #dc2626; border-color: #fecaca;
}
#prwa-root .prwa-fv2-btn--danger:hover {
  background: #fef2f2; border-color: #dc2626; color: #dc2626;
}

/* ── Mobile web access banner (hidden on desktop, shown on mobile) ── */
#prwa-root .prwa-mobile-web-access {
  display: none;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  margin-bottom: 14px;
  background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
  border: 1.5px solid rgba(24,182,82,.2);
  border-radius: 12px;
  text-decoration: none;
  color: var(--prwa-accent);
  font-size: 13px;
  font-weight: 600;
  transition: all .2s;
}
#prwa-root .prwa-mobile-web-access:hover {
  border-color: var(--prwa-accent);
  box-shadow: 0 2px 12px rgba(24,182,82,.15);
}
#prwa-root .prwa-mobile-web-access svg { flex-shrink: 0; }
#prwa-root .prwa-mobile-web-access .prwa-mwa-text { flex: 1; }
#prwa-root .prwa-mobile-web-access .prwa-mwa-sub {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: #64748b;
  margin-top: 1px;
}
#prwa-root .prwa-mobile-web-access .prwa-mwa-arrow {
  font-size: 16px;
  opacity: .5;
}

/* ── Public website card ───────────────────────────────────── */
#prwa-root .prwa-pubweb-card {
  display: flex; align-items: stretch; gap: 0;
  background: var(--prwa-bg-card); border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius, 12px); box-shadow: 0 1px 3px rgba(0,0,0,.06);
  margin-bottom: 16px; overflow: hidden;
}
#prwa-root .prwa-pubweb-card-left {
  display: flex; align-items: center; gap: 14px;
  padding: 18px 22px; background: linear-gradient(135deg, #f0fdf4 0%, #ecfdf5 100%);
  border-right: 1px solid var(--prwa-border); flex-shrink: 0; min-width: 260px;
}
#prwa-root .prwa-pubweb-card-icon {
  width: 42px; height: 42px; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; background: #dcfce7; color: #16a34a;
}
#prwa-root .prwa-pubweb-card-title {
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
  color: #15803d; display: flex; align-items: center; gap: 5px; margin-bottom: 3px;
}
#prwa-root .prwa-pubweb-card-url {
  font-size: 13px; color: var(--prwa-accent, #16a34a); font-weight: 600;
  word-break: break-all; line-height: 1.3;
}
#prwa-root .prwa-pubweb-card-right {
  display: flex; align-items: center; justify-content: space-between;
  gap: 20px; padding: 18px 22px; flex: 1; min-width: 0;
}
#prwa-root .prwa-pubweb-card-desc {
  font-size: 13px; color: #64748b; line-height: 1.5; max-width: 340px;
}
#prwa-root .prwa-pubweb-card-actions { display: flex; gap: 8px; flex-shrink: 0; }
#prwa-root .prwa-pubweb-card-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 14px; border-radius: 8px; font-size: 13px; font-weight: 600;
  cursor: pointer; border: 1px solid transparent; text-decoration: none; transition: all .15s;
}
#prwa-root .prwa-pubweb-card-btn--primary {
  background: var(--prwa-accent, #16a34a); color: #fff; border-color: var(--prwa-accent, #16a34a);
}
#prwa-root .prwa-pubweb-card-btn--primary:hover { opacity: .9; }
#prwa-root .prwa-pubweb-card-btn--outline {
  background: #fff; color: var(--prwa-text, #1e293b); border-color: #d1d5db;
}
#prwa-root .prwa-pubweb-card-btn--outline:hover { border-color: #9ca3af; }
#prwa-root .prwa-pubweb-card-btn--soft {
  background: #f1f5f9; color: #475569; border-color: #e2e8f0;
}
#prwa-root .prwa-pubweb-card-btn--soft:hover { background: #e2e8f0; }

@media (max-width: 1024px) {
  #prwa-root .prwa-pubweb-card-right { flex-direction: column; align-items: flex-start; gap: 12px; }
}
@media (max-width: 768px) {
  #prwa-root .prwa-pubweb-card { flex-direction: column; }
  #prwa-root .prwa-pubweb-card-left { border-right: none; border-bottom: 1px solid var(--prwa-border); min-width: 0; padding: 14px 16px; }
  #prwa-root .prwa-pubweb-card-right { padding: 14px 16px; }
  #prwa-root .prwa-pubweb-card-desc { display: none; }
  #prwa-root .prwa-pubweb-card-actions { width: 100%; }
  #prwa-root .prwa-pubweb-card-btn { flex: 1; justify-content: center; }
  #prwa-root .prwa-pubweb-card-btn .prwa-pubweb-card-btn-label { display: none; }
}

/* ── Main grid ─────────────────────────────────────────────── */
#prwa-root .prwa-grid {
  display: grid;
  grid-template-columns: 300px minmax(0,1fr);
  gap: var(--prwa-gap);
  align-items: start;
}
#prwa-root .prwa-left-col,
#prwa-root .prwa-main-col { display: grid; gap: var(--prwa-gap); }

/* ── Cards ─────────────────────────────────────────────────── */
#prwa-root .prwa-card {
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius);
  box-shadow: var(--prwa-shadow-soft);
  padding: var(--prwa-pad);
}
#prwa-root .prwa-card-top {
  display: flex; align-items: flex-start;
  justify-content: space-between; gap: 16px;
  margin-bottom: 20px;
}
#prwa-root h3, #prwa-root h4 {
  margin: 0; color: var(--prwa-text);
  font-weight: 900; letter-spacing: -.04em;
}
#prwa-root h3 { font-size: 21px; line-height: 1.1; }
#prwa-root h4 { font-size: 16px; line-height: 1.2; }

/* ── Badges & pills ─────────────────────────────────────────── */
#prwa-root .prwa-badge, #prwa-root .prwa-pill {
  display: inline-flex; align-items: center; gap: 7px;
  border-radius: 999px; font-size: 13px; font-weight: 800;
  padding: 7px 14px; border: 1px solid var(--prwa-border);
  background: #fff;
}
#prwa-root .prwa-badge .dot {
  width: 7px; height: 7px; border-radius: 50%; background: currentColor;
}
#prwa-root .is-green,  #prwa-root .is-active    { color: #129647; background: #effcf3; border-color: #bfeacc; }
#prwa-root .is-amber                            { color: #df7d11; background: #fff7ed; border-color: #f6d1a8; }
#prwa-root .is-outline                          { color: #64748b; background: #f8fafc; border-color: #e2e8f0; }
#prwa-root .is-red, #prwa-root .is-inactive, #prwa-root .is-sold { color: #dc2626; background: #fef2f2; border-color: #fecaca; }
#prwa-root .is-blue,   #prwa-root .is-rented    { color: #2563eb; background: #eff6ff; border-color: #bfdbfe; }
#prwa-root .is-soft,   #prwa-root .is-draft     { color: #68768f; background: #f8fafc; border-color: #e8eef5; }
#prwa-root .is-warn    { color: #b45309; background: #fff8ed; border-color: #fde68a; }
#prwa-root .is-paused  { color: #7c3aed; background: #f5f3ff; border-color: #ddd6fe; }

/* ── Mini profile ───────────────────────────────────────────── */
#prwa-root .prwa-mini-profile {
  display: flex; gap: 14px; align-items: center;
  margin-bottom: 20px; padding: 14px 15px;
  border: 1px solid #edf3f8; border-radius: 22px;
  background: #fbfdff;
}
#prwa-root .prwa-avatar {
  width: 52px; height: 52px; flex-shrink: 0;
  border-radius: var(--prwa-radius-sm);
  background: linear-gradient(160deg, #effcf3, #e7f8ee);
  color: var(--prwa-accent);
  display: grid; place-items: center;
  font-size: 19px; font-weight: 900;
  border: 1px solid #c9ebd4;
}
#prwa-root .prwa-mini-profile strong { display: block; font-size: 15px; margin-bottom: 3px; }
#prwa-root .prwa-mini-profile > div:last-child { font-size: 13px; color: var(--prwa-muted); }

/* ── Plan stats ─────────────────────────────────────────────── */
#prwa-root .prwa-plan-stats {
  display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px;
}
#prwa-root .prwa-plan-stat {
  background: var(--prwa-bg); border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius-xs); padding: 10px 12px;
  display: flex; flex-direction: column; gap: 2px;
}
#prwa-root .prwa-plan-stat strong {
  font-size: 22px; font-weight: 900; letter-spacing: -.03em;
  color: var(--prwa-accent); line-height: 1.1;
}
#prwa-root .prwa-plan-stat span {
  font-size: 10px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .1em; color: var(--prwa-muted);
}

/* ── Meta list ──────────────────────────────────────────────── */
#prwa-root .prwa-meta-list { display: grid; gap: 10px; margin: 18px 0 20px; }
#prwa-root .prwa-meta-item {
  display: grid; grid-template-columns: 110px minmax(0,1fr);
  align-items: center; gap: 12px;
  padding: 13px 15px; border: 1px solid #ebf1f7;
  border-radius: var(--prwa-radius-sm); background: var(--prwa-card-soft);
}
#prwa-root .prwa-meta-item span { color: var(--prwa-muted); font-size: 13px; }
#prwa-root .prwa-meta-item strong { font-size: 14px; font-weight: 700; text-align: right; word-break: break-word; }

/* ── Buttons ────────────────────────────────────────────────── */
#prwa-root .prwa-btn {
  appearance: none; border: none;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; border-radius: var(--prwa-radius-sm);
  padding: 14px 18px; min-height: 52px;
  font-size: 15px; font-weight: 800; cursor: pointer;
  width: 100%; box-shadow: 0 8px 20px rgba(24,182,82,.20);
  text-decoration: none; display: inline-flex; align-items: center;
  justify-content: center; text-align: center; gap: 8px;
  transition: transform .15s, box-shadow .15s; letter-spacing: -.01em;
}
#prwa-root .prwa-btn:hover:not(:disabled) {
  transform: translateY(-1px); box-shadow: 0 12px 26px rgba(24,182,82,.26);
}
#prwa-root .prwa-btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }

#prwa-root .prwa-btn-outline {
  background: #fff; color: var(--prwa-text);
  border: 1px solid var(--prwa-border);
  box-shadow: 0 2px 8px rgba(15,23,42,.04);
}
#prwa-root .prwa-btn-outline:hover:not(:disabled) { box-shadow: 0 4px 14px rgba(15,23,42,.09); }

#prwa-root .prwa-btn-soft { background: #eef3f9; color: #3d4f68; box-shadow: none; }
#prwa-root .prwa-btn-soft:hover:not(:disabled) { background: #e5edf5; box-shadow: none; }

#prwa-root .prwa-btn-danger { background: #dc2626 !important; color: #fff !important; }
#prwa-root .prwa-btn-danger:hover { background: #b91c1c !important; }

#prwa-root .prwa-btn-sm { padding: 9px 14px; min-height: 38px; font-size: 13px; border-radius: 8px; box-shadow: 0 4px 12px rgba(24,182,82,.18); }
#prwa-root .prwa-btn-icon {
  width: 44px; height: 44px; min-width: 44px; border-radius: 999px;
  border: 1px solid var(--prwa-border); background: #f7fafd; color: #7d8ba2;
  display: grid; place-items: center; cursor: pointer; padding: 0;
  box-shadow: 0 2px 8px rgba(15,23,42,.04);
  transition: background .15s, box-shadow .15s;
}
#prwa-root .prwa-btn-icon:hover { background: #fff; box-shadow: 0 4px 14px rgba(15,23,42,.07); }

#prwa-root .prwa-action-stack { display: flex; gap: 10px; flex-wrap: wrap; }

/* ── Icon button ────────────────────────────────────────────── */
#prwa-root .prwa-icon-btn {
  width: 44px; height: 44px; min-width: 44px;
  border-radius: 999px; border: 1px solid var(--prwa-border);
  background: #f7fafd; color: #7d8ba2;
  display: grid; place-items: center; cursor: pointer; padding: 0;
  box-shadow: 0 2px 8px rgba(15,23,42,.04);
  transition: background .15s, box-shadow .15s;
}
#prwa-root .prwa-icon-btn:hover { background: #fff; box-shadow: 0 4px 14px rgba(15,23,42,.07); }

/* ── Properties list ────────────────────────────────────────── */
/* ══════════════════════════════════════════════════════════════
   PROPERTY TABLE — tabla ancha multi-columna estilo agencia
   ══════════════════════════════════════════════════════════════ */


/* ════════════════════════════════════════════════════════════
   SIDEBAR — rediseño v3.1
   ════════════════════════════════════════════════════════════ */

/* Perfil compacto */
#prwa-root .prwa-sidebar-profile {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius);
  box-shadow: var(--prwa-shadow-soft);
}
#prwa-root .prwa-sidebar-avatar {
  width: 46px; height: 46px; flex-shrink: 0;
  border-radius: var(--prwa-radius-sm);
  background: linear-gradient(160deg, #effcf3, #e7f8ee);
  color: var(--prwa-accent);
  display: grid; place-items: center;
  font-size: 18px; font-weight: 900;
  border: 1px solid #c9ebd4;
}
#prwa-root .prwa-sidebar-info {
  flex: 1; min-width: 0;
}
#prwa-root .prwa-sidebar-info strong {
  display: block; font-size: 13px; font-weight: 800;
  color: var(--prwa-text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#prwa-root .prwa-sidebar-info span {
  font-size: 11px; color: var(--prwa-muted);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block;
}
#prwa-root .prwa-sidebar-plan-badge {
  padding: 4px 10px; border-radius: 999px;
  background: var(--prwa-accent-soft);
  color: var(--prwa-accent);
  font-size: 11px; font-weight: 800;
  border: 1px solid rgba(24,182,82,.25);
  white-space: nowrap; flex-shrink: 0;
}

/* Stats 1×4 */
#prwa-root .prwa-sidebar-stats {
  display: grid; grid-template-columns: repeat(4,1fr); gap: 8px;
}
#prwa-root .prwa-sstat {
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius-sm);
  padding: 12px 8px;
  display: flex; flex-direction: column;
  align-items: center; gap: 3px;
  box-shadow: var(--prwa-shadow-soft);
}
#prwa-root .prwa-sstat strong {
  font-size: 22px; font-weight: 900; letter-spacing: -.04em;
  color: var(--prwa-text); line-height: 1;
}
#prwa-root .prwa-sstat--accent strong { color: var(--prwa-accent); }
#prwa-root .prwa-sstat span {
  font-size: 10px; font-weight: 800; text-transform: uppercase;
  letter-spacing: .1em; color: var(--prwa-muted);
}

/* Barra de uso */
#prwa-root .prwa-usage-bar-wrap {
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius-sm);
  padding: 12px 14px;
  box-shadow: var(--prwa-shadow-soft);
}
#prwa-root .prwa-usage-bar-labels {
  display: flex; justify-content: space-between;
  font-size: 11px; font-weight: 700; color: var(--prwa-muted); margin-bottom: 8px;
}
#prwa-root .prwa-usage-bar-track {
  height: 6px; background: #edf2f7; border-radius: 999px; overflow: hidden;
}
#prwa-root .prwa-usage-bar-fill {
  height: 100%; border-radius: 999px;
  background: linear-gradient(90deg, var(--prwa-accent), var(--prwa-accent-dark));
  transition: width .4s ease;
  min-width: 2px;
}
#prwa-root .prwa-usage-bar-fill.is-warn   { background: linear-gradient(90deg, #f59e0b, #d97706); }
#prwa-root .prwa-usage-bar-fill.is-danger { background: linear-gradient(90deg, #ef4444, #dc2626); }

/* Link al plan */
#prwa-root .prwa-sidebar-plan-link {
  display: flex; align-items: center; gap: 8px;
  padding: 11px 14px;
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius-sm);
  font-size: 14px; font-weight: 700; color: var(--prwa-text);
  text-decoration: none;
  box-shadow: var(--prwa-shadow-soft);
  transition: border-color .15s, box-shadow .15s, color .15s;
}
#prwa-root .prwa-sidebar-plan-link:hover {
  border-color: var(--prwa-accent);
  box-shadow: 0 4px 14px rgba(24,182,82,.12);
  color: var(--prwa-accent);
  text-decoration: none;
}
#prwa-root .prwa-sidebar-plan-link svg:first-child { color: var(--prwa-accent); flex-shrink:0; }
#prwa-root .prwa-sidebar-plan-link svg:last-child  { flex-shrink:0; color: var(--prwa-muted); }

/* Actividad reciente */
#prwa-root .prwa-sidebar-activity {
  padding: 18px;
}
#prwa-root .prwa-sidebar-activity .prwa-kicker { margin-bottom: 12px; }
/* ── Activity empty state ── */
#prwa-root .prwa-activity-empty {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  padding: 28px 16px; color: #b0bec5; text-align: center;
}
#prwa-root .prwa-activity-empty strong { font-size: 13px; color: #94a3b8; font-weight: 700; }
#prwa-root .prwa-activity-empty span { font-size: 12px; max-width: 260px; line-height: 1.5; }

/* ── Activity timeline ── */
#prwa-root .prwa-activity-timeline { display: flex; flex-direction: column; gap: 0; }
#prwa-root .prwa-activity-group { display: flex; flex-direction: column; gap: 0; }
#prwa-root .prwa-activity-date-sep {
  font-size: 10px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase;
  color: #94a3b8; padding: 10px 0 6px; margin-top: 4px;
}
#prwa-root .prwa-activity-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 7px 0;
  border-bottom: 1px solid #f1f5f9;
  position: relative;
}
#prwa-root .prwa-activity-item:last-child { border-bottom: none; }
#prwa-root .prwa-activity-icon {
  width: 28px; height: 28px; border-radius: 8px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  background: color-mix(in srgb, var(--prwa-log-color, #94a3b8) 12%, #fff);
  color: var(--prwa-log-color, #94a3b8);
  border: 1px solid color-mix(in srgb, var(--prwa-log-color, #94a3b8) 20%, #e2e8f0);
}
#prwa-root .prwa-activity-body {
  display: flex; flex-direction: column; gap: 1px; min-width: 0; flex: 1; padding-top: 3px;
}
#prwa-root .prwa-activity-msg {
  font-size: 12.5px; color: var(--prwa-text); line-height: 1.4;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#prwa-root .prwa-log-user {
  color: var(--prwa-accent, #18b652); font-weight: 700; font-size: 11px;
  margin-right: 4px;
}
#prwa-root .prwa-activity-time {
  font-size: 10.5px; color: var(--prwa-muted); font-weight: 600; font-variant-numeric: tabular-nums;
}
/* Fallback para navegadores sin color-mix */
@supports not (background: color-mix(in srgb, red 10%, white)) {
  #prwa-root .prwa-activity-icon { background: #f1f5f9; }
}

/* ── Legacy log-list (sidebar/overview) — keep intact ── */
#prwa-root .prwa-log-list { display: grid; gap: 0; }
#prwa-root .prwa-log-item {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 9px 0; border-bottom: 1px solid #f0f4f8;
}
#prwa-root .prwa-log-item:last-child { border-bottom: none; padding-bottom: 0; }
#prwa-root .prwa-log-dot {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--prwa-accent); flex-shrink: 0; margin-top: 4px;
}
#prwa-root .prwa-log-content { display: flex; flex-direction: column; gap: 2px; min-width:0; flex:1; }
#prwa-root .prwa-log-content span { font-size: 13px; color: var(--prwa-text); line-height: 1.4; }
#prwa-root .prwa-log-content time  { font-size: 11px; color: var(--prwa-muted); font-weight: 600; }

/* ════════════════════════════════════════════════════════════
   BARRA DE BÚSQUEDA — integrada en una línea
   ════════════════════════════════════════════════════════════ */
#prwa-root .prwa-search-bar {
  display: flex; align-items: center; gap: 10px;
  margin-top: 16px; margin-bottom: 14px; flex-wrap: wrap;
}
#prwa-root .prwa-search-input-wrap {
  display: flex; align-items: stretch;
  flex: 1; min-width: 320px;
  background: #fff;
  border: 1.5px solid var(--prwa-border);
  border-radius: var(--prwa-radius-sm);
  box-shadow: var(--prwa-shadow-soft);
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s;
  height: 48px;
}
#prwa-root .prwa-search-input-wrap:focus-within {
  border-color: var(--prwa-accent);
  box-shadow: 0 0 0 3px rgba(24,182,82,.1);
}
#prwa-root .prwa-search-icon {
  flex-shrink: 0; margin: 0 10px 0 14px; color: var(--prwa-muted);
  align-self: center;
}
#prwa-root .prwa-search-input {
  flex: 1; border: none !important; outline: none !important;
  font-size: 16px; color: var(--prwa-text);
  padding: 0 8px 0 0; height: 100%;
  background: transparent; min-width: 0;
  box-shadow: none !important;
}
#prwa-root .prwa-search-input::placeholder { color: #a0b0c4; }
#prwa-root .prwa-search-divider {
  width: 1px; background: var(--prwa-border); flex-shrink: 0;
  align-self: stretch; margin: 8px 0;
}
#prwa-root .prwa-search-select {
  border: none !important; outline: none !important;
  font-size: 16px; font-weight: 600; color: var(--prwa-text);
  padding: 0 30px 0 14px; height: 100%;
  background: transparent;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%2373839d' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  min-width: 100px; flex-shrink: 0;
  box-shadow: none !important;
}
#prwa-root .prwa-search-btn {
  border: none; cursor: pointer; flex-shrink: 0;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; font-size: 14px; font-weight: 700;
  padding: 0 24px; height: 100%;
  white-space: nowrap;
  transition: opacity .15s;
  letter-spacing: -.01em;
}
#prwa-root .prwa-search-btn:hover { opacity: .9; }
#prwa-root .prwa-search-clear {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 12px; font-weight: 700; color: #94a3b8;
  text-decoration: none; white-space: nowrap;
  padding: 6px 10px; border-radius: 8px;
  border: 1px solid #e2e8f0; background: #fff;
  transition: color .15s, background .15s, border-color .15s;
}
#prwa-root .prwa-search-clear:hover {
  color: #dc2626; background: #fff5f5; border-color: #fecaca;
}

/* ════════════════════════════════════════════════════════════
   TABLA DE PROPIEDADES — v3.1
   ════════════════════════════════════════════════════════════ */
/* Scroll hint arrow above table */
#prwa-root .prwa-table-outer { position: relative; min-width: 0; max-width: 100%; }
#prwa-root .prwa-scroll-hint {
  display: none;
}
#prwa-root .prwa-scroll-hint-bottom { display: none; }
#prwa-root .prwa-scroll-hint.is-hidden { display: none; }
/* scroll hints siempre visibles (hidden only when table fits) */
#prwa-root .prwa-prop-table-wrap {
  overflow-x: scroll; /* siempre visible */
  overflow-y: auto;
  max-height: 80vh;
  border-radius: 18px;
  border: 1px solid var(--prwa-border);
  box-shadow: 0 4px 16px rgba(15,23,42,.05);
  background: #fff;
  -webkit-overflow-scrolling: touch;
  position: relative;
  /* Firefox — overridden below in scroll-shelf section */
}
/* Webkit scrollbar — overridden below in scroll-shelf section */
/* Top accent line removed */
#prwa-root .prwa-prop-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  min-width: 1760px;
  font-size: 13.5px;
}

/* Cabecera */
#prwa-root .prwa-prop-table thead th {
  padding: 13px 14px;
  text-align: center;
  font-size: 11px;
  color: #4a6b94;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 800;
  white-space: nowrap;
  background: linear-gradient(180deg, #f6f8fb, #f9fafb);
  border-bottom: 1px solid #e5e9ef;
  border-right: 1px solid #eef1f5;
  position: sticky;
  top: 0;
  z-index: 10;
}
#prwa-root .prwa-prop-table thead th:first-child { border-radius: 16px 0 0 0; }
#prwa-root .prwa-prop-table thead th:last-child  { border-radius: 0 16px 0 0; border-right: none; }
#prwa-root .prwa-prop-table thead th.prwa-th-ref,
#prwa-root .prwa-prop-table thead th.prwa-th-dir,
#prwa-root .prwa-prop-table thead th.prwa-th-obs { text-align: left; padding-left: 14px; }

/* Anchos */
#prwa-root .prwa-th-thumb     { width: 70px;  min-width: 62px; }
#prwa-root .prwa-th-ref       { width: 114px; min-width: 100px; }
#prwa-root .prwa-th-tipo      { width: 116px; min-width: 104px; }
#prwa-root .prwa-th-precio    { width: auto; min-width: 140px; white-space: nowrap; }
#prwa-root .prwa-th-dir       { width: 230px; min-width: 190px; }
#prwa-root .prwa-th-d,
#prwa-root .prwa-th-ba        { width: 56px;  min-width: 48px; }
#prwa-root .prwa-th-m2c,
#prwa-root .prwa-th-m2t       { width: 82px;  min-width: 72px; }
#prwa-root .prwa-th-garaj,
#prwa-root .prwa-th-pisc      { width: 58px;  min-width: 50px; }
#prwa-root .prwa-th-orient    { width: 64px;  min-width: 56px; }
#prwa-root .prwa-th-anio      { width: 58px;  min-width: 50px; }
#prwa-root .prwa-th-com       { width: 86px;  min-width: 74px; }
#prwa-root .prwa-th-ibi,
#prwa-root .prwa-th-comunidad { width: 86px;  min-width: 74px; }
#prwa-root .prwa-th-fotos     { width: 64px;  min-width: 56px; }
#prwa-root .prwa-th-obs       { min-width: 130px; }
#prwa-root .prwa-th-acciones  { width: 52px;  min-width: 48px; text-align: center; }
#prwa-root .prwa-th-com       { width: 90px;  min-width: 80px; text-align: center; }

/* Celdas */
#prwa-root .prwa-prop-table tbody td {
  padding: 15px 16px;
  border-bottom: 1px solid #e8eff8;
  border-right: 1px solid #eef3fa;
  color: var(--prwa-text);
  vertical-align: middle;
  background: #fff;
  transition: background .15s, box-shadow .15s;
  text-align: center;
}
#prwa-root .prwa-prop-table tbody td:last-child { border-right: none; }
#prwa-root .prwa-prop-table tbody tr:last-child td { border-bottom: none; }
#prwa-root .prwa-prop-table tbody tr:last-child td:first-child { border-radius: 0 0 0 16px; }
#prwa-root .prwa-prop-table tbody tr:last-child td:last-child  { border-radius: 0 0 16px 0; }
#prwa-root .prwa-prop-table tbody tr:hover td { background: #f0f6ff; }
#prwa-root .prwa-prop-table tbody tr:nth-child(even) td { background: #f9fbfe; }
#prwa-root .prwa-prop-table tbody tr:nth-child(even):hover td { background: #edf4ff; }
/* Left accent — color by source */
#prwa-root .prwa-prop-table tbody td:first-child {
  border-left: 3px solid transparent; transition: border-color .15s, background .15s;
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-manual td:first-child { border-left: 4px solid #10b981; }
#prwa-root .prwa-prop-table tbody tr.prwa-row-xml td:first-child    { border-left: 4px solid #3b82f6; }
#prwa-root .prwa-prop-table tbody tr:hover td:first-child { filter: brightness(.92); }

/* Alineación izquierda */
#prwa-root .prwa-td-dir,
#prwa-root .prwa-td-obs,
#prwa-root .prwa-td-ref { text-align: left; }

/* Thumbnail */
#prwa-root .prwa-td-thumb { padding: 10px 12px; }
#prwa-root button.prwa-ptrow-thumb, .prwa-ptrow-thumb {
  width: 68px; height: 52px;
  border-radius: 10px; overflow: hidden;
  background: linear-gradient(145deg, #eef3f8, #e5edf5);
  display: flex; align-items: center; justify-content: center;
  color: #b0bec8; border: 1px solid #edf2f7; margin: 0 auto;
  box-shadow: 0 1px 4px rgba(0,0,0,.05);
  cursor: pointer; padding: 0; transition: transform .15s, box-shadow .15s;
  position: relative;
}
#prwa-root button.prwa-ptrow-thumb:hover {
  transform: scale(1.06); box-shadow: 0 3px 10px rgba(0,0,0,.12);
}
#prwa-root button.prwa-ptrow-thumb::after {
  content: ''; position: absolute; inset: 0;
  background: rgba(15,105,56,.0); transition: background .15s; border-radius: 10px;
}
#prwa-root button.prwa-ptrow-thumb:hover::after { background: rgba(15,105,56,.18); }
#prwa-root .prwa-ptrow-thumb img { width:100%; height:100%; object-fit:cover; display:block; }

/* Photo count under thumbnail */
#prwa-root .prwa-td-thumb { text-align: center; }
#prwa-root .prwa-thumb-photo-count {
  display: inline-flex; align-items: center; gap: 3px;
  margin-top: 4px; font-size: 10px; font-weight: 700; line-height: 1;
  color: #5a7a6a;
  background: #ecfdf5; border: 1px solid #bbf0d2;
  border-radius: 20px; padding: 2px 6px;
}

/* Sync time badge on thumbnail */
#prwa-root .prwa-sync-time {
  display: inline-flex; align-items: center; gap: 3px;
  margin-top: 4px; font-size: 9px; font-weight: 700; line-height: 1;
  color: #0369a1;
  background: rgba(14,165,233,.08); border: 1px solid rgba(14,165,233,.2);
  border-radius: 20px; padding: 2px 6px;
  white-space: nowrap;
}
#prwa-root .prwa-sync-time svg { stroke: #0ea5e9; flex-shrink: 0; }

/* Sync time badge on mobile cards */
#prwa-root .prwa-sync-time--card {
  font-size: 9px; padding: 1px 5px;
  margin-left: 4px; vertical-align: middle;
}

/* Copy photos link button under thumbnail */
#prwa-root .prwa-copy-photos-btn {
  display: inline-flex; align-items: center; gap: 3px;
  margin-top: 4px; font-size: 9px; font-weight: 700; line-height: 1;
  color: #7c3aed;
  background: #f5f3ff; border: 1px solid #ddd6fe;
  border-radius: 20px; padding: 3px 7px;
  cursor: pointer; transition: all .18s;
  white-space: nowrap;
}
#prwa-root .prwa-copy-photos-btn:hover {
  background: #7c3aed; color: #fff; border-color: #7c3aed;
}

/* Estado + Ref */
#prwa-root .prwa-badge--xs { padding: 3px 8px; font-size: 10px; gap: 4px; font-weight: 700; }
#prwa-root .prwa-badge--xs .dot { width: 5px; height: 5px; }
#prwa-root .prwa-ptrow-ref {
  display: block; font-size: 10px; color: var(--prwa-muted);
  margin-top: 3px; font-weight: 700; letter-spacing: .04em;
}

/* Nombre + dirección */
#prwa-root .prwa-ptrow-name { font-weight: 700; font-size: 14px; color: var(--prwa-text); line-height: 1.3; display:block; }
#prwa-root .prwa-ptrow-addr { display:block; font-size: 12.5px; color: var(--prwa-muted); margin-top: 2px; line-height: 1.3; }

/* Tipo */
#prwa-root .prwa-tipo-tag {
  display: inline-block; padding: 4px 10px; border-radius: 7px;
  background: #f0f4fa; border: 1px solid #dde6f2;
  font-size: 12.5px; font-weight: 700; color: #2d4a6e; white-space: nowrap;
}
#prwa-root .prwa-op-tag { font-size: 11.5px; color: var(--prwa-muted); font-weight: 600; margin-top: 2px; display: block; }

/* Precio */
#prwa-root .prwa-ptrow-price {
  font-weight: 900; font-size: 15px; letter-spacing: -.02em;
  color: var(--prwa-text); white-space: nowrap; display: block;
}
#prwa-root .prwa-td-sub { display: block; font-size: 10px; color: var(--prwa-muted); margin-top: 1px; line-height: 1; }

/* Números */
#prwa-root .prwa-num-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: 7px;
  background: #f0f4fa; border: 1px solid #dde6f2;
  font-size: 14px; font-weight: 800; color: var(--prwa-text);
}

/* Bool */
#prwa-root .prwa-check-yes { color: var(--prwa-accent); font-size: 15px; font-weight: 900; }
#prwa-root .prwa-check-no  { color: #ef4444; font-size: 15px; font-weight: 900; }
#prwa-root .prwa-orient-tag {
  display: inline-block; padding: 2px 6px; border-radius: 5px;
  background: #eff6ff; border: 1px solid #bfdbfe;
  font-size: 13px; font-weight: 700; color: #2563eb;
}

/* Fotos */
#prwa-root .prwa-fotos-link {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 8px; border-radius: 20px;
  background: var(--prwa-accent-soft); border: 1px solid #bfeacc;
  color: #129647; font-size: 11px; font-weight: 700;
  text-decoration: none; white-space: nowrap; transition: all .15s;
}
#prwa-root .prwa-fotos-link:hover { background: rgba(24,182,82,.15); }
#prwa-root .prwa-fotos-count { font-size: 11px; color: var(--prwa-muted); }
#prwa-root .prwa-fotos-none { color: #d0d9e4; }

/* Obs — chips en tabla */
#prwa-root .prwa-obs-text {
  font-size: 11px; color: #4a5c70; line-height: 1.4;
  display: block; max-width: 150px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
#prwa-root .prwa-obs-chip {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 11px; font-weight: 600; line-height: 1.3;
  padding: 4px 10px; border-radius: 8px; cursor: pointer;
  max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  transition: all .15s ease;
}
#prwa-root .prwa-obs-chip svg { flex-shrink: 0; }
#prwa-root .prwa-obs-chip--filled {
  background: linear-gradient(135deg, rgba(24,182,82,.08), rgba(24,182,82,.04));
  border: 1px solid rgba(24,182,82,.2);
  color: #0f6938;
}
#prwa-root .prwa-obs-chip--filled:hover {
  background: linear-gradient(135deg, rgba(24,182,82,.14), rgba(24,182,82,.08));
  border-color: rgba(24,182,82,.35);
}
#prwa-root .prwa-obs-chip--empty {
  background: #f8fafc; border: 1px dashed #cbd5e1; color: #94a3b8;
}
#prwa-root .prwa-obs-chip--empty:hover {
  background: #f1f5f9; border-color: #94a3b8; color: #64748b;
}
/* Source tags — Vinculada / Manual */
#prwa-root .prwa-source-tag {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 10.5px; font-weight: 700; padding: 3px 8px; border-radius: 6px;
  white-space: nowrap;
}
#prwa-root .prwa-source-tag--xml {
  background: rgba(59,130,246,.1); border: 1px solid rgba(59,130,246,.25); color: #1d4ed8;
}
#prwa-root .prwa-source-tag--manual {
  background: rgba(107,114,128,.08); border: 1px solid rgba(107,114,128,.2); color: #4b5563;
}
#prwa-root .prwa-th-source { min-width: 90px; }

/* ── Link badge (Vinculada/Manual) in ACCIONES column ── */
#prwa-root .prwa-link-badge {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 800; padding: 4px 10px; border-radius: 20px;
  white-space: nowrap; cursor: pointer; border: 1.5px solid transparent;
  margin-top: 4px; transition: all .18s ease;
  line-height: 1.2; letter-spacing: 0.02em;
  text-transform: uppercase;
}
#prwa-root .prwa-link-badge svg { flex-shrink: 0; }
#prwa-root .prwa-link-badge--linked {
  background: linear-gradient(135deg, rgba(59,130,246,.1), rgba(37,99,235,.15));
  border-color: rgba(59,130,246,.4); color: #1d4ed8;
  box-shadow: 0 1px 3px rgba(59,130,246,.15);
}
#prwa-root .prwa-link-badge--linked svg { stroke: #1d4ed8; }
#prwa-root .prwa-link-badge--linked:hover {
  background: linear-gradient(135deg, rgba(239,68,68,.08), rgba(220,38,38,.12));
  border-color: rgba(239,68,68,.35); color: #dc2626;
  box-shadow: 0 1px 3px rgba(239,68,68,.15);
}
#prwa-root .prwa-link-badge--linked:hover svg { stroke: #dc2626; }
#prwa-root .prwa-link-badge--manual {
  background: linear-gradient(135deg, rgba(16,185,129,.08), rgba(5,150,105,.12));
  border-color: rgba(16,185,129,.35); color: #047857;
  box-shadow: 0 1px 3px rgba(16,185,129,.12);
}
#prwa-root .prwa-link-badge--manual svg { stroke: #047857; }
#prwa-root .prwa-link-badge--manual:hover {
  background: linear-gradient(135deg, rgba(59,130,246,.08), rgba(37,99,235,.12));
  border-color: rgba(59,130,246,.3); color: #1d4ed8;
  box-shadow: 0 1px 3px rgba(59,130,246,.15);
}
#prwa-root .prwa-link-badge--manual:hover svg { stroke: #1d4ed8; }
#prwa-root .prwa-ptrow-actions {
  display: flex; flex-direction: column; align-items: center;
}

/* ── Notas IA — sección resaltada en formularios ── */
#prwa-root .prwa-notes-ai-field {
  background: linear-gradient(135deg, rgba(24,182,82,.04) 0%, rgba(59,130,246,.03) 100%);
  border: 1.5px solid rgba(24,182,82,.18);
  border-radius: 14px; padding: 16px 18px; margin-top: 8px;
  position: relative; overflow: hidden;
}
#prwa-root .prwa-notes-ai-field::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--prwa-accent), #3b82f6, #8b5cf6);
  border-radius: 14px 14px 0 0;
}
#prwa-root .prwa-notes-ai-header {
  display: flex; align-items: center; gap: 10px; margin-bottom: 10px;
}
#prwa-root .prwa-notes-ai-icon {
  width: 34px; height: 34px; border-radius: 10px;
  background: linear-gradient(135deg, rgba(24,182,82,.12), rgba(59,130,246,.08));
  border: 1px solid rgba(24,182,82,.15);
  display: flex; align-items: center; justify-content: center;
  color: var(--prwa-accent); flex-shrink: 0;
}
#prwa-root .prwa-notes-ai-label {
  font-size: 13px; font-weight: 700; color: var(--prwa-heading);
  display: block; margin-bottom: 1px;
}
#prwa-root .prwa-notes-ai-sublabel {
  font-size: 11.5px; color: var(--prwa-muted); line-height: 1.3;
}
#prwa-root .prwa-textarea--ai-notes {
  border: 1.5px solid rgba(24,182,82,.2) !important;
  border-radius: 10px !important;
  background: #fff !important;
  font-size: 13px;
  transition: border-color .2s, box-shadow .2s;
}
#prwa-root .prwa-textarea--ai-notes:focus {
  border-color: var(--prwa-accent) !important;
  box-shadow: 0 0 0 3px rgba(24,182,82,.1) !important;
}
/* Extract description button */
#prwa-root .prwa-extract-desc-btn {
  display: inline-flex; align-items: center; gap: 5px;
  margin-top: 6px; padding: 4px 12px; border-radius: 6px;
  border: 1px solid rgba(59,130,246,.3); background: rgba(59,130,246,.05);
  color: #2563eb; font-size: 11px; font-weight: 600;
  cursor: pointer; transition: all .15s;
}
#prwa-root .prwa-extract-desc-btn:hover { background: rgba(59,130,246,.12); border-color: #2563eb; }
#prwa-root .prwa-extract-desc-btn:disabled { opacity: .6; cursor: default; color: var(--prwa-accent); border-color: rgba(24,182,82,.3); background: rgba(24,182,82,.05); }
#prwa-root .prwa-notes-ai-suggestions {
  display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px;
}
#prwa-root .prwa-notes-ai-tag {
  display: inline-flex; align-items: center; gap: 3px;
  padding: 4px 10px; border-radius: 20px;
  font-size: 11px; font-weight: 600;
  background: #fff; border: 1px solid #e2e8f0; color: #475569;
  cursor: pointer; transition: all .15s ease; user-select: none;
}
#prwa-root .prwa-notes-ai-tag:hover {
  background: rgba(24,182,82,.06); border-color: rgba(24,182,82,.25); color: #0f6938;
  transform: translateY(-1px);
}
#prwa-root .prwa-notes-ai-tag.is-added {
  background: rgba(24,182,82,.1); border-color: rgba(24,182,82,.3); color: #0f6938;
  opacity: .6;
}

/* Acciones — dropdown unificado */
#prwa-root .prwa-ptrow-actions { position: relative; display: flex; justify-content: center; align-items: center; }
#prwa-root .prwa-actions-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: 9px; padding: 0;
  border: 1.5px solid var(--prwa-border);
  background: var(--prwa-bg);
  color: var(--prwa-muted); cursor: pointer;
  transition: all .15s;
}
#prwa-root .prwa-actions-toggle:hover {
  border-color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
  color: var(--prwa-accent);
  box-shadow: 0 2px 8px rgba(24,182,82,.15);
}
/* Hidden template inside table cell */
#prwa-root .prwa-actions-dropdown { display: none; }

/* ── Shared popover variables ── */
.prwa-actions-panel {
  --ap-radius: 10px;
  --ap-pad: 5px;
  --ap-item-py: 8px;
  --ap-item-px: 10px;
  --ap-icon: 16px;
  --ap-fs: 13px;
  --ap-gap: 9px;
  --ap-color: #334155;
  --ap-color-hover: #0f172a;
  --ap-muted: #94a3b8;
  --ap-hover-bg: #f4f6f8;
}

/* ── Actions overlay (mobile bottom-sheet) ── */
#prwa-actions-overlay {
  position: fixed; inset: 0; z-index: 99000;
  background: rgba(15,23,42,.4); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  display: flex; align-items: flex-end; justify-content: center;
  padding: 16px;
  animation: prwaFadeIn .12s ease;
}
@media (min-width: 769px) {
  #prwa-actions-overlay { align-items: center; }
}
#prwa-actions-overlay .prwa-actions-panel {
  --ap-item-py: 11px;
  --ap-item-px: 14px;
  --ap-fs: 13.5px;
  --ap-radius: 14px;
  --ap-pad: 6px;
  background: #fff; border-radius: 20px;
  min-width: 260px; max-width: 340px; width: 100%;
  box-shadow: 0 24px 64px rgba(0,0,0,.22), 0 0 0 1px rgba(0,0,0,.04);
  padding: var(--ap-pad); overflow: hidden;
  animation: prwaSlideUp .18s cubic-bezier(.22,1,.36,1);
}
@media (min-width: 769px) {
  #prwa-actions-overlay .prwa-actions-panel { animation: prwaScaleIn .15s cubic-bezier(.22,1,.36,1); }
}

/* Dropdown flotante en PC */
#prwa-actions-dropdown-float {
  position: fixed; z-index: 99001;
  animation: prwaScaleIn .12s cubic-bezier(.22,1,.36,1);
  transform-origin: top right;
}
@keyframes prwaScaleIn {
  from { opacity: 0; transform: scale(.94) translateY(-4px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
#prwa-actions-dropdown-float .prwa-actions-panel {
  background: #fff; border-radius: 14px; min-width: 210px;
  box-shadow: 0 8px 30px rgba(0,0,0,.12), 0 0 0 1px rgba(0,0,0,.06);
  padding: var(--ap-pad); overflow: hidden;
}

/* ── Shared action item styles ── */
.prwa-actions-panel .prwa-action-item {
  display: flex; align-items: center; gap: var(--ap-gap);
  width: 100%; padding: var(--ap-item-py) var(--ap-item-px);
  font-size: var(--ap-fs); font-weight: 600; color: var(--ap-color);
  border: none; background: none; cursor: pointer;
  text-decoration: none; white-space: nowrap;
  border-radius: var(--ap-radius);
  transition: background .1s, color .1s;
  line-height: 1.2;
}
.prwa-actions-panel .prwa-action-item:hover {
  background: var(--ap-hover-bg); color: var(--ap-color-hover);
}
.prwa-actions-panel .prwa-action-item svg {
  flex-shrink: 0; color: var(--ap-muted);
  width: var(--ap-icon); height: var(--ap-icon);
  transition: color .1s;
}
.prwa-actions-panel .prwa-action-item:hover svg { color: #64748b; }

/* Danger */
.prwa-actions-panel .prwa-action-item--danger { color: #ef4444; }
.prwa-actions-panel .prwa-action-item--danger svg { color: #fca5a5; }
.prwa-actions-panel .prwa-action-item--danger:hover { background: #fef2f2; color: #dc2626; }
.prwa-actions-panel .prwa-action-item--danger:hover svg { color: #ef4444; }

/* ── Section separator ── */
.prwa-actions-panel .prwa-action-sep {
  height: 1px; background: #f1f5f9; margin: 3px 10px;
}

/* ── Keys segment inside popover ── */
.prwa-actions-panel .prwa-action-item--keys-seg {
  display: flex; flex-direction: column; gap: 6px;
  padding: 6px 10px 8px;
  background: none;
  border-radius: var(--ap-radius);
  margin: 0;
  border: none;
}
.prwa-actions-panel .prwa-action-keys-label {
  display: flex; align-items: center; gap: 5px;
  font-size: 10px; font-weight: 800; color: #b0b8c4;
  text-transform: uppercase; letter-spacing: .08em;
  padding-left: 1px;
}
.prwa-actions-panel .prwa-keys-seg {
  display: flex; gap: 3px;
  background: #f4f6f8; border-radius: 9px; padding: 3px;
}
.prwa-actions-panel .prwa-keys-seg-btn {
  flex: 1; padding: 6px 8px; border: 1.5px solid transparent;
  background: transparent; border-radius: 7px;
  font-size: 12px; font-weight: 600; cursor: pointer;
  color: #94a3b8; transition: all .15s;
  white-space: nowrap; line-height: 1.2;
}
.prwa-actions-panel .prwa-keys-seg-btn:hover:not(.is-active) {
  background: rgba(255,255,255,.6); color: #64748b;
}
.prwa-actions-panel .prwa-keys-seg-btn.is-active {
  background: #fff; color: #334155;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
}
.prwa-actions-panel .prwa-keys-seg-btn.is-active.is-keys {
  background: #f0fdf4; color: #16a34a;
  border-color: #bbf7d0; box-shadow: none;
}
.prwa-actions-panel .prwa-keys-seg-btn.is-active.is-appt {
  background: #f5f3ff; color: #7c3aed;
  border-color: #ddd6fe; box-shadow: none;
}

/* Counter */
#prwa-root .prwa-table-counter { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
#prwa-root .prwa-table-counter-num { font-size:13px; color:var(--prwa-muted); font-weight:700; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
#prwa-root .prwa-table-counter-num strong { color:var(--prwa-text); font-size:14px; }
#prwa-root .prwa-synced-pill {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 11px; font-weight: 600; color: var(--prwa-accent);
  background: var(--prwa-accent-soft); border: 1px solid rgba(24,182,82,.2);
  padding: 2px 8px; border-radius: 20px; white-space: nowrap;
}

/* Full-width section */
#prwa-root .prwa-fullwidth-section { width:100%; min-width:0; margin-top:0; }
#prwa-root .prwa-fullwidth-section #prwa-section-list {
  background: var(--prwa-card); border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius);
  box-shadow: 0 4px 20px rgba(15,23,42,.06);
  padding: var(--prwa-pad);
  overflow: visible; /* visible so position:sticky children can escape the bounds */
  min-width: 0;
  position: relative;
}
/* Top accent line removed */

/* ════════════════════════════════════════════════════════════
   MODAL EDICIÓN — 5 pestañas (compacto)
   ════════════════════════════════════════════════════════════ */
#prwa-root .prwa-modal { position:fixed; inset:0; z-index:999990; display:flex; align-items:flex-start; justify-content:center; padding:3vh 16px; overflow-y:auto; background:rgba(9,17,31,.88); }
#prwa-root .prwa-modal[hidden] { display:none !important; }
#prwa-root .prwa-modal-backdrop { position:fixed; inset:0; z-index:-1; }
#prwa-root .prwa-modal-dialog {
  position:relative; width:100%; max-width:960px;
  display:flex; flex-direction:column;
  border-radius:16px; box-shadow:0 8px 32px rgba(9,17,31,.12), 0 2px 8px rgba(9,17,31,.08);
  background:#fff; border:1px solid rgba(226,232,240,.6); overflow:hidden;
  max-height:92vh;
}
#prwa-root .prwa-modal-dialog--wide { max-width:1060px; }
#prwa-root .prwa-modal-dialog--sm   { max-width:540px; }
#prwa-root .prwa-modal-head {
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 20px; border-bottom:1px solid var(--prwa-border);
  background:linear-gradient(135deg, #f8fafc 0%, #f0f7ff 100%);
}
#prwa-root .prwa-modal-title  { font-size:15px; font-weight:800; color:var(--prwa-text); margin:0; letter-spacing:-.02em; }
#prwa-root .prwa-modal-subtitle { margin:2px 0 0; color:var(--prwa-muted); font-size:12px; }
#prwa-root .prwa-modal-close-btn {
  width:28px; height:28px; border-radius:8px; padding:0;
  background:rgba(255,255,255,.8); border:1px solid var(--prwa-border);
  cursor:pointer; color:var(--prwa-muted); flex-shrink:0;
  display:grid; place-items:center; transition:all .15s;
}
#prwa-root .prwa-modal-close-btn:hover { background:#fee2e2; border-color:#fecaca; color:#dc2626; }
#prwa-root .prwa-modal-footer {
  display:flex; align-items:center; gap:10px; padding:10px 20px;
  border-top:1px solid var(--prwa-border); background:linear-gradient(135deg, #fbfdff 0%, #f0f7ff 100%);
}

/* Edit tabs — compact pill style */
#prwa-root .prwa-edit-tabs { display:flex; gap:2px; padding:6px 12px; background:#f8fafc; border-bottom:1px solid var(--prwa-border); overflow-x:auto; }
#prwa-root .prwa-edit-tab {
  padding:5px 11px; border-radius:7px; border:1px solid transparent;
  background:none; font-size:11px; font-weight:700; color:var(--prwa-muted);
  cursor:pointer; white-space:nowrap; transition:all .15s;
}
#prwa-root .prwa-edit-tab:hover { background:#edf2f7; color:var(--prwa-text); }
#prwa-root .prwa-edit-tab.is-active { background:#fff; color:var(--prwa-text); border-color:var(--prwa-border); box-shadow:0 1px 4px rgba(0,0,0,.06); }
#prwa-root .prwa-edit-body { padding:18px 24px; overflow-y:auto; flex:1; min-height:0; background:#fff; }
#prwa-root .prwa-edit-panel { background:#fff; }
#prwa-root .prwa-edit-tabs { background:#f8fafc; }
#prwa-root .prwa-modal-dialog { background:#fff; }
#prwa-root .prwa-form-grid, #prwa-root .prwa-field { background:transparent; }
#prwa-root .prwa-input, #prwa-root .prwa-select, #prwa-root .prwa-textarea { background:#fff !important; }
#prwa-root .prwa-edit-panel { display:none; }
#prwa-root .prwa-edit-panel.is-active { display:block; }

/* XML status banner — compact */
#prwa-root .prwa-xml-status-banner { padding:10px 16px; font-size:12px; gap:10px; }
#prwa-root .prwa-xml-banner-icon { font-size:18px; }
#prwa-root .prwa-xml-banner-body strong { font-size:12px; }
#prwa-root .prwa-xml-banner-body span { font-size:11px; }

/* Notas IA — compact header */
#prwa-root .prwa-notes-ai-header { gap:8px; margin-bottom:6px; }
#prwa-root .prwa-notes-ai-label { font-size:12px; }
#prwa-root .prwa-notes-ai-sublabel { font-size:10px; }
#prwa-root .prwa-textarea--ai-notes { font-size:16px; padding:8px 12px; min-height:60px; }

/* Form fields — tighter spacing */
#prwa-root .prwa-form-grid { gap:12px; }
#prwa-root .prwa-field label { font-size:11.5px; margin-bottom:3px; }
#prwa-root .prwa-input, #prwa-root .prwa-select { padding:8px 12px; font-size:16px; }
#prwa-root .prwa-textarea { padding:8px 12px; font-size:16px; }

/* ════════════════════════════════════════════════════════════
   MODAL NUEVA PROPIEDAD (pasos)
   ════════════════════════════════════════════════════════════ */
body.prwa-modal-open { overflow:hidden; }
body.prwa-modal-open #site-navigation,
body.prwa-modal-open .main-navigation { visibility:hidden !important; }
@keyframes prwa-fade-in { from { opacity:0 } to { opacity:1 } }
@keyframes prwa-fade-out { from { opacity:1 } to { opacity:0 } }
@keyframes prwa-scale-in { from { opacity:0; transform:scale(.95) translateY(8px) } to { opacity:1; transform:scale(1) translateY(0) } }
@keyframes prwa-scale-out { from { opacity:1; transform:scale(1) } to { opacity:0; transform:scale(.95) translateY(8px) } }
.prwa-modal-overlay { position:fixed; inset:0; z-index:999991; background:rgba(9,17,31,.55); backdrop-filter:blur(3px); display:flex; align-items:center; justify-content:center; padding:20px; }
.prwa-modal-box { background:#fff; border-radius:var(--prwa-radius); box-shadow:0 24px 60px rgba(0,0,0,.18); width:100%; max-width:820px; max-height:92vh; display:flex; flex-direction:column; overflow:hidden; }
.prwa-modal-header { display:flex; align-items:center; justify-content:space-between; padding:20px 28px 16px; border-bottom:1px solid #edf2f7; flex-shrink:0; gap:12px; }
.prwa-modal-steps-bar { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.prwa-mstep { padding:6px 14px; border-radius:20px; font-size:13px; font-weight:700; background:#f0f4f9; color:#94a3b8; border:1.5px solid #e2e8f0; transition:all .2s; }
.prwa-mstep.is-active { background:var(--prwa-accent); color:#fff; border-color:var(--prwa-accent); }
.prwa-mstep.is-done { background:#ecfdf5; color:#16a34a; border-color:#bbf7d0; }
.prwa-mstep-arrow { color:#cbd5e1; font-size:14px; }
.prwa-modal-close {
  width: 32px; height: 32px; border-radius: 10px;
  background: var(--prwa-bg); border: 1.5px solid var(--prwa-border);
  cursor: pointer; color: var(--prwa-muted); padding: 0; flex-shrink: 0;
  display: grid; place-items: center;
  transition: all .15s; font-size: 15px; line-height: 1;
}
.prwa-modal-close:hover {
  background: #fff5f5; border-color: #fecaca; color: #dc2626;
}
.prwa-modal-form { display:flex; flex-direction:column; overflow:hidden; flex:1; }
.prwa-modal-step { padding:28px 36px; overflow-y:auto; flex:1; }
.prwa-modal-step-title { font-size:15px; font-weight:800; color:var(--prwa-text); margin-bottom:16px; }
.prwa-modal-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px 16px; }
.prwa-mfield { display:flex; flex-direction:column; gap:5px; }
.prwa-mfield--full { grid-column:1 / -1; }
.prwa-mfield label { font-size:12px; font-weight:800; color:var(--prwa-muted); text-transform:uppercase; letter-spacing:.06em; }
.prwa-mfield label abbr { text-decoration: none; color: #ef4444; margin-left: 2px; }
.prwa-input-error { border-color:#dc2626!important; background:#fff5f5!important; animation: prwaShake .4s ease; }
@keyframes prwaShake { 0%,100%{transform:translateX(0)} 20%{transform:translateX(-6px)} 40%{transform:translateX(6px)} 60%{transform:translateX(-4px)} 80%{transform:translateX(4px)} }
.prwa-modal-summary { background:#f8fbff; border:1px solid var(--prwa-border); border-radius:14px; padding:14px; }
.prwa-summary-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px 12px; }
.prwa-sumrow { display:flex; flex-direction:column; gap:2px; }
.prwa-sumrow span  { font-size:10px; color:var(--prwa-muted); font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.prwa-sumrow strong { font-size:13px; color:var(--prwa-text); font-weight:700; }
.prwa-confirm-hint { font-size:12px; color:var(--prwa-muted); margin-top:12px; padding:10px 14px; background:#fffbeb; border:1px solid #fde68a; border-radius:8px; }
.prwa-modal-nav { display:flex; align-items:center; gap:10px; padding:14px 24px; border-top:1px solid #edf2f7; flex-shrink:0; background:#fbfdff; }

/* ── Upload zone ────────────────────────────────────────────── */
#prwa-root .prwa-upload-zone {
  border: 2px dashed var(--prwa-border); border-radius: var(--prwa-radius-sm);
  padding: 32px 20px; text-align: center; cursor: pointer;
  background: var(--prwa-card-soft); transition: border-color .2s, background .2s;
  position: relative;
}
#prwa-root .prwa-upload-zone:hover,
#prwa-root .prwa-upload-zone.is-over {
  border-color: var(--prwa-accent); background: var(--prwa-accent-soft);
}
#prwa-root .prwa-upload-zone input[type="file"] {
  position: absolute; inset: 0; opacity: 0; cursor: pointer; width: 100%; height: 100%;
}
#prwa-root .prwa-upload-icon { font-size: 32px; margin-bottom: 8px; }
#prwa-root .prwa-upload-text { font-size: 14px; color: var(--prwa-muted); }
#prwa-root .prwa-upload-text strong { color: var(--prwa-accent); }

/* Photo gallery in form */
#prwa-root .prwa-photo-gallery {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 8px;
  margin-top: 12px;
}
#prwa-root .prwa-photo-thumb {
  position: relative; aspect-ratio: 1; border-radius: 10px; overflow: hidden;
  border: 2px solid transparent; transition: border-color .15s;
}
#prwa-root .prwa-photo-thumb.is-cover { border-color: var(--prwa-accent); }
#prwa-root .prwa-photo-thumb img { width: 100%; height: 100%; object-fit: cover; }
#prwa-root .prwa-photo-thumb-actions {
  position: absolute; top: 0; left: 0; right: 0; bottom: auto;
  background: linear-gradient(to bottom, rgba(0,0,0,.55) 0%, transparent 100%);
  display: flex; align-items: flex-start; justify-content: flex-end; gap: 4px;
  padding: 5px 5px 10px;
  opacity: 0; transition: opacity .15s;
}
#prwa-root .prwa-photo-thumb:hover .prwa-photo-thumb-actions { opacity: 1; }
@media (hover: none) {
  #prwa-root .prwa-photo-thumb-actions { opacity: 1; }
}
#prwa-root .prwa-thumb-btn {
  width: 30px; height: 30px; border-radius: 8px; border: none;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; flex-shrink: 0; padding: 0;
  transition: background .15s, color .15s, transform .1s;
  box-shadow: 0 1px 4px rgba(0,0,0,.25);
}
#prwa-root .prwa-thumb-btn svg { display: block; pointer-events: none; flex-shrink: 0; }
#prwa-root .prwa-thumb-btn--cover {
  background: rgba(255,255,255,.95); color: #94a3b8;
}
#prwa-root .prwa-thumb-btn--cover:hover,
#prwa-root .prwa-photo-thumb.is-cover .prwa-thumb-btn--cover {
  background: #fff; color: #f59e0b;
}
#prwa-root .prwa-thumb-btn--delete {
  background: rgba(255,255,255,.95); color: #94a3b8;
}
#prwa-root .prwa-thumb-btn--delete:hover { background: #fff; color: #dc2626; }
#prwa-root .prwa-thumb-btn:active { transform: scale(.92); }
#prwa-root .prwa-photo-cover-badge {
  position: absolute; bottom: 4px; left: 4px;
  font-size: 9px; font-weight: 800; text-transform: uppercase;
  letter-spacing: .08em; padding: 2px 6px; border-radius: 4px;
  background: var(--prwa-accent); color: #fff;
}
/* .prwa-photo-uploading defined in "Upload overlay" section below */

/* ── Form ───────────────────────────────────────────────────── */
#prwa-root .prwa-form-section {
  background: var(--prwa-card); border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius); box-shadow: var(--prwa-shadow-soft);
  overflow: hidden;
}
#prwa-root .prwa-form-section-head {
  padding: 20px 24px; border-bottom: 1px solid var(--prwa-border);
  background: var(--prwa-bg);
}
#prwa-root .prwa-form-body { padding: 24px; }
#prwa-root .prwa-form-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
}
#prwa-root .prwa-field { display: flex; flex-direction: column; gap: 5px; }
#prwa-root .prwa-field--full { grid-column: 1 / -1; }
#prwa-root .prwa-field label {
  font-size: 13px; font-weight: 600; color: var(--prwa-text);
}
#prwa-root .prwa-field label abbr { text-decoration: none; color: #ef4444; margin-left: 2px; }
#prwa-root .prwa-input, #prwa-root .prwa-select, #prwa-root .prwa-textarea {
  width: 100%; padding: 12px 16px;
  border: 1.5px solid var(--prwa-border); border-radius: var(--prwa-radius-xs);
  font-size: 16px; color: var(--prwa-text); background: var(--prwa-card);
  font-family: inherit; transition: border-color .2s, box-shadow .2s; outline: none;
}
#prwa-root .prwa-input:focus, #prwa-root .prwa-select:focus, #prwa-root .prwa-textarea:focus {
  border-color: var(--prwa-accent); box-shadow: 0 0 0 3px rgba(24,182,82,.12);
}
#prwa-root .prwa-textarea { resize: vertical; min-height: 100px; }
#prwa-root .prwa-form-footer {
  padding: 20px 24px; border-top: 1px solid var(--prwa-border);
  display: flex; gap: 10px; justify-content: flex-end;
  background: var(--prwa-bg);
}
#prwa-root .prwa-form-footer .prwa-btn { width: auto; }

/* ── Filters ─────────────────────────────────────────────────── */
#prwa-root .prwa-filters {
  display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
  margin-bottom: 20px; padding: 14px 16px;
  background: var(--prwa-card-soft);
  border: 1px solid var(--prwa-border); border-radius: var(--prwa-radius-sm);
}
#prwa-root .prwa-filter-search {
  flex: 1; min-width: 180px;
}
#prwa-root .prwa-filter-select { min-width: 140px; }

/* ── Empty state ─────────────────────────────────────────────── */
#prwa-root .prwa-empty {
  text-align: center; padding: 64px 24px; color: var(--prwa-muted);
}
#prwa-root .prwa-empty-icon { font-size: 48px; margin-bottom: 12px; }
#prwa-root .prwa-empty h3 { font-size: 20px; margin-bottom: 8px; color: var(--prwa-text); }
#prwa-root .prwa-empty p { font-size: 15px; margin-bottom: 20px; }

/* ── Spinner ─────────────────────────────────────────────────── */
#prwa-root .prwa-spinner-wrap {
  display: flex; align-items: center; justify-content: center; padding: 32px 0;
}
#prwa-root .prwa-spinner {
  width: 32px; height: 32px;
  border: 3px solid var(--prwa-border);
  border-top-color: var(--prwa-accent);
  border-radius: 50%;
  animation: prwa-spin .7s linear infinite;
}
@keyframes prwa-spin { to { transform: rotate(360deg); } }

/* ── Toast ───────────────────────────────────────────────────── */
#prwa-root .prwa-toast {
  position: fixed; left: 50%; bottom: 28px;
  transform: translateX(-50%);
  background: #10213f; color: #fff;
  padding: 13px 20px; border-radius: 14px;
  box-shadow: var(--prwa-shadow); opacity: 0; pointer-events: none;
  transition: opacity .18s, transform .18s;
  z-index: 9999999; font-size: 14px; font-weight: 600; white-space: nowrap;
}
#prwa-root .prwa-toast.is-visible {
  opacity: 1; transform: translateX(-50%) translateY(-4px);
}
#prwa-root .prwa-toast.is-error { background: #dc2626; }
#prwa-root .prwa-toast.is-success { background: #16a34a; }

/* ── Progress bar ────────────────────────────────────────────── */
#prwa-root .prwa-upload-progress {
  height: 4px; border-radius: 999px; background: var(--prwa-border); overflow: hidden; margin-top: 8px;
}
#prwa-root .prwa-upload-progress-fill {
  height: 100%; background: var(--prwa-accent); border-radius: 999px;
  transition: width .3s;
}

/* ── Notice ──────────────────────────────────────────────────── */
#prwa-root .prwa-notice {
  padding: 14px 18px; border-radius: var(--prwa-radius-xs);
  margin-bottom: 20px; border-left: 4px solid transparent;
  font-size: 14px;
}
#prwa-root .prwa-notice--success { background: #f0fdf4; border-color: var(--prwa-accent); color: #166534; }
#prwa-root .prwa-notice--error   { background: #fef2f2; border-color: #dc2626; color: #991b1b; }
#prwa-root .prwa-notice--warning { background: #fffbeb; border-color: #d97706; color: #92400e; }
#prwa-root .prwa-notice p { margin: 0; }

/* ── Pagination ──────────────────────────────────────────────── */
#prwa-root .prwa-pagination {
  display: flex; gap: 4px; margin-top: 20px; flex-wrap: wrap;
}
#prwa-root .prwa-page-btn {
  min-width: 36px; height: 36px;
  display: inline-flex; align-items: center; justify-content: center;
  border: 1px solid var(--prwa-border); border-radius: 8px;
  font-size: 13px; text-decoration: none; color: var(--prwa-text);
  cursor: pointer; background: #fff; transition: background .15s;
}
#prwa-root .prwa-page-btn:hover { background: var(--prwa-bg); }
#prwa-root .prwa-page-btn.is-active {
  background: var(--prwa-accent); border-color: var(--prwa-accent); color: #fff;
}

/* ── Checkboxes ──────────────────────────────────────────────── */
#prwa-root .prwa-checkbox-label {
  display: flex; align-items: center; gap: 8px;
  font-size: 14px; cursor: pointer;
}
#prwa-root .prwa-checkbox-label input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--prwa-accent); }

/* ── Plan card left ──────────────────────────────────────────── */
#prwa-root .prwa-plan-info {
  background: linear-gradient(160deg, #f6fff9, #f0f9f4);
  border: 1px solid #c8ebd5; border-radius: var(--prwa-radius-sm);
  padding: 16px; margin-bottom: 16px;
}
#prwa-root .prwa-plan-name {
  font-size: 11px; font-weight: 900; text-transform: uppercase;
  letter-spacing: .14em; color: var(--prwa-accent); margin-bottom: 6px;
}
#prwa-root .prwa-plan-limit {
  font-size: 22px; font-weight: 900; letter-spacing: -.03em; color: var(--prwa-text);
}
#prwa-root .prwa-plan-limit small { font-size: 13px; font-weight: 600; color: var(--prwa-muted); }

/* ── Log list ────────────────────────────────────────────────── */
#prwa-root .prwa-log-list { display: grid; gap: 8px; }
#prwa-root .prwa-log-item {
  display: flex; justify-content: space-between; gap: 12px;
  padding: 12px 14px; border: 1px solid #edf2f7; border-radius: 14px;
  color: #617089; font-size: 13px; background: #fcfdff;
}
#prwa-root .prwa-log-item strong { color: #0f172a; font-size: 13px; }

/* ── Modal ───────────────────────────────────────────────────── */
#prwa-root .prwa-modal[hidden] { display: none !important; }* ══════════════════════════════════════════════════════════════
   UPSELL — sin suscripción activa
   ══════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════
   PROPERTY TABLE & ROWS
   ══════════════════════════════════════════════════════════════ */

/* ── Table structure ─────────────────────────────────────────── */
#prwa-root .prwa-table-wrap { overflow-x: auto; border-radius: 14px; border: 1px solid var(--prwa-border); background: #fff; }
#prwa-root .prwa-table { width: 100%; border-collapse: collapse; font-size: 13px; }
#prwa-root .prwa-table thead th {
  padding: 11px 14px;
  background: linear-gradient(180deg,#3d4a5c,#2d3848);
  color: #e8edf3;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
  text-align: left;
}
#prwa-root .prwa-table thead th:first-child { border-radius: 14px 0 0 0; }
#prwa-root .prwa-table thead th:last-child { border-radius: 0 14px 0 0; }
#prwa-root .prwa-prop-row { border-bottom: 1px solid var(--prwa-border); transition: background .1s; }
#prwa-root .prwa-prop-row:last-child { border-bottom: none; }
#prwa-root .prwa-prop-row:hover { background: #f8fafc; }
#prwa-root .prwa-prop-row td { padding: 11px 14px; vertical-align: middle; color: var(--prwa-text); }

/* ── Table cells ─────────────────────────────────────────────── */
#prwa-root .prwa-td-acciones { width: 52px; min-width: 48px; text-align: center; padding: 0 8px !important; }
#prwa-root .prwa-td-com { width: 90px; min-width: 80px; text-align: center; font-size: 13px; font-weight: 600; color: var(--prwa-text); }
#prwa-root .prwa-td-thumb { width: 76px; padding: 10px 14px !important; }
#prwa-root .prwa-td-tipo { width: 120px; }
#prwa-root .prwa-td-precio { width: auto; min-width: 130px; white-space: nowrap; font-weight: 700; }
#prwa-root .prwa-td-num { width: 84px; text-align: center; }
#prwa-root .prwa-td-bool { width: 62px; text-align: center; }
#prwa-root .prwa-td-fotos { width: 74px; text-align: center; }
#prwa-root .prwa-td-orient { width: 74px; text-align: center; }
#prwa-root .prwa-td-num-row, #prwa-root .prwa-th-num-row {
  width: 32px; text-align: center; font-size: 12px; font-weight: 700;
  color: var(--prwa-muted); padding: 4px !important;
}

/* ── Feed card action buttons (prwa-ptrow-btn used in feed cards) ── */
#prwa-root .prwa-ptrow-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 0;
  padding: 8px; border-radius: 10px; font-size: 12px; font-weight: 700;
  border: 1.5px solid var(--prwa-border); background: var(--prwa-bg);
  color: var(--prwa-text); cursor: pointer; transition: all .18s;
  white-space: nowrap; min-width: 34px; min-height: 34px;
}
#prwa-root .prwa-ptrow-btn .prwa-btn-label { display: none; }
#prwa-root .prwa-ptrow-btn:hover { background: #fff; border-color: #cbd5e1; }
#prwa-root .prwa-ptrow-btn--edit:hover { border-color: var(--prwa-accent); color: var(--prwa-accent); background: var(--prwa-accent-soft); }
#prwa-root .prwa-ptrow-btn--view:hover { border-color: #93c5fd; color: #3b82f6; background: #eff6ff; }
#prwa-root .prwa-ptrow-btn--del:hover { border-color: #fca5a5; color: #ef4444; background: #fff5f5; }

/* ── Thumbnail ───────────────────────────────────────────────── */
#prwa-root .prwa-ptrow-thumb {
  width: 38px; height: 38px; border-radius: 8px; overflow: hidden;
  background: #f1f5f9; display: flex; align-items: center; justify-content: center;
  border: 1px solid var(--prwa-border); color: #94a3b8; flex-shrink: 0;
}
#prwa-root .prwa-ptrow-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* ── Status badge ────────────────────────────────────────────── */
#prwa-root .prwa-status-badge {
  display: inline-block; padding: 3px 9px; border-radius: 999px;
  font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  background: #f1f5f9; color: #64748b; border: 1px solid #e2e8f0;
}
#prwa-root .prwa-status-badge.is-active { background: #effbf3; color: #15803d; border-color: #bbf7d0; }
#prwa-root .prwa-status-badge.is-draft { background: #f8fafc; color: #64748b; border-color: #e2e8f0; }
#prwa-root .prwa-status-badge.is-inactive,
#prwa-root .prwa-status-badge.is-paused_by_plan { background: #fef2f2; color: #dc2626; border-color: #fecaca; }
#prwa-root .prwa-status-badge.is-sold,
#prwa-root .prwa-status-badge.is-rented { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
#prwa-root .prwa-status-badge.is-deleted { background: #fff1f2; color: #be123c; border-color: #fecdd3; }

/* ── Source differentiation: Manual vs XML rows ─────────────── */
/* XML-linked rows — soft blue tint */
#prwa-root .prwa-prop-table tbody tr.prwa-row-xml td {
  background: rgba(59,130,246,.05);
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-xml:nth-child(even) td {
  background: rgba(59,130,246,.08);
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-xml:hover td {
  background: rgba(59,130,246,.12);
}
/* Manual rows — soft green tint */
#prwa-root .prwa-prop-table tbody tr.prwa-row-manual td {
  background: rgba(16,185,129,.04);
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-manual:nth-child(even) td {
  background: rgba(16,185,129,.07);
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-manual:hover td {
  background: rgba(16,185,129,.1);
}
/* Source badge — pill with icon */
#prwa-root .prwa-source-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 9px 2px 6px; border-radius: 20px;
  font-size: 10px; font-weight: 800; letter-spacing: .03em;
  margin-top: 4px; line-height: 1;
}
#prwa-root .prwa-source-badge svg { flex-shrink: 0; }
/* Manual — green accent matching plugin */
#prwa-root .prwa-source-badge--manual {
  background: linear-gradient(135deg, #ecfdf5, #d1fae5); color: #059669;
  border: 1px solid #a7f3d0; box-shadow: 0 1px 3px rgba(5,150,105,.1);
}
/* XML synced — blue matching row tint */
#prwa-root .prwa-source-badge--xml {
  background: linear-gradient(135deg, #eff6ff, #dbeafe); color: #2563eb;
  border: 1px solid #93c5fd; box-shadow: 0 1px 3px rgba(37,99,235,.1);
}
/* XML detached — amber */
#prwa-root .prwa-source-badge--xml-free {
  background: linear-gradient(135deg, #fffbeb, #fef3c7); color: #b45309;
  border: 1px solid #fde68a; box-shadow: 0 1px 3px rgba(180,83,9,.1);
}

/* ── tbl-btn ─────────────────────────────────────────────────── */
#prwa-root .prwa-tbl-btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 8px; border-radius: 6px; font-size: 11px; font-weight: 700;
  border: 1px solid var(--prwa-border); background: #f8fafc; color: #64748b;
  cursor: pointer; transition: all .1s;
}

/* ── Photos step in new modal ────────────────────────────────── */
#prwa-root .prwa-modal-photos-step { padding: 24px 28px; }
#prwa-root .prwa-modal-photos-step .prwa-modal-step-title { margin-bottom: 8px; }

/* ── Tooltip ─────────────────────────────────────────────────── */
#prwa-root .prwa-label-with-tip { display: flex; align-items: center; gap: 5px; }
#prwa-root .prwa-tooltip-wrap { position: relative; display: inline-flex; align-items: center; }
#prwa-root .prwa-info-icon { color: #7c8db5; cursor: help; flex-shrink: 0; opacity: .85; transition: opacity .15s; }
#prwa-root .prwa-tooltip-wrap:hover .prwa-info-icon { opacity: 1; color: #4b6fa0; }
#prwa-root .prwa-tooltip {
  position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%);
  background: #1e293b; color: #f1f5f9; font-size: 12px; line-height: 1.5;
  padding: 8px 12px; border-radius: 10px; white-space: normal; min-width: 200px;
  max-width: 260px; pointer-events: none; opacity: 0; transition: opacity .15s;
  z-index: 9999; box-shadow: 0 4px 16px rgba(0,0,0,.2);
}
#prwa-root .prwa-tooltip::after {
  content: ''; position: absolute; top: 100%; left: 50%; transform: translateX(-50%);
  border: 5px solid transparent; border-top-color: #1e293b;
}
#prwa-root .prwa-tooltip-wrap:hover .prwa-tooltip { opacity: 1; }

/* ══════════════════════════════════════════════════════════════
   MOBILE PROP CARDS
   ══════════════════════════════════════════════════════════════ */

#prwa-root .prwa-prop-cards { display: none; flex-direction: column; gap: 10px; }
#prwa-root .prwa-prop-card-mob {
  padding: 0; background: #fff; overflow: hidden;
  border: 1px solid var(--prwa-border); border-radius: 14px;
}
#prwa-root .prwa-prop-card-head {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px 8px; margin-bottom: 0;
}
#prwa-root .prwa-prop-card-info { flex: 1; min-width: 0; order: 1; }
#prwa-root .prwa-prop-card-info strong {
  display: block; font-size: 14px; font-weight: 700; color: var(--prwa-text);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
#prwa-root .prwa-prop-card-city { font-size: 12px; color: var(--prwa-muted); margin-top: 1px; display: block; }
#prwa-root .prwa-prop-card-head .prwa-status-badge { order: 2; flex-shrink: 0; }
#prwa-root .prwa-prop-card-head .prwa-card-thumb { order: 3; }
#prwa-root .prwa-prop-card-meta {
  display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 0;
  padding: 0 14px 8px;
}
#prwa-root .prwa-prop-card-price { font-weight: 800; font-size: 15px; color: var(--prwa-text); white-space: nowrap; }
#prwa-root .prwa-prop-card-type {
  font-size: 11px; font-weight: 700; padding: 2px 8px;
  border-radius: 6px; background: #f1f5f9; color: #64748b;
}

/* ══════════════════════════════════════════════════════════════
   MI PLAN — layout, stats, donut, features
   ══════════════════════════════════════════════════════════════ */

#prwa-root .prwa-plan-layout-v2 {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 16px;
  align-items: start;
}

/* Sidebar profile */
#prwa-root .prwa-plan-sidebar { display: flex; flex-direction: column; gap: 12px; }
#prwa-root .prwa-plan-profile-card { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 20px 16px; text-align: center; }
#prwa-root .prwa-plan-avatar {
  width: 54px; height: 54px; border-radius: 50%;
  background: linear-gradient(135deg, var(--prwa-accent), #0f9b41);
  color: #fff; font-size: 22px; font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; overflow: hidden; position: relative;
}
#prwa-root .prwa-plan-avatar-img {
  width: 100%; height: 100%; object-fit: cover; border-radius: 50%;
}
#prwa-root .prwa-plan-avatar-initial {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
}
#prwa-root .prwa-plan-profile-info strong { display: block; font-size: 14px; font-weight: 700; color: var(--prwa-text); }
#prwa-root .prwa-plan-profile-info span { font-size: 12px; color: var(--prwa-muted); }
#prwa-root .prwa-plan-stats-row {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 8px;
}
#prwa-root .prwa-plan-stat-card {
  background: var(--prwa-bg); border: 1px solid var(--prwa-border);
  border-radius: 10px; padding: 10px 12px;
  display: flex; flex-direction: column; gap: 2px; text-align: center;
}
#prwa-root .prwa-plan-stat-card.is-accent { border-color: #bbf7d0; background: #effbf3; }
#prwa-root .prwa-plan-stat-card strong { font-size: 20px; font-weight: 900; color: var(--prwa-text); line-height: 1.1; }
#prwa-root .prwa-plan-stat-card.is-accent strong { color: var(--prwa-accent); }
#prwa-root .prwa-plan-stat-card span { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--prwa-muted); }

/* Plan detail card */
#prwa-root .prwa-plan-detail-head {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 12px; margin-bottom: 16px; flex-wrap: wrap;
}
#prwa-root .prwa-plan-detail-title { font-size: 18px; font-weight: 900; color: var(--prwa-text); margin: 4px 0 0; }
#prwa-root .prwa-plan-detail-title span { color: var(--prwa-accent); }
#prwa-root .prwa-plan-detail-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Usage rows */
#prwa-root .prwa-plan-usage-row { margin-bottom: 12px; }
#prwa-root .prwa-plan-usage-info { display: flex; justify-content: space-between; font-size: 12px; margin-bottom: 5px; color: var(--prwa-muted); }
#prwa-root .prwa-plan-usage-visual { height: 8px; background: #f1f5f9; border-radius: 999px; overflow: hidden; }

/* Donut */
#prwa-root .prwa-plan-donut { display: flex; align-items: center; justify-content: center; position: relative; width: 80px; height: 80px; flex-shrink: 0; }
#prwa-root .prwa-plan-donut svg { transform: rotate(-90deg); }
#prwa-root .prwa-plan-donut-label {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  align-items: center; justify-content: center; line-height: 1.1;
}
#prwa-root .prwa-plan-donut-label strong { font-size: 16px; font-weight: 900; color: var(--prwa-text); }
#prwa-root .prwa-plan-donut-label span { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--prwa-muted); }

/* Features grid */
#prwa-root .prwa-plan-features-grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 4px;
}
#prwa-root .prwa-plan-feature-item {
  display: flex; align-items: flex-start; gap: 8px;
  padding: 10px 12px; border-radius: 10px;
  background: var(--prwa-bg); border: 1px solid var(--prwa-border);
}
#prwa-root .prwa-plan-feature-item.is-active { border-color: #bbf7d0; background: #f0fdf4; }
#prwa-root .prwa-plan-feature-item.is-locked { opacity: .55; }
#prwa-root .prwa-plan-feature-icon {
  width: 28px; height: 28px; border-radius: 8px;
  background: #fff; border: 1px solid var(--prwa-border);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; color: var(--prwa-muted);
}
#prwa-root .prwa-plan-feature-item.is-active .prwa-plan-feature-icon { border-color: #bbf7d0; color: var(--prwa-accent); }
#prwa-root .prwa-plan-feature-info strong { font-size: 12px; font-weight: 700; color: var(--prwa-text); display: block; }
#prwa-root .prwa-plan-feature-info span { font-size: 11px; color: var(--prwa-muted); }

/* Activity */
#prwa-root .prwa-plan-activity-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
#prwa-root .prwa-activity-expand-btn {
  background: none; border: none; cursor: pointer;
  font-size: 12px; font-weight: 700; color: var(--prwa-accent); padding: 0;
}

/* Plan inline summary */
#prwa-root .prwa-plan-inline {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; padding: 10px 16px; background: var(--prwa-bg);
  border: 1px solid var(--prwa-border); border-radius: 12px;
  margin-bottom: 12px; flex-wrap: wrap;
}
#prwa-root .prwa-plan-inline-left { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; flex: 1; }
#prwa-root .prwa-plan-inline-badge {
  padding: 4px 10px; border-radius: 999px;
  background: #effbf3; border: 1px solid #bbf7d0;
  font-size: 11px; font-weight: 800; color: #15803d;
  white-space: nowrap;
}
#prwa-root .prwa-plan-inline-stats { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
#prwa-root .prwa-pis { font-size: 12px; color: var(--prwa-muted); white-space: nowrap; }
#prwa-root .prwa-pis--accent strong { color: var(--prwa-accent); }
#prwa-root .prwa-pis strong { color: var(--prwa-text); font-weight: 800; }
#prwa-root .prwa-pis-sep { color: #cbd5e1; font-size: 11px; }
#prwa-root .prwa-plan-inline-bar { display: flex; align-items: center; gap: 8px; min-width: 120px; }
#prwa-root .prwa-plan-inline-bar .prwa-usage-bar-track { flex: 1; height: 6px; background: #e2e8f0; border-radius: 999px; overflow: hidden; }
#prwa-root .prwa-plan-inline-bar span { font-size: 11px; font-weight: 700; color: var(--prwa-muted); white-space: nowrap; }

/* Edit form */
#prwa-root .prwa-edit-form { display: flex; flex-direction: column; gap: 0; flex: 1; min-height: 0; }
#prwa-root .prwa-edit-form > fieldset { display: flex; flex-direction: column; flex: 1; min-height: 0; border: none; margin: 0; padding: 0; }

/* Photo thumbnail loading skeleton */
@keyframes prwa-skeleton-pulse {
  0%, 100% { opacity: .6; }
  50% { opacity: .25; }
}
#prwa-root .prwa-ptrow-thumb img,
#prwa-root .prwa-xml-preview-thumb {
  transition: opacity .3s ease;
}
#prwa-root .prwa-ptrow-thumb.is-loading,
#prwa-root .prwa-xml-preview-thumb-loading {
  position: relative; overflow: hidden;
  background: #e8eef4;
}
#prwa-root .prwa-ptrow-thumb.is-loading img { opacity: .45; }
#prwa-root .prwa-ptrow-thumb.is-loaded img { opacity: 1; }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE — Dashboard principal
   ══════════════════════════════════════════════════════════════ */

@media (max-width: 860px) {
  #prwa-root .prwa-plan-layout-v2 { grid-template-columns: 1fr; }
  #prwa-root .prwa-plan-features-grid { grid-template-columns: 1fr; }
}

/* ── Unified actions dropdown animations ──────────────────── */
@keyframes prwaSlideUp {
  from { transform: translateY(100%); opacity: 0; }
  to   { transform: translateY(0);    opacity: 1; }
}
@keyframes prwaFadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

/* ── Header: medium screen (tablet / narrow desktop) ──────── */
@media (max-width: 1024px) and (min-width: 769px) {
  #prwa-root .prwa-header-card {
    grid-template-columns: 1fr;
  }
  #prwa-root .prwa-status-badges,
  #prwa-root .prwa-action-btns  { justify-content: flex-start; }
}

@media (max-width: 768px) {
  /* Shell */
  #prwa-root .prwa-shell { padding: 12px 12px 40px; }
  #prwa-root .prwa-header-card {
    padding: 18px 18px;
    grid-template-columns: 1fr;
    gap: 10px;
    /* En móvil: solo gradiente suave, sin círculo verde derecho */
    background: linear-gradient(170deg, #ffffff, #f9fefc);
  }
  /* Ocultar círculo decorativo derecho en móvil */
  #prwa-root .prwa-header-card::after { display: none; }
  #prwa-root .prwa-hello { font-size: 22px; }
  #prwa-root .prwa-subline { font-size: 12px; margin-top: 4px; }
  #prwa-root .prwa-kicker { font-size: 10px; margin-bottom: 4px; }
  #prwa-root .prwa-status-badges,
  #prwa-root .prwa-action-btns  { justify-content: flex-start; }
  #prwa-root .prwa-pubweb-wrap { display: none; }
  /* Export bar — stacks vertically on mobile */
  #prwa-root .prwa-export-bar {
    flex-direction: column; align-items: stretch; gap: 10px; padding: 12px;
  }
  #prwa-root .prwa-export-bar-head { justify-content: center; }
  #prwa-root .prwa-export-bar-hint,
  #prwa-root .prwa-export-bar-sep { display: none; }
  #prwa-root .prwa-export-bar-btns {
    margin-left: 0; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 6px;
  }
  #prwa-root .prwa-export-bar-btn {
    justify-content: center; font-size: 11.5px; padding: 8px 6px;
  }
  /* Filter bar stacks vertically */
  #prwa-root .prwa-search-bar { flex-direction: column; gap: 8px; }
  #prwa-root .prwa-search-input-wrap { min-width: 0; width: 100%; }
  #prwa-root .prwa-search-select { flex: 1; min-width: 0; font-size: 16px; }
  #prwa-root .prwa-search-btn { padding: 0 16px; font-size: 12px; }
  /* Action dropdown unchanged on mobile — same toggle works everywhere */
  /* QuickNav — mobile: 2 rows (CTA on top, tabs below) */
  #prwa-root .prwa-quicknav {
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px;
    justify-content: center;
    overflow: hidden;
  }
  #prwa-root .prwa-qn-spacer { display: none; }
  /* CTA button full width on top */
  #prwa-root .prwa-qn-btn--cta {
    order: -1;
    width: 100%;
    justify-content: center;
    font-size: 14px;
    padding: 10px 16px;
    margin-left: 0;
    border-radius: 10px;
  }
  /* Nav tabs: segmented-control style — track + pill indicator */
  #prwa-root .prwa-quicknav .prwa-qn-btn:not(.prwa-qn-btn--cta) {
    flex: 1 1 0;
    justify-content: center;
    text-align: center;
    font-size: clamp(10.5px, 2.8vw, 12.5px);
    padding: 9px 3px;
    border-radius: 9px;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    gap: 3px;
    background: #f1f5f9;
    border: 1.5px solid transparent;
    color: #64748b;
    font-weight: 600;
    letter-spacing: -0.01em;
  }
  #prwa-root .prwa-quicknav .prwa-qn-btn:not(.prwa-qn-btn--cta).is-active {
    background: var(--prwa-accent-soft);
    border-color: var(--prwa-accent);
    color: var(--prwa-accent);
    box-shadow: 0 1px 4px rgba(24,182,82,.15);
  }
  #prwa-root .prwa-quicknav .prwa-qn-btn:not(.prwa-qn-btn--cta) svg { flex-shrink: 0; width: 12px; height: 12px; }
  /* Hide "Mi Web" on mobile — replaced by floating banner */
  #prwa-root .prwa-qn-miweb { display: none !important; }
  /* Show mobile web access banner */
  #prwa-root .prwa-mobile-web-access { display: flex !important; }
  /* Pending banner — mobile */
  #prwa-root .prwa-pending-banner {
    flex-direction: column; align-items: flex-start; gap: 10px; padding: 14px;
  }
  #prwa-root .prwa-pending-banner__icon { width: 32px; height: 32px; }
  #prwa-root .prwa-pending-banner__body { width: 100%; }
  #prwa-root .prwa-pending-banner__body strong { font-size: 13px; }
  #prwa-root .prwa-pending-banner__actions {
    width: 100%; flex-direction: column;
  }
  #prwa-root .prwa-pending-banner__btn {
    width: 100%; justify-content: center; padding: 10px 16px; font-size: 13px;
  }
  #prwa-root .prwa-pending-banner__close {
    position: absolute; top: 10px; right: 10px;
  }
  #prwa-root .prwa-qn-badge { min-width: 16px; height: 16px; font-size: 10px; padding: 0 4px; }

  /* Feeds header — mobile */
  #prwa-root .prwa-feeds-header { flex-wrap: wrap; gap: 8px; }
  #prwa-root .prwa-btn-new-feed { width: 100%; justify-content: center; }

  /* Feed card v2 — mobile */
  #prwa-root .prwa-fv2-card { padding: 14px; gap: 10px; }
  #prwa-root .prwa-fv2-head { gap: 6px; }
  #prwa-root .prwa-fv2-name { font-size: 14px; }
  #prwa-root .prwa-fv2-card { overflow: hidden; }
  #prwa-root .prwa-fv2-stats { gap: 5px; flex-wrap: wrap; }
  #prwa-root .prwa-fv2-chip { font-size: 10.5px; padding: 3px 7px; }
  #prwa-root .prwa-fv2-url { font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; display: block; }
  #prwa-root .prwa-fv2-actions {
    display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 6px;
  }
  #prwa-root .prwa-fv2-btn {
    padding: 9px 6px; font-size: 11px; justify-content: center;
    border-radius: 10px; white-space: nowrap;
  }
  #prwa-root .prwa-fv2-btn svg { flex-shrink: 0; }
  #prwa-root .prwa-fv2-btn--primary { grid-column: 1 / -1; font-size: 12px; padding: 10px; }
  #prwa-root .prwa-fv2-btn--danger { padding: 9px; min-width: 0; }
  #prwa-root .prwa-new-btn { font-size: 12px; padding: 9px 14px; }
  /* Plan inline */
  #prwa-root .prwa-plan-inline { flex-direction: column; align-items: flex-start; gap: 8px; }
  #prwa-root .prwa-plan-inline-bar { min-width: 100%; }
  /* Mobile: hide table (and its hints/show-more), show only cards */
  #prwa-root .prwa-table-outer { display: none !important; }
  #prwa-root .prwa-table-show-more-wrap { display: none !important; }
  #prwa-root .prwa-table-counter { display: none !important; }
  #prwa-root .prwa-table-wrap { display: block !important; overflow-x: auto; }
  #prwa-root .prwa-prop-cards { display: flex !important; margin-top: 0; }
  #prwa-root .prwa-cards-toolbar { display: flex !important; }
  /* Sidebar */
  #prwa-root .prwa-grid { grid-template-columns: 1fr; }
  #prwa-root .prwa-left-col { display: none; }
  /* Modals bottom sheet */
  #prwa-root .prwa-modal-inner {
    position: fixed; bottom: 0; left: 0; right: 0; top: auto;
    transform: none; max-height: 90vh; border-radius: 20px 20px 0 0;
    overflow-y: auto;
  }
  #prwa-root .prwa-modal-overlay { align-items: flex-end; }
}

@media (max-width: 400px) {
  #prwa-root .prwa-shell { padding: 10px 10px 32px; }
  #prwa-root .prwa-plan-stats-row { grid-template-columns: 1fr 1fr; }
  #prwa-root .prwa-prop-card-actions { flex-direction: column; }
}


/* ══════════════════════════════════════════════════════════════
   UPSELL — Sin suscripción activa
   ══════════════════════════════════════════════════════════════ */

/* ── Shell upsell ────────────────────────────────────────────── */
#prwa-root .prwa-shell--upsell {
  max-width: 1800px;
  margin: 0 auto;
  padding: 24px 40px 48px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

/* ── Upsell v2: Hero split layout ────────────────────────────── */
#prwa-root .prwa-upsell-hero {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 48px;
  align-items: center;
  padding: 48px 40px;
  margin-bottom: 8px;
  background: linear-gradient(160deg, #ffffff 0%, #f0fdf4 40%, #f6fff9 100%);
  border: 1.5px solid #d1fae5;
  border-radius: 20px;
  box-shadow: 0 12px 34px rgba(15,23,42,.06);
  overflow: hidden;
  position: relative;
}
#prwa-root .prwa-upsell-hero::before {
  content: '';
  position: absolute;
  top: -60%;
  right: -10%;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, rgba(24,182,82,.06) 0%, transparent 70%);
  pointer-events: none;
}

#prwa-root .prwa-upsell-hero-text {
  position: relative;
  z-index: 1;
}

#prwa-root .prwa-up__kicker {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--prwa-accent);
  background: linear-gradient(135deg, #dcfce7, #bbf7d0);
  padding: 6px 14px;
  border-radius: 50px;
  margin-bottom: 16px;
}

#prwa-root .prwa-up__title {
  font-size: 30px;
  font-weight: 900;
  line-height: 1.2;
  color: var(--prwa-text);
  margin: 0 0 14px;
  letter-spacing: -.02em;
}

#prwa-root .prwa-up__subtitle {
  font-size: 15px;
  line-height: 1.65;
  color: var(--prwa-muted);
  margin: 0 0 28px;
  max-width: 480px;
}

/* Feature highlights grid */
#prwa-root .prwa-up__highlights {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 28px;
}

#prwa-root .prwa-up__hl {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: rgba(255,255,255,.85);
  border: 1px solid #e5f5eb;
  border-radius: 12px;
  backdrop-filter: blur(4px);
  transition: transform .15s ease, box-shadow .15s ease;
}
#prwa-root .prwa-up__hl:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(22,163,74,.08);
}

#prwa-root .prwa-up__hl-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  background: linear-gradient(135deg, #dcfce7, #bbf7d0);
  color: var(--prwa-accent);
}
#prwa-root .prwa-up__hl-icon svg {
  stroke: var(--prwa-accent);
}

#prwa-root .prwa-up__hl div:last-child {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#prwa-root .prwa-up__hl strong {
  font-size: 13px;
  font-weight: 700;
  color: var(--prwa-text);
}
#prwa-root .prwa-up__hl span {
  font-size: 12px;
  color: var(--prwa-muted);
  line-height: 1.4;
}

/* CTA button */
#prwa-root .prwa-up__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 14px 32px;
  background: linear-gradient(135deg, var(--prwa-accent), #0f9b41);
  color: #fff !important;
  font-size: 15px;
  font-weight: 700;
  border-radius: 14px;
  text-decoration: none !important;
  border: none;
  cursor: pointer;
  transition: transform .15s, box-shadow .15s;
  box-shadow: 0 4px 14px rgba(22,163,74,.25);
}
#prwa-root .prwa-up__cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(22,163,74,.3);
}
#prwa-root .prwa-up__cta svg { stroke: #fff; }

/* Hero phone column */
#prwa-root .prwa-upsell-hero-phone {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
}

#prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap {
  transform: scale(.88);
  transform-origin: center center;
}
#prwa-root .prwa-upsell-hero-phone .pr-dm__phone {
  filter: drop-shadow(0 20px 40px rgba(0,0,0,.12));
}

/* ── How it works: 3 steps ───────────────────────────────────── */
#prwa-root .prwa-up__steps {
  text-align: center;
  margin-bottom: 8px;
  padding: 36px 20px;
  background: var(--prwa-bg);
  border: 1px solid var(--prwa-border);
  border-radius: 20px;
}
#prwa-root .prwa-up__steps-head {
  margin-bottom: 28px;
}
#prwa-root .prwa-up__steps-head h2 {
  font-size: 24px;
  font-weight: 900;
  color: var(--prwa-text);
  margin: 0;
  letter-spacing: -.02em;
}

#prwa-root .prwa-up__steps-grid {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap;
}

#prwa-root .prwa-up__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 20px 24px;
  background: #fff;
  border: 1px solid var(--prwa-border);
  border-radius: 16px;
  min-width: 180px;
  max-width: 220px;
  flex: 1;
  transition: transform .15s, box-shadow .15s;
}
#prwa-root .prwa-up__step:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(15,23,42,.06);
}

#prwa-root .prwa-up__step-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--prwa-accent), #0f9b41);
  color: #fff;
  font-size: 16px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(24,182,82,.2);
}

#prwa-root .prwa-up__step strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--prwa-text);
}
#prwa-root .prwa-up__step span {
  font-size: 12px;
  color: var(--prwa-muted);
  line-height: 1.5;
}

#prwa-root .prwa-up__step-arrow {
  color: #cbd5e1;
  transform: rotate(-90deg);
  flex-shrink: 0;
}

/* ── Plans section ───────────────────────────────────────────── */
#prwa-root .prwa-up__plans {
  margin-bottom: 8px;
}

#prwa-root .prwa-up__plans-head {
  text-align: center;
  margin-bottom: 32px;
}
#prwa-root .prwa-up__plans-head .prwa-up__kicker {
  margin-bottom: 12px;
}
#prwa-root .prwa-up__plans-head h2 {
  font-size: 26px;
  font-weight: 900;
  color: var(--prwa-text);
  margin: 0 0 10px;
  letter-spacing: -.02em;
}
#prwa-root .prwa-up__plans-head p {
  font-size: 14px;
  color: var(--prwa-muted);
  max-width: 500px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Re-scope prp-grid inside upsell */
#prwa-root .prwa-up__plans #prp-root .prp-grid {
  max-width: 940px;
  margin: 0 auto;
}

/* Paid cards: coming soon */
#prwa-root .prwa-up__plans .prp-btn-coming-soon {
  opacity: .85;
  cursor: default;
  pointer-events: none;
  background: #94a3b8;
}

/* ── Trust footer ────────────────────────────────────────────── */
#prwa-root .prwa-up__trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  padding: 20px 16px 28px;
  flex-wrap: wrap;
}

#prwa-root .prwa-up__trust-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--prwa-muted);
}
#prwa-root .prwa-up__trust-item svg {
  stroke: var(--prwa-accent);
  color: var(--prwa-accent);
  flex-shrink: 0;
}

/* ── Responsive upsell v2 ────────────────────────────────────── */
@media (max-width: 960px) {
  #prwa-root .prwa-upsell-hero {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 36px 28px;
  }
  #prwa-root .prwa-upsell-hero-phone {
    order: -1;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap {
    transform: none;
  }
  #prwa-root .prwa-upsell-hero-text {
    text-align: center;
  }
  #prwa-root .prwa-up__subtitle {
    margin-left: auto;
    margin-right: auto;
  }
  #prwa-root .prwa-up__highlights {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
  #prwa-root .prwa-up__cta {
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  #prwa-root .prwa-shell--upsell { padding: 16px 12px 40px; }
  #prwa-root .prwa-upsell-hero {
    padding: 28px 20px;
    gap: 24px;
    border-radius: 16px;
  }
  #prwa-root .prwa-up__title {
    font-size: 24px;
  }
  #prwa-root .prwa-up__subtitle {
    font-size: 14px;
  }
  #prwa-root .prwa-up__highlights {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap {
    transform: none;
    max-width: 290px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap .pr-dm__phone {
    width: 260px;
    padding: 13px 9px;
    border-radius: 40px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap .pr-dm__chat {
    height: 260px;
    min-height: 260px;
    max-height: 260px;
  }
  #prwa-root .prwa-up__plans-head h2 {
    font-size: 22px;
  }
  #prwa-root .prwa-up__trust {
    gap: 16px;
    flex-direction: column;
  }
  #prwa-root .prwa-up__step-arrow {
    transform: rotate(0deg);
  }
  #prwa-root .prwa-up__steps-grid {
    flex-direction: column;
  }
  #prwa-root .prwa-up__step {
    max-width: 100%;
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 480px) {
  #prwa-root .prwa-upsell-hero {
    padding: 24px 16px;
    border-radius: 12px;
  }
  #prwa-root .prwa-up__title {
    font-size: 21px;
  }
  #prwa-root .prwa-up__kicker {
    font-size: 11px;
    padding: 5px 12px;
  }
  #prwa-root .prwa-up__hl {
    padding: 12px;
  }
  #prwa-root .prwa-up__hl-icon {
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 8px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap {
    transform: none;
    max-width: 270px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap .pr-dm__phone {
    width: 245px;
    padding: 12px 8px;
    border-radius: 36px;
  }
  #prwa-root .prwa-upsell-hero-phone .pr-phone-demo-wrap .pr-dm__chat {
    height: 240px;
    min-height: 240px;
    max-height: 240px;
  }
}


/* ══ Sync progress overlay (auto-import live UI) ═════════════════ */
#prwa-root .prwa-sync-locked {
  opacity: .45 !important;
  pointer-events: none !important;
}
#prwa-root .prwa-sync-overlay {
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(240,253,244,.85) 0%, rgba(248,250,252,.9) 40%, rgba(239,246,255,.85) 100%);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1.5px solid rgba(24,182,82,.15);
  box-shadow: 0 4px 24px rgba(15,36,71,.06), inset 0 1px 0 rgba(255,255,255,.7);
  display: flex;
  align-items: center;
  justify-content: center;
  animation: prwaSyncFadeIn .35s cubic-bezier(.4,0,.2,1);
  padding: 8px;
  margin-top: 4px;
}
@keyframes prwaSyncFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}
#prwa-root .prwa-sync-overlay-inner {
  text-align: center;
  padding: 28px 24px;
  max-width: 420px;
  width: 100%;
}
#prwa-root .prwa-sync-overlay-header {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-bottom: 16px;
  height: 32px;
}
#prwa-root .prwa-sync-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #18b652;
  animation: prwaSyncBounce 1.4s ease-in-out infinite;
}
#prwa-root .prwa-sync-dot:nth-child(1) { animation-delay: 0s; }
#prwa-root .prwa-sync-dot:nth-child(2) { animation-delay: .16s; background: #22c55e; }
#prwa-root .prwa-sync-dot:nth-child(3) { animation-delay: .32s; background: #4ade80; }
@keyframes prwaSyncBounce {
  0%, 80%, 100% { transform: scale(.6); opacity: .4; }
  40% { transform: scale(1.2); opacity: 1; }
}
#prwa-root .prwa-sync-overlay-title {
  font-size: 16px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 4px;
}
#prwa-root .prwa-sync-overlay-subtitle {
  font-size: 12px;
  color: #94a3b8;
  margin-bottom: 16px;
}
/* Progress bar */
#prwa-root .prwa-sync-progress-bar {
  width: 100%;
  height: 6px;
  background: #f1f5f9;
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 18px;
}
#prwa-root .prwa-sync-progress-fill {
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(90deg, #18b652, #22d067);
  transition: width .6s cubic-bezier(.4,0,.2,1);
}
/* Stats grid */
#prwa-root .prwa-sync-stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-bottom: 14px;
}
#prwa-root .prwa-sync-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 0 16px;
}
#prwa-root .prwa-sync-stat-divider {
  width: 1px;
  height: 28px;
  background: #e2e8f0;
  flex-shrink: 0;
}
#prwa-root .prwa-sync-stat-num {
  font-size: 20px;
  font-weight: 800;
  color: #0f172a;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
#prwa-root .prwa-sync-stat-num--green { color: #16a34a; }
#prwa-root .prwa-sync-stat-num--blue  { color: #2563eb; }
#prwa-root .prwa-sync-stat-num--muted { color: #94a3b8; }
#prwa-root .prwa-sync-stat-label {
  font-size: 10px;
  font-weight: 600;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .04em;
}
/* Note at bottom */
#prwa-root .prwa-sync-overlay-note {
  font-size: 11px;
  color: #94a3b8;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
/* Done state */
#prwa-root .prwa-sync-overlay--done .prwa-sync-progress-fill {
  background: linear-gradient(90deg, #16a34a, #22c55e);
}
#prwa-root .prwa-sync-overlay--done .prwa-sync-overlay-title {
  color: #16a34a;
}
@media (max-width: 480px) {
  #prwa-root .prwa-sync-stat { padding: 0 10px; }
  #prwa-root .prwa-sync-stat-num { font-size: 16px; }
  #prwa-root .prwa-sync-overlay-inner { padding: 20px 14px; }
}

/* ══ Photo delete inline confirm ══════════════════════════════════ */
#prwa-root .prwa-photo-confirm {
  position: absolute; inset: 0; border-radius: 10px;
  background: rgba(15,18,30,.88); backdrop-filter: blur(4px);
  display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 10px; z-index: 10; padding: 12px;
}
#prwa-root .prwa-photo-confirm p {
  margin: 0; color: #fff; font-size: 12px; font-weight: 600;
  text-align: center; line-height: 1.3;
}
#prwa-root .prwa-photo-confirm-btns {
  display: flex; gap: 6px;
}
#prwa-root .prwa-btn-ghost-sm {
  padding: 5px 10px; border-radius: 6px; font-size: 11px; font-weight: 600;
  border: 1.5px solid rgba(255,255,255,.4); background: transparent;
  color: #fff; cursor: pointer; transition: background .15s;
}
#prwa-root .prwa-btn-ghost-sm:hover { background: rgba(255,255,255,.15); }
#prwa-root .prwa-btn-danger-sm {
  padding: 5px 10px; border-radius: 6px; font-size: 11px; font-weight: 600;
  border: none; background: #dc2626; color: #fff; cursor: pointer;
  transition: background .15s;
}
#prwa-root .prwa-btn-danger-sm:hover { background: #b91c1c; }

/* ══ Bulk select toolbar ══════════════════════════════════════════ */
#prwa-root .prwa-bulk-toolbar {
  display: flex !important; align-items: center; gap: 8px; margin-top: 10px; flex-wrap: wrap;
}
#prwa-root .prwa-bulk-toolbar button {
  /* Reset theme button styles */
  display: inline-flex !important; align-items: center; gap: 5px;
  padding: 6px 12px !important; border-radius: 6px !important;
  font-size: 12px !important; font-weight: 600 !important; line-height: 1.4 !important;
  cursor: pointer !important; outline: none !important;
  transition: background .15s, color .15s, border-color .15s;
  text-decoration: none !important; box-shadow: none !important;
  font-family: inherit !important;
}
#prwa-root .prwa-bulk-toolbar .prwa-bulk-select-toggle,
#prwa-root .prwa-bulk-toolbar .prwa-bulk-cancel-btn {
  background: var(--prwa-bg, #f8fafc) !important;
  color: var(--prwa-text, #0f172a) !important;
  border: 1.5px solid var(--prwa-border, #e2e8f0) !important;
}
#prwa-root .prwa-bulk-toolbar .prwa-bulk-select-toggle:hover,
#prwa-root .prwa-bulk-toolbar .prwa-bulk-cancel-btn:hover {
  background: var(--prwa-hover, #f1f5f9) !important;
  border-color: #94a3b8 !important;
}
#prwa-root .prwa-bulk-toolbar .prwa-bulk-delete-btn {
  background: #dc2626 !important; color: #fff !important;
  border: 1.5px solid transparent !important;
}
#prwa-root .prwa-bulk-toolbar .prwa-bulk-delete-btn:hover { background: #b91c1c !important; }
/* Override the global button display:inline-flex!important when hidden */
#prwa-root .prwa-bulk-toolbar button[hidden] { display: none !important; }

/* ══ Bulk property bar — pill compacto flotante ══════════════════ */
#prwa-root .prwa-bulk-bar {
  display: none;
  position: fixed; bottom: 22px; left: 50%; transform: translateX(-50%);
  z-index: 10000;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%); color: #fff;
  border-radius: 18px;
  padding: 10px 14px 10px 18px;
  box-shadow: 0 12px 48px rgba(0,0,0,.45), 0 2px 8px rgba(0,0,0,.25),
              inset 0 1px 0 rgba(255,255,255,.1);
  align-items: center; gap: 10px;
  flex-wrap: wrap; justify-content: center;
  max-width: calc(100vw - 24px);
  animation: prwaBulkBarIn .22s cubic-bezier(.22,1,.36,1);
  backdrop-filter: blur(8px);
}
#prwa-root .prwa-bulk-bar.is-visible { display: flex; }
@keyframes prwaBulkBarIn {
  from { opacity: 0; transform: translateX(-50%) translateY(14px) scale(.95); }
  to   { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
}
/* Badge contador */
#prwa-root .prwa-bulk-bar-count {
  display: flex; align-items: center; gap: 5px;
  white-space: nowrap; flex-shrink: 0;
}
#prwa-root .prwa-bulk-bar-count strong {
  font-weight: 900; color: #fbbf24; font-size: 18px; line-height: 1;
  background: rgba(251,191,36,.15); padding: 2px 8px; border-radius: 8px;
}
#prwa-root .prwa-bulk-bar-count span {
  font-size: 12px; font-weight: 600; color: rgba(255,255,255,.7);
}
/* Grupo Estado + Aplicar — parecen una sola unidad */
#prwa-root .prwa-bulk-bar-actions {
  display: flex; align-items: center; gap: 6px; flex-wrap: nowrap; flex-shrink: 0;
}
#prwa-root .prwa-bulk-estado-group {
  display: flex; align-items: stretch;
  background: rgba(255,255,255,.1);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 20px; overflow: hidden;
  flex-shrink: 0;
}
#prwa-root .prwa-bulk-select {
  appearance: none; -webkit-appearance: none;
  background: transparent; border: none; outline: none;
  color: #fff; font-size: 11px; font-weight: 600;
  padding: 5px 20px 5px 12px; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 6px center;
  min-width: 100px;
}
#prwa-root .prwa-bulk-select option { background: #1e293b; color: #fff; }
/* Divisor interno del grupo */
#prwa-root .prwa-bulk-estado-group .prwa-bulk-group-sep {
  width: 1px; background: rgba(255,255,255,.18); flex-shrink: 0; align-self: stretch;
}
/* Aplicar — verde dentro del grupo */
#prwa-root .prwa-btn-bulk-apply {
  background: #16a34a; border: none;
  color: #fff; font-weight: 700; font-size: 11px;
  padding: 5px 14px; cursor: pointer; white-space: nowrap;
  border-radius: 0 20px 20px 0;
  transition: background .15s;
}
#prwa-root .prwa-btn-bulk-apply:hover:not(:disabled) { background: #15803d; }
#prwa-root .prwa-btn-bulk-apply:disabled { opacity: .4; cursor: default; }
/* Eliminar — icono circular rojo */
#prwa-root .prwa-btn-bulk-del {
  width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: rgba(239,68,68,.2) !important; border: 1.5px solid rgba(239,68,68,.5) !important;
  color: #fca5a5 !important; cursor: pointer;
  transition: background .15s, color .15s, transform .1s;
  padding: 0; line-height: 1;
}
#prwa-root .prwa-btn-bulk-del svg { width: 16px; height: 16px; stroke: #fca5a5; stroke-width: 2; display: block; }
#prwa-root .prwa-btn-bulk-del:hover { background: #ef4444 !important; border-color: #ef4444 !important; }
#prwa-root .prwa-btn-bulk-del:hover svg { stroke: #fff; }
#prwa-root .prwa-btn-bulk-del:active { transform: scale(.95); }
#prwa-root .prwa-btn-bulk-del:disabled { opacity: .45; cursor: default; transform: none; }
/* Cancelar — × circular semitransparente */
#prwa-root .prwa-btn-bulk-cancel {
  width: 36px; height: 36px; border-radius: 10px; flex-shrink: 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: rgba(255,255,255,.08); border: 1.5px solid rgba(255,255,255,.15);
  color: rgba(255,255,255,.5); font-size: 16px; cursor: pointer;
  transition: background .15s, color .15s;
}
#prwa-root .prwa-btn-bulk-cancel:hover { background: rgba(255,255,255,.18); color: #fff; border-color: rgba(255,255,255,.3); }

/* ── Botones comisión y precio en lote ─────────────────────── */
#prwa-root .prwa-bulk-commission-group,
#prwa-root .prwa-bulk-price-group { display: flex; align-items: center; }

#prwa-root .prwa-btn-bulk-commission,
#prwa-root .prwa-btn-bulk-price {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 0 12px; height: 34px; border-radius: 9px;
  font-size: 12px; font-weight: 600; cursor: pointer;
  border: 1.5px solid transparent; transition: background .15s, transform .1s;
  white-space: nowrap;
}
#prwa-root .prwa-btn-bulk-commission {
  background: rgba(139,92,246,.18); color: #c4b5fd;
  border-color: rgba(139,92,246,.3);
}
#prwa-root .prwa-btn-bulk-commission:hover {
  background: rgba(139,92,246,.3); color: #ede9fe;
}
#prwa-root .prwa-btn-bulk-price {
  background: rgba(16,185,129,.18); color: #6ee7b7;
  border-color: rgba(16,185,129,.3);
}
#prwa-root .prwa-btn-bulk-price:hover {
  background: rgba(16,185,129,.3); color: #d1fae5;
}

/* ── Paneles de acción en lote (flotan sobre bulk bar) ───────── */
#prwa-root .prwa-bulk-panel {
  position: fixed;
  bottom: 88px;
  left: 50%;
  transform: translateX(-50%) translateY(12px);
  width: min(520px, calc(100vw - 32px));
  background: #fff;
  border: 1.5px solid var(--prwa-border);
  border-radius: 18px;
  box-shadow: 0 24px 64px rgba(0,0,0,.18), 0 4px 16px rgba(0,0,0,.08);
  overflow: hidden;
  z-index: 10001;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease, transform .18s cubic-bezier(.22,1,.36,1);
}
#prwa-root .prwa-bulk-panel.is-open {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}
#prwa-root .prwa-bulk-panel-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 18px;
  background: var(--prwa-bg-subtle, #f8fafc);
  border-bottom: 1px solid var(--prwa-border);
}
#prwa-root .prwa-bulk-panel-title {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; font-weight: 700; color: var(--prwa-text);
}
#prwa-root .prwa-bulk-panel-close {
  width: 28px; height: 28px; border-radius: 8px; border: none;
  background: transparent; color: var(--prwa-muted);
  font-size: 14px; cursor: pointer; display: flex; align-items: center; justify-content: center;
  transition: background .15s, color .15s;
}
#prwa-root .prwa-bulk-panel-close:hover { background: var(--prwa-border); color: var(--prwa-text); }

#prwa-root .prwa-bulk-panel-body { padding: 18px; display: flex; flex-direction: column; gap: 14px; }
#prwa-root .prwa-bulk-panel-footer {
  padding: 12px 18px 16px;
  display: flex; align-items: center; gap: 12px;
  border-top: 1px solid var(--prwa-border);
  background: var(--prwa-bg-subtle, #f8fafc);
}

/* Botón aplicar acción */
#prwa-root .prwa-btn-bulk-apply-action {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 0 18px; height: 36px; border-radius: 9px;
  background: var(--prwa-accent, #3b5bdb); color: #fff;
  border: none; font-size: 13px; font-weight: 600; cursor: pointer;
  transition: background .15s, transform .1s;
}
#prwa-root .prwa-btn-bulk-apply-action:hover { background: #2f4abf; transform: translateY(-1px); }
#prwa-root .prwa-btn-bulk-apply-action:disabled { opacity: .6; cursor: not-allowed; transform: none; }

/* Input genérico de panel */
#prwa-root .prwa-bulk-panel-input {
  height: 36px; padding: 0 10px; border-radius: 8px;
  border: 1.5px solid var(--prwa-border); font-size: 16px;
  width: 120px; transition: border-color .15s;
}
#prwa-root .prwa-bulk-panel-input:focus { outline: none; border-color: var(--prwa-accent, #3b5bdb); }
#prwa-root .prwa-bulk-input-unit {
  font-size: 13px; font-weight: 600; color: var(--prwa-muted);
}

/* Nota informativa */
#prwa-root .prwa-bulk-panel-note {
  display: flex; align-items: flex-start; gap: 6px;
  font-size: 11.5px; color: var(--prwa-muted);
  background: var(--prwa-bg-subtle, #f8fafc);
  border: 1px solid var(--prwa-border); border-radius: 8px;
  padding: 8px 12px; margin: 0;
}

/* Feedback OK / error */
#prwa-root .prwa-bulk-panel-feedback { font-size: 12px; font-weight: 600; }
#prwa-root .prwa-bulk-panel-feedback.is-ok  { color: #16a34a; }
#prwa-root .prwa-bulk-panel-feedback.is-err { color: #dc2626; }

/* ── Panel Comisión ────────────────────────────────────────── */
#prwa-root .prwa-bulk-comm-types {
  display: flex; flex-wrap: wrap; gap: 8px;
}
#prwa-root .prwa-bulk-comm-type-opt { cursor: pointer; }
#prwa-root .prwa-bulk-comm-type-opt input { display: none; }
#prwa-root .prwa-bulk-comm-type-label {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 9px;
  border: 1.5px solid var(--prwa-border); font-size: 13px;
  color: var(--prwa-text); transition: all .15s; white-space: nowrap;
}
#prwa-root .prwa-bulk-comm-type-opt input:checked + .prwa-bulk-comm-type-label {
  background: rgba(139,92,246,.1); border-color: #8b5cf6; color: #7c3aed; font-weight: 600;
}
#prwa-root .prwa-bulk-comm-value-wrap {
  display: flex; align-items: center; gap: 8px;
}

/* ── Panel Precio ──────────────────────────────────────────── */
#prwa-root .prwa-bulk-price-types {
  display: flex; flex-wrap: wrap; gap: 6px;
}
#prwa-root .prwa-bulk-price-type-btn {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 7px 14px; border-radius: 9px;
  border: 1.5px solid var(--prwa-border); font-size: 12px; font-weight: 600;
  color: var(--prwa-muted); background: #fff; cursor: pointer;
  transition: all .15s;
}
#prwa-root .prwa-bulk-price-type-btn.is-active {
  background: rgba(16,185,129,.1); border-color: #10b981; color: #047857;
}
#prwa-root .prwa-bulk-price-type-btn:hover:not(.is-active) {
  background: var(--prwa-bg-subtle, #f8fafc); color: var(--prwa-text);
}
#prwa-root .prwa-bulk-price-input-row {
  display: flex; align-items: center; gap: 8px;
}

/* Preview tabla de precios */
#prwa-root .prwa-bulk-price-preview-wrap {
  border: 1px solid var(--prwa-border); border-radius: 10px; overflow: hidden;
}
#prwa-root .prwa-bulk-price-preview-title {
  padding: 8px 14px; font-size: 11px; font-weight: 700;
  color: var(--prwa-muted); text-transform: uppercase; letter-spacing: .06em;
  background: var(--prwa-bg-subtle, #f8fafc); border-bottom: 1px solid var(--prwa-border);
}
#prwa-root .prwa-bulk-price-preview-scroll { max-height: 200px; overflow-y: auto; }
#prwa-root .prwa-bulk-price-preview-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
#prwa-root .prwa-bulk-price-preview-table thead th {
  padding: 7px 14px; background: var(--prwa-bg-subtle, #f8fafc);
  font-size: 10.5px; font-weight: 700; color: var(--prwa-muted);
  text-transform: uppercase; letter-spacing: .05em; text-align: left;
  border-bottom: 1px solid var(--prwa-border); white-space: nowrap;
}
#prwa-root .prwa-bulk-price-preview-table tbody tr { border-bottom: 1px solid var(--prwa-border); }
#prwa-root .prwa-bulk-price-preview-table tbody tr:last-child { border-bottom: none; }
#prwa-root .prwa-bulk-price-preview-table td { padding: 8px 14px; vertical-align: middle; }
#prwa-root .prwa-pp-title { max-width: 180px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--prwa-text); }
#prwa-root .prwa-pp-old { color: var(--prwa-muted); white-space: nowrap; }
#prwa-root .prwa-pp-arrow { color: var(--prwa-muted); text-align: center; width: 24px; }
#prwa-root .prwa-pp-new { white-space: nowrap; }
#prwa-root .prwa-pp-new strong { color: var(--prwa-text); margin-right: 6px; }
#prwa-root .prwa-price-up   { font-size: 11px; color: #16a34a; font-weight: 600; }
#prwa-root .prwa-price-down { font-size: 11px; color: #dc2626; font-weight: 600; }

/* Flash de actualización en fila tras cambio de estado en lote */
@keyframes prwaBulkStatusFlash {
  0%   { background: rgba(59,91,219,.18); }
  100% { background: transparent; }
}
/* Flash fila al completar subida de fotos — se mueve al top con destello verde */
@keyframes prwaUploadDone {
  0%   { background: rgba(22,163,74,.16); }
  70%  { background: rgba(22,163,74,.06); }
  100% { background: transparent; }
}
#prwa-root tr.prwa-row-just-uploaded {
  animation: prwaUploadDone 1.2s ease forwards;
}
#prwa-root tr.prwa-bulk-status-updated {
  animation: prwaBulkStatusFlash .8s ease forwards;
}
/* Flash de actualización en fila tras cambio de estado en lote */
@keyframes prwaBulkStatusFlash {
  0%   { background: rgba(59,91,219,.18); }
  100% { background: transparent; }
}
#prwa-root tr.prwa-bulk-status-updated {
  animation: prwaBulkStatusFlash .8s ease forwards;
}

/* ══ Bulk XML link/unlink buttons ═════════════════════════════════ */
#prwa-root .prwa-bulk-xml-group {
  display: flex; align-items: center; gap: 4px; flex-shrink: 0;
}
#prwa-root .prwa-btn-bulk-xml {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 5px 12px; border-radius: 20px;
  font-size: 11px; font-weight: 700; cursor: pointer;
  border: 1.5px solid; white-space: nowrap;
  transition: all .15s ease;
}
#prwa-root .prwa-btn-bulk-xml svg { flex-shrink: 0; }
#prwa-root .prwa-btn-bulk-xml--detach {
  background: rgba(251,191,36,.15); border-color: rgba(251,191,36,.5);
  color: #fbbf24;
}
#prwa-root .prwa-btn-bulk-xml--detach:hover {
  background: rgba(251,191,36,.3); border-color: #fbbf24;
}
#prwa-root .prwa-btn-bulk-xml--reattach {
  background: rgba(59,130,246,.15); border-color: rgba(59,130,246,.5);
  color: #60a5fa;
}
#prwa-root .prwa-btn-bulk-xml--reattach:hover:not(:disabled) {
  background: rgba(59,130,246,.3); border-color: #60a5fa;
}
#prwa-root .prwa-btn-bulk-xml--refresh {
  background: rgba(16,185,129,.15); border-color: rgba(16,185,129,.5);
  color: #10b981;
}
#prwa-root .prwa-btn-bulk-xml--refresh:hover:not(:disabled) {
  background: rgba(16,185,129,.3); border-color: #10b981;
}
#prwa-root .prwa-btn-bulk-xml.is-disabled {
  opacity: .3 !important; cursor: not-allowed; pointer-events: none;
}
/* Reattach popup */
.prwa-reattach-overlay {
  display: flex; align-items: center; justify-content: center; z-index: 100001;
  --prwa-accent: #18b652; --prwa-accent-dark: #0f9b41;
  --prwa-text: #10213f; --prwa-text-soft: #64748b;
  --prwa-border: #e2e8f0; --prwa-radius: 14px; --prwa-radius-sm: 10px;
}
.prwa-reattach-box {
  max-width: 480px; border-radius: var(--prwa-radius); padding: 0 !important;
  box-shadow: 0 20px 60px rgba(15,23,42,.18);
}
.prwa-reattach-header {
  padding: 20px 24px 0;
}
.prwa-reattach-title-row {
  display: flex; align-items: center; gap: 10px; margin-bottom: 12px;
}
.prwa-reattach-icon { font-size: 22px; }
.prwa-reattach-title { font-size: 16px; font-weight: 800; color: var(--prwa-text); }
.prwa-reattach-subtitle { font-size: 12px; color: var(--prwa-text-soft); margin-top: 2px; }
.prwa-reattach-actions-top { display: flex; gap: 8px; margin-bottom: 10px; }
.prwa-reattach-actions-top .prwa-btn { width: auto; min-height: 32px; padding: 4px 14px; font-size: 12px; }
.prwa-reattach-list {
  max-height: 300px; overflow-y: auto; padding: 0 24px 12px;
  display: flex; flex-direction: column; gap: 6px;
}
.prwa-reattach-footer {
  padding: 16px 24px; border-top: 1px solid var(--prwa-border);
  display: flex; gap: 10px; justify-content: flex-end;
}
.prwa-reattach-overlay .prwa-btn {
  appearance: none; border: none; cursor: pointer; font-weight: 800; letter-spacing: -.01em;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  text-decoration: none; transition: transform .15s, box-shadow .15s;
  background: linear-gradient(170deg, var(--prwa-accent), var(--prwa-accent-dark));
  color: #fff; border-radius: var(--prwa-radius-sm);
}
.prwa-reattach-overlay .prwa-btn:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(24,182,82,.22); }
.prwa-reattach-overlay .prwa-btn-outline {
  background: #fff; color: var(--prwa-text); border: 1px solid var(--prwa-border);
  box-shadow: 0 2px 8px rgba(15,23,42,.04);
}
.prwa-reattach-overlay .prwa-btn-outline:hover { box-shadow: 0 4px 14px rgba(15,23,42,.09); transform: translateY(-1px); }
.prwa-reattach-footer .prwa-btn { width: auto; min-height: 40px; padding: 8px 20px; font-size: 13px; }
.prwa-reattach-footer .prwa-reattach-confirm { box-shadow: 0 4px 12px rgba(24,182,82,.22); }
#prwa-root .prwa-reattach-item,
.prwa-reattach-item {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 12px; border-radius: 10px;
  background: #f8fafc; border: 1px solid var(--prwa-border);
  cursor: pointer; transition: all .15s;
  font-size: 13px; color: var(--prwa-text);
}
.prwa-reattach-item:hover { background: rgba(24,182,82,.06); border-color: rgba(24,182,82,.3); }
.prwa-reattach-item input[type="checkbox"] { accent-color: var(--prwa-accent); width: 16px; height: 16px; flex-shrink: 0; }
.prwa-reattach-ref { font-weight: 700; }
.prwa-synced-pill--manual { cursor: pointer; transition: all .15s; }
.prwa-synced-pill--manual:hover { background: rgba(251,191,36,.18); border-color: rgba(251,191,36,.5); }
/* Feed row selected highlight */
#prwa-root .prwa-feed-prop-row.prwa-row-selected { background: rgba(26,115,232,.06); }
/* ── Trigger móvil — oculto en escritorio ─────────────────── */
#prwa-root .prwa-bulk-mobile-trigger { display: none; }

@media (max-width: 600px) {
  /* Barra flotante compacta en móvil */
  #prwa-root .prwa-bulk-bar {
    bottom: 12px; padding: 10px 14px;
    border-radius: 16px; gap: 10px;
    flex-wrap: nowrap; overflow: visible;
  }
  #prwa-root .prwa-bulk-bar-count { flex-shrink: 0; }
  #prwa-root .prwa-bulk-bar-count strong { font-size: 16px; }
  #prwa-root .prwa-bulk-bar-count span { font-size: 11px; }

  /* Ocultar acciones inline — se muestran en bottom sheet */
  #prwa-root .prwa-bulk-bar-actions { display: none !important; }

  /* Mostrar trigger */
  #prwa-root .prwa-bulk-mobile-trigger {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 0 16px; height: 36px; border-radius: 18px;
    background: rgba(255,255,255,.15); border: 1.5px solid rgba(255,255,255,.25);
    color: #fff; font-size: 13px; font-weight: 700;
    cursor: pointer; white-space: nowrap; flex-shrink: 0;
    transition: background .15s;
  }
  #prwa-root .prwa-bulk-mobile-trigger:hover,
  #prwa-root .prwa-bulk-mobile-trigger:active { background: rgba(255,255,255,.28); }

  /* Cancel siempre visible en móvil */
  #prwa-root .prwa-btn-bulk-cancel { width: 34px; height: 34px; flex-shrink: 0; }

  /* ── Bottom sheet: acciones en lote ── */
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open {
    display: flex !important;
    position: fixed; bottom: 0; left: 0; right: 0;
    flex-direction: column; align-items: stretch;
    gap: 0; flex-wrap: nowrap;
    background: #1e293b;
    border-radius: 20px 20px 0 0;
    padding: 8px 0 max(20px, env(safe-area-inset-bottom)) 0;
    z-index: 10002;
    box-shadow: 0 -8px 40px rgba(0,0,0,.45);
    animation: prwaBulkSheetIn .28s cubic-bezier(.22,1,.36,1);
  }
  @keyframes prwaBulkSheetIn {
    from { transform: translateY(100%); opacity: .7; }
    to   { transform: translateY(0);    opacity: 1; }
  }
  /* Handle visual */
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open::before {
    content: ''; display: block;
    width: 36px; height: 4px; border-radius: 2px;
    background: rgba(255,255,255,.25); margin: 0 auto 14px;
  }
  /* Cada grupo ocupa una fila */
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-estado-group,
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-xml-group,
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-commission-group,
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-price-group {
    display: flex; align-items: center;
    padding: 12px 20px; gap: 10px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    border-radius: 0; background: transparent;
    border-top: none; border-left: none; border-right: none; overflow: visible;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-select {
    flex: 1; min-width: 0; font-size: 14px;
    padding: 8px 28px 8px 14px;
    background: rgba(255,255,255,.1);
    border-radius: 10px; border: 1.5px solid rgba(255,255,255,.2) !important;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-group-sep { display: none; }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-apply {
    font-size: 14px; padding: 9px 20px; border-radius: 10px;
    background: #16a34a; flex-shrink: 0;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-bulk-xml-group { gap: 8px; }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-xml {
    flex: 1; justify-content: center; height: auto;
    padding: 9px 12px; border-radius: 10px; font-size: 13px;
    background: rgba(255,255,255,.08); border: 1.5px solid rgba(255,255,255,.15);
    color: #fff; gap: 6px;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-xml span { display: inline; }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-commission,
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-price {
    flex: 1; justify-content: flex-start; height: auto;
    padding: 10px 14px; font-size: 14px; border-radius: 10px; gap: 10px;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-commission span,
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-price span { display: inline; }
  /* Eliminar: fila roja al fondo */
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-del {
    display: flex; width: auto; height: auto;
    margin: 8px 20px 4px; padding: 13px 20px;
    border-radius: 12px; justify-content: center; gap: 10px;
    background: rgba(239,68,68,.15) !important;
    border: 1.5px solid rgba(239,68,68,.4) !important;
    font-size: 14px; font-weight: 700;
  }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-del svg { width: 18px; height: 18px; }
  #prwa-root .prwa-bulk-bar-actions.is-sheet-open .prwa-btn-bulk-del:hover {
    background: rgba(239,68,68,.3) !important;
  }
}

/* ══ Feed counter pills ══════════════════════════════════════════ */
#prwa-root .prwa-feed-counter-pills {
  display: flex; align-items: center; gap: 8px; margin-top: 6px; flex-wrap: wrap;
}
#prwa-root .prwa-synced-pill--linked {
  background: rgba(22,163,74,.08); border-color: rgba(22,163,74,.25); color: #16a34a;
}
#prwa-root .prwa-synced-pill--manual {
  display: inline-flex; align-items: center; gap: 4px;
  background: rgba(251,191,36,.08); border: 1px solid rgba(251,191,36,.25); color: #b45309;
  font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 20px;
  white-space: nowrap;
}
#prwa-root .prwa-synced-pill--manual svg { stroke: #b45309; }

/* ══ Creative notes / observations display — magic wand ═══════════ */
#prwa-root .prwa-obs-wand {
  flex-shrink: 0; stroke: #a855f7; transition: transform .25s ease;
}
#prwa-root .prwa-obs-chip--filled:hover .prwa-obs-wand { transform: rotate(-12deg) scale(1.15); }
#prwa-root .prwa-obs-wand-empty { flex-shrink: 0; stroke: #94a3b8; }
#prwa-root .prwa-obs-chip--empty:hover .prwa-obs-wand-empty { stroke: #a855f7; }
#prwa-root .prwa-obs-sparkles {
  display: inline-flex; gap: 2px; align-items: center; flex-shrink: 0;
}
#prwa-root .prwa-obs-sparkle {
  width: 4px; height: 4px; border-radius: 50%;
  background: rgba(168,85,247,.3);
  animation: prwaSparkle 2s ease-in-out infinite;
}
#prwa-root .prwa-obs-sparkle:nth-child(2) { animation-delay: .4s; width: 5px; height: 5px; background: rgba(168,85,247,.5); }
#prwa-root .prwa-obs-sparkle:nth-child(3) { animation-delay: .8s; }
@keyframes prwaSparkle {
  0%, 100% { opacity: .4; transform: scale(.8); }
  50% { opacity: 1; transform: scale(1.3); }
}
#prwa-root .prwa-obs-chip--level-1 .prwa-obs-sparkle:nth-child(2),
#prwa-root .prwa-obs-chip--level-1 .prwa-obs-sparkle:nth-child(3) { opacity: .15; }
#prwa-root .prwa-obs-chip--level-2 .prwa-obs-sparkle:nth-child(3) { opacity: .25; }
#prwa-root .prwa-obs-chip--filled {
  background: linear-gradient(135deg, rgba(168,85,247,.06), rgba(139,92,246,.1));
  border-color: rgba(168,85,247,.2); color: #6b21a8;
}
#prwa-root .prwa-obs-chip--filled:hover {
  background: linear-gradient(135deg, rgba(168,85,247,.12), rgba(139,92,246,.16));
  border-color: rgba(168,85,247,.35);
}
/* Manual relink badge */
#prwa-root .prwa-manual-relink { cursor: pointer; transition: all .15s; }
#prwa-root .prwa-manual-relink:hover { background: rgba(59,130,246,.08); border-color: rgba(59,130,246,.35); color: #1d4ed8; }
#prwa-root .prwa-manual-relink:hover svg { stroke: #1d4ed8; }

/* ══ Table checkbox column ════════════════════════════════════════ */
#prwa-root .prwa-th-check {
  width: 36px; min-width: 36px; padding: 6px 8px;
  text-align: center;
}
#prwa-root .prwa-td-check {
  width: 36px; min-width: 36px; padding: 6px 8px;
  text-align: center; vertical-align: middle;
}
#prwa-root .prwa-check-wrap {
  display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer;
}
#prwa-root .prwa-check-wrap input[type="checkbox"] {
  width: 16px; height: 16px; cursor: pointer; accent-color: var(--prwa-accent);
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-selected {
  background: rgba(15,105,56,.07) !important;
}
#prwa-root .prwa-prop-table tbody tr.prwa-row-selected:hover {
  background: rgba(15,105,56,.12) !important;
}

/* Checkbox overlay en cada thumb */
#prwa-root .prwa-photo-select-check {
  display: none;
  position: absolute; top: 5px; left: 5px; z-index: 5;
  width: 22px; height: 22px; border-radius: 50%;
  background: rgba(255,255,255,.25); border: 2px solid rgba(255,255,255,.7);
  align-items: center; justify-content: center; color: transparent;
  transition: background .12s, border-color .12s;
}

/* En modo selección: mostrar checkboxes, ocultar acciones hover */
#prwa-root .prwa-photo-gallery.prwa-select-mode .prwa-photo-select-check { display: flex; }
#prwa-root .prwa-photo-gallery.prwa-select-mode .prwa-photo-thumb-actions { display: none !important; }
#prwa-root .prwa-photo-gallery.prwa-select-mode .prwa-photo-thumb { cursor: pointer; }

/* Thumb seleccionado */
#prwa-root .prwa-photo-gallery.prwa-select-mode .prwa-photo-thumb.is-selected {
  border-color: var(--prwa-accent);
}
#prwa-root .prwa-photo-gallery.prwa-select-mode .prwa-photo-thumb.is-selected .prwa-photo-select-check {
  background: var(--prwa-accent); border-color: var(--prwa-accent); color: #fff;
}

/* ══ SORTABLE TABLE HEADERS ══════════════════════════════════════ */
#prwa-root .prwa-sortable {
  cursor: pointer; user-select: none; white-space: nowrap;
  transition: background .15s;
}
#prwa-root .prwa-sortable:hover { background: rgba(15,105,56,.06); }
#prwa-root .prwa-sort-icon {
  font-size: 10px; opacity: .5; margin-left: 3px;
  display: inline-block; transition: opacity .15s;
}
#prwa-root .prwa-sortable:hover .prwa-sort-icon,
#prwa-root .prwa-sortable.sort-asc .prwa-sort-icon,
#prwa-root .prwa-sortable.sort-desc .prwa-sort-icon,
#prwa-root .prwa-sortable-feed:hover .prwa-sort-icon,
#prwa-root .prwa-sortable-feed.sort-asc .prwa-sort-icon,
#prwa-root .prwa-sortable-feed.sort-desc .prwa-sort-icon { opacity: 1; color: var(--prwa-accent); }
#prwa-root .prwa-sortable-feed {
  cursor: pointer; user-select: none; white-space: nowrap;
  transition: background .15s;
}
#prwa-root .prwa-sortable-feed:hover { background: rgba(15,105,56,.06); }

/* ══ MOBILE CARD — improvements ═════════════════════════════════ */
#prwa-root .prwa-card-ref-tag {
  display: inline-block; font-size: 10px; font-weight: 700;
  color: var(--prwa-accent); background: rgba(15,105,56,.08);
  border-radius: 4px; padding: 1px 6px; margin-bottom: 4px;
  letter-spacing: .04em;
}
#prwa-root .prwa-card-feed-tag {
  display: inline-block; font-size: 9px; font-weight: 700;
  color: #1a73e8; background: rgba(26,115,232,.08);
  border-radius: 4px; padding: 1px 6px;
  letter-spacing: .03em;
}
#prwa-root .prwa-prop-cards {
  margin-top: 12px;
}
#prwa-root .prwa-prop-card-mob {
  padding: 0; background: #fff;
  border: 1px solid var(--prwa-border); border-radius: 14px;
  box-shadow: 0 1px 4px rgba(0,0,0,.04);
  overflow: hidden;
}

/* Thumbnail inside card header — right side, larger */
#prwa-root .prwa-card-thumb {
  width: 52px; height: 52px; flex-shrink: 0;
  border-radius: 10px; overflow: hidden;
  border: 1px solid var(--prwa-border);
  cursor: pointer; position: relative;
}
#prwa-root .prwa-card-thumb img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
#prwa-root .prwa-card-thumb::after {
  content: "";
  position: absolute; inset: 0;
  background: rgba(0,0,0,0);
  border-radius: inherit;
  transition: background .15s;
}
#prwa-root .prwa-card-thumb:hover::after {
  background: rgba(0,0,0,.15);
}

/* Filter wrap — icon + select */
#prwa-root .prwa-filter-wrap {
  display: contents; /* transparent in desktop */
}
#prwa-root .prwa-filter-icon { display: none; } /* hidden on desktop */

/* ══ MOBILE SEARCH BAR ═══════════════════════════════════════════ */
@media (max-width: 768px) {
  #prwa-root .prwa-search-bar {
    flex-direction: column; gap: 8px; padding: 10px 12px;
    border-radius: 12px;
  }
  #prwa-root .prwa-search-input-wrap {
    width: 100%; flex-wrap: wrap; height: auto; gap: 6px;
    padding: 8px;
  }
  #prwa-root .prwa-search-input {
    font-size: 16px !important; /* prevents iOS zoom on focus (must be ≥16px) */
    width: 100%; height: 36px;
  }
  #prwa-root .prwa-search-icon { margin: 0 4px 0 6px; }
  #prwa-root .prwa-search-divider { display: none; }
  #prwa-root .prwa-filter-wrap {
    display: flex; align-items: center; position: relative;
    flex: 0 0 auto;
  }
  #prwa-root .prwa-filter-icon {
    display: block; position: absolute; left: 8px; top: 50%;
    transform: translateY(-50%); color: var(--prwa-muted);
    pointer-events: none; z-index: 1;
  }
  #prwa-root .prwa-filter-wrap .prwa-search-select {
    padding: 8px 6px 8px 28px; font-size: 0; width: 42px;
    border-radius: 8px; border: 1.5px solid var(--prwa-border);
    background: #fff; appearance: none; -webkit-appearance: none;
    height: auto; cursor: pointer; min-width: 0;
  }
  /* When a filter is active, show text */
  #prwa-root .prwa-filter-wrap.has-value .prwa-search-select {
    font-size: 12px; width: auto; padding-right: 10px;
    color: var(--prwa-accent); font-weight: 700;
  }
  #prwa-root .prwa-filter-wrap.has-value .prwa-filter-icon {
    color: var(--prwa-accent);
  }
  #prwa-root .prwa-search-select {
    flex: 1; min-width: 0; padding: 8px 10px; font-size: 13px;
    border-radius: 8px; border: 1.5px solid var(--prwa-border);
    background: #fff; appearance: auto; height: auto;
  }
  #prwa-root .prwa-search-btn {
    width: 100%; height: auto; padding: 11px 16px;
    border-radius: 10px; font-size: 14px;
  }
  /* Cards spacing */
  #prwa-root .prwa-prop-cards { gap: 12px; margin-top: 12px; }
  #prwa-root .prwa-prop-card-mob { padding: 0; }
}

/* ══ Card actions menu ═══════════════════════════════════════════ */
#prwa-root .prwa-prop-card-actions {
  position: relative;
  border-top: 1px solid var(--prwa-border);
  padding: 8px 14px 10px;
}
#prwa-root .prwa-card-actions-toggle {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 7px 14px; border-radius: 10px;
  border: 1.5px solid var(--prwa-border); background: #fff;
  color: var(--prwa-muted); cursor: pointer;
  font-size: 13px; font-weight: 700;
  transition: all .15s;
}
#prwa-root .prwa-card-actions-toggle:hover,
#prwa-root .prwa-card-actions-toggle[aria-expanded="true"] {
  background: var(--prwa-bg); border-color: var(--prwa-accent); color: var(--prwa-accent);
}
#prwa-root .prwa-card-actions-menu {
  display: flex; flex-direction: column;
  position: fixed; bottom: 16px; left: 16px; right: 16px;
  z-index: 9999; border-radius: 16px;
  background: #fff; box-shadow: 0 -4px 30px rgba(0,0,0,.18);
  padding: 6px 0; overflow: hidden;
  /* Siempre fixed — evita el flash de iOS Safari al pasar de display:none a flex */
  transform: translateY(calc(100% + 32px));
  opacity: 0;
  pointer-events: none;
  transition: transform .22s ease, opacity .18s ease;
  will-change: transform;
}
#prwa-root .prwa-card-actions-menu.is-open {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
#prwa-root .prwa-card-actions-backdrop {
  position: fixed; inset: 0; z-index: 9998;
  background: rgba(0,0,0,.35); backdrop-filter: blur(2px);
  animation: prwaFadeIn .15s ease;
}
#prwa-root .prwa-card-action-item {
  display: flex; align-items: center; gap: 10px;
  padding: 12px 18px; border: none; background: #fff;
  color: var(--prwa-text); font-size: 14px; font-weight: 600;
  cursor: pointer; text-decoration: none;
  transition: background .12s;
}
#prwa-root .prwa-card-action-item:hover { background: var(--prwa-bg); text-decoration: none; color: var(--prwa-text); }
#prwa-root .prwa-card-action-item + .prwa-card-action-item { border-top: 1px solid #f1f5f9; }
#prwa-root .prwa-card-action-item svg { flex-shrink: 0; color: var(--prwa-muted); }
#prwa-root .prwa-card-action-item--danger { color: #dc2626; }
#prwa-root .prwa-card-action-item--danger svg { color: #dc2626; }
#prwa-root .prwa-card-action-item--danger:hover { background: #fef2f2; }

/* ══ Card expandable details ═══════════════════════════════════════════ */
#prwa-root .prwa-card-details {
  padding: 0 14px 12px; animation: prwaFadeIn .2s ease;
}
#prwa-root .prwa-card-details-grid {
  display: grid; grid-template-columns: 1fr 1fr 1fr;
  gap: 6px;
}
#prwa-root .prwa-card-detail-item {
  display: flex; flex-direction: column;
  padding: 6px 8px; border-radius: 8px;
  background: var(--prwa-bg);
}
#prwa-root .prwa-card-detail-label {
  font-size: 10px; font-weight: 700; color: var(--prwa-muted);
  text-transform: uppercase; letter-spacing: .04em;
}
#prwa-root .prwa-card-detail-value {
  font-size: 13px; font-weight: 800; color: var(--prwa-text);
}
#prwa-root .prwa-card-detail-obs {
  margin-top: 8px; padding: 8px 10px;
  border-radius: 8px; background: #fffbeb;
  border: 1px solid #fde68a;
}
#prwa-root .prwa-card-detail-obs p {
  margin: 2px 0 0; font-size: 12px; color: #92400e; line-height: 1.4;
}
/* Expand/collapse button */
#prwa-root .prwa-card-expand-btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 7px 12px; border-radius: 10px;
  border: 1.5px solid var(--prwa-border); background: #fff;
  color: var(--prwa-muted); cursor: pointer;
  font-size: 12px; font-weight: 700;
  transition: all .15s;
}
#prwa-root .prwa-card-expand-btn:hover,
#prwa-root .prwa-card-expand-btn[aria-expanded="true"] {
  background: var(--prwa-bg); border-color: var(--prwa-accent); color: var(--prwa-accent);
}
#prwa-root .prwa-card-expand-icon {
  transition: transform .2s;
}
#prwa-root .prwa-card-expand-btn[aria-expanded="true"] .prwa-card-expand-icon {
  transform: rotate(180deg);
}
/* Card price row */
#prwa-root .prwa-card-price-row {
  display: flex; gap: 6px; flex-wrap: wrap; align-items: center; margin-top: 4px;
}
#prwa-root .prwa-card-top-row {
  display: flex; gap: 6px; align-items: center; margin-bottom: 2px; flex-wrap: wrap;
}
#prwa-root .prwa-prop-card-photos {
  font-size: 11px; font-weight: 700; color: var(--prwa-muted);
}
#prwa-root .prwa-card-updated {
  font-size: 10px; color: var(--prwa-muted); margin-top: 2px;
}
#prwa-root .prwa-card-thumb--empty {
  display: flex; align-items: center; justify-content: center;
  background: var(--prwa-bg); color: #94a3b8;
}
/* Card actions row layout */
#prwa-root .prwa-prop-card-actions {
  display: flex; gap: 8px; align-items: center;
}

/* ══ Cards "Ver más" buttons ═══════════════════════════════════════════ */
/* ══ Table show-more ═══════════════════════════════════════════ */
#prwa-root .prwa-table-show-more-wrap {
  display: flex; gap: 8px; margin-top: 12px; justify-content: center;
}
#prwa-root .prwa-table-show-more {
  padding: 10px 24px; border-radius: 10px;
  border: 1.5px dashed var(--prwa-border); background: var(--prwa-bg);
  color: var(--prwa-muted); font-size: 14px; font-weight: 700;
  cursor: pointer; transition: all .15s;
}
#prwa-root .prwa-table-show-more:hover {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}
#prwa-root .prwa-table-show-all {
  padding: 10px 24px; border-radius: 10px;
  border: 1.5px solid var(--prwa-border); background: var(--prwa-bg);
  color: var(--prwa-muted); font-size: 14px; font-weight: 700;
  cursor: pointer; transition: all .15s;
}
#prwa-root .prwa-table-show-all:hover {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}
#prwa-root .prwa-table-show-all {
  padding: 10px 24px; border-radius: 10px;
  border: 1.5px solid var(--prwa-border); background: #fff;
  color: var(--prwa-muted); font-size: 14px; font-weight: 700;
  cursor: pointer; transition: all .15s;
}
#prwa-root .prwa-table-show-all:hover {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}

#prwa-root .prwa-cards-show-more-wrap {
  display: flex; gap: 8px; margin-top: 8px;
}
#prwa-root .prwa-cards-show-more {
  flex: 1; padding: 12px; border-radius: 12px;
  border: 1.5px dashed var(--prwa-border); background: var(--prwa-bg);
  color: var(--prwa-muted); font-size: 14px; font-weight: 700;
  cursor: pointer; transition: all .15s; text-align: center;
}
#prwa-root .prwa-cards-show-more:hover {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}
#prwa-root .prwa-cards-show-all {
  flex: 0 0 auto; padding: 12px 18px; border-radius: 12px;
  border: 1.5px solid var(--prwa-border); background: #fff;
  color: var(--prwa-muted); font-size: 14px; font-weight: 700;
  cursor: pointer; transition: all .15s; text-align: center;
}
#prwa-root .prwa-cards-show-all:hover {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}

/* ══ Cards bulk select mode ════════════════════════════════════════ */
#prwa-root .prwa-cards-toolbar {
  display: none; /* shown via CSS media query on mobile */
  margin-bottom: 8px;
  gap: 8px; flex-wrap: wrap;
}
#prwa-root .prwa-cards-select-btn,
#prwa-root .prwa-cards-select-all-btn {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 14px; border-radius: 8px;
  border: 1.5px solid var(--prwa-border); background: #fff;
  color: var(--prwa-muted); font-size: 13px; font-weight: 600;
  cursor: pointer; transition: all .15s;
}
#prwa-root .prwa-cards-select-btn:hover,
#prwa-root .prwa-cards-select-btn.is-active {
  border-color: var(--prwa-accent); color: var(--prwa-accent);
  background: var(--prwa-accent-soft);
}
#prwa-root .prwa-cards-select-all-btn:hover {
  border-color: #64748b; color: #334155; background: #f1f5f9;
}
/* Checkbox inside each card — hidden by default, top-right corner */
#prwa-root .prwa-card-check {
  display: none;
  position: absolute; top: 10px; right: 10px; left: auto; z-index: 10;
  transform: none;
}
#prwa-root .prwa-card-check-input {
  width: 22px; height: 22px; cursor: pointer;
  accent-color: var(--prwa-accent);
  border-radius: 5px;
  box-shadow: 0 1px 3px rgba(0,0,0,.12);
}
/* Card needs relative position for checkbox */
#prwa-root .prwa-prop-card-mob { position: relative; }
/* Select mode: show checkboxes */
#prwa-root .prwa-prop-cards.prwa-cards-select-mode .prwa-card-check {
  display: block;
}
#prwa-root .prwa-prop-cards.prwa-cards-select-mode .prwa-prop-card-mob {
  cursor: pointer;
}
/* Selected card styling */
#prwa-root .prwa-prop-card-mob.is-card-selected {
  border-color: var(--prwa-accent) !important;
  background: rgba(24,182,82,.04);
  box-shadow: 0 0 0 2px rgba(24,182,82,.15);
}

/* ══ Feed mobile actions ═══════════════════════════════════════════ */
#prwa-root .prwa-feed-mobile-actions { display: none; position: relative; }
#prwa-root .prwa-feed-actions-btn {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 6px 12px; border-radius: 8px;
  background: var(--prwa-bg); border: 1.5px solid var(--prwa-border);
  font-size: 12px; font-weight: 700; color: var(--prwa-text);
  cursor: pointer; transition: all .15s; white-space: nowrap;
}
#prwa-root .prwa-feed-actions-btn:hover,
#prwa-root .prwa-feed-actions-btn[aria-expanded="true"] {
  border-color: var(--prwa-accent); color: var(--prwa-accent); background: rgba(24,182,82,.05);
}
@media (max-width: 768px) {
  #prwa-root .prwa-feed-desktop-btn { display: none !important; }
  #prwa-root .prwa-feed-mobile-actions { display: block; }
  #prwa-root .prwa-feed-card-actions { gap: 0; }
  /* Feed card top row: better wrapping for badges */
  #prwa-root .prwa-card-top-row { gap: 4px; line-height: 1.6; }
  /* Feed tag subtle styling */
  #prwa-root .prwa-card-feed-tag {
    font-size: 8px; padding: 1px 5px; opacity: .7;
    background: rgba(100,116,139,.08); color: #64748b;
  }
  /* Updated date more compact */
  #prwa-root .prwa-card-updated { font-size: 9px; opacity: .65; }
  /* Feed cards in select mode: pointer cursor */
  #prwa-root .prwa-feed-prop-cards.prwa-cards-select-mode .prwa-feed-card-mob { cursor: pointer; }
  /* Bulk bar: don't overlap with FAB button */
  #prwa-root .prwa-bulk-bar { bottom: 80px; }
}

/* ══ Table row limit "Ver más" (deduplicated) ═════════════════════ */

/* ══ Delete confirm modal ═══════════════════════════════════════════════ */
#prwa-modal-delete { z-index: 999992 !important; }
.prwa-del-box {
  background: #fff; border-radius: 20px; padding: 24px 24px 20px;
  max-width: 420px; width: calc(100% - 32px);
  box-shadow: 0 24px 64px rgba(0,0,0,.22);
  animation: prwaDelIn .18s cubic-bezier(.4,0,.2,1);
  position: relative;
}
@keyframes prwaDelIn { from { opacity:0; transform:scale(.94) translateY(10px); } to { opacity:1; transform:none; } }
.prwa-del-head {
  display: flex; align-items: center; gap: 12px; margin-bottom: 14px;
}
.prwa-del-icon {
  width: 40px; height: 40px; border-radius: 12px; background: #fef2f2;
  display: flex; align-items: center; justify-content: center;
  color: #dc2626; flex-shrink: 0;
}
.prwa-del-head h3 {
  flex: 1; font-size: 15px; font-weight: 800; color: #0f172a; margin: 0;
}
.prwa-del-close {
  width: 32px; height: 32px; border-radius: 8px; border: 1.5px solid #e2e8f0;
  background: #f8fafc; color: #64748b; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background .15s, border-color .15s; flex-shrink: 0;
  padding: 0; line-height: 1;
}
.prwa-del-close:hover { background: #f1f5f9; border-color: #cbd5e1; color: #0f172a; }
.prwa-del-msg {
  font-size: 14px; color: #475569; line-height: 1.6; margin: 0 0 20px;
}
.prwa-del-btns { display: flex; gap: 10px; }
.prwa-del-btn-cancel {
  flex: 1; padding: 12px 16px; border-radius: 10px;
  border: 1.5px solid #e2e8f0 !important;
  background: #f8fafc !important; color: #334155 !important;
  font-size: 14px; font-weight: 600;
  cursor: pointer; transition: background .15s, border-color .15s;
  text-align: center; text-shadow: none !important; box-shadow: none !important;
}
.prwa-del-btn-cancel:hover { background: #f1f5f9 !important; border-color: #cbd5e1 !important; color: #0f172a !important; }
.prwa-del-btn-ok {
  flex: 1; padding: 12px 16px; border-radius: 10px; border: none !important;
  background: #dc2626 !important; color: #fff !important;
  font-size: 14px; font-weight: 700;
  cursor: pointer; transition: background .15s;
  text-align: center; text-shadow: none !important;
}
.prwa-del-btn-ok:hover { background: #b91c1c !important; }
.prwa-del-btn-ok:disabled { background: #fca5a5 !important; cursor: not-allowed; }

/* Fecha column */
#prwa-root .prwa-th-fecha { width: 90px; white-space: nowrap; }
#prwa-root .prwa-td-fecha { width: 90px; white-space: nowrap; }
#prwa-root .prwa-fecha-text { font-size: 12px; color: var(--prwa-muted); }

/* ── Download photos button ─────────────────────────────────────── */
#prwa-root .prwa-download-photos-btn {
  width: 22px; height: 22px; border-radius: 6px; padding: 0;
  border: 1px solid #e2e8f0 !important; background: #f8fafc !important;
  color: #64748b !important; display: flex; align-items: center;
  justify-content: center; cursor: pointer; flex-shrink: 0;
  transition: background .15s, color .15s, border-color .15s;
}
#prwa-root .prwa-download-photos-btn:hover {
  background: #effcf3 !important; color: #18b652 !important;
  border-color: #bfeacc !important;
}

/* Row saved flash */
#prwa-root .prwa-row-saved {
  animation: prwa-row-flash .6s ease-out;
}
@keyframes prwa-row-flash {
  0%   { background: #effcf3; }
  100% { background: transparent; }
}

/* Supabase folder button */
#prwa-root .prwa-ptrow-btn--supa {
  background: #1c1c1c !important; color: #3ecf8e !important;
  border: 1px solid #333 !important;
}
#prwa-root .prwa-ptrow-btn--supa:hover {
  background: #2a2a2a !important; color: #5effa0 !important;
}

/* Step 5 photo gallery: match edit modal grid */
#prwa-root .prwa-photo-gallery--new {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  gap: 10px;
  margin-top: 14px;
}
#prwa-root .prwa-upload-zone {
  border: 2px dashed #bfeacc;
  border-radius: 12px;
  background: #f6fef9;
  padding: 24px 16px;
  cursor: pointer;
  text-align: center;
  transition: border-color .15s, background .15s;
}
#prwa-root .prwa-upload-zone:hover,
#prwa-root .prwa-upload-zone.dragover {
  border-color: var(--prwa-accent, #18b652);
  background: #effcf3;
}
#prwa-root .prwa-upload-icon { margin-bottom: 8px; line-height: 1; }

/* Breadcrumb steps: clickable when done */
#prwa-root .prwa-mstep.is-done {
  cursor: pointer;
  text-decoration: none;
}
#prwa-root .prwa-mstep.is-done:hover {
  background: rgba(15,105,56,.12) !important;
  border-color: var(--prwa-accent) !important;
  color: var(--prwa-accent) !important;
}
/* Photo gallery grid in both modals */
#prwa-root .prwa-photo-gallery,
#prwa-root .prwa-photo-gallery--new {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: 10px;
}


/* ══════════════════════════════════════════════════════════════
   DESKTOP BOOST — pantallas ≥ 1200px
   ══════════════════════════════════════════════════════════════ */
@media (min-width: 1200px) {
  #prwa-root {
    font-size: 16px;
  }
  #prwa-root .prwa-shell {
    padding: 28px 48px 72px;
  }
  #prwa-root .prwa-header-card {
    padding: 32px 48px;
  }
  #prwa-root .prwa-hello {
    font-size: 36px;
  }
  #prwa-root .prwa-prop-table {
    font-size: 14px;
  }
  #prwa-root .prwa-prop-table thead th {
    padding: 14px 16px;
    font-size: 11.5px;
  }
  #prwa-root .prwa-prop-table tbody td {
    padding: 14px 16px;
  }
  #prwa-root button.prwa-ptrow-thumb,
  .prwa-ptrow-thumb {
    width: 72px; height: 56px;
  }
  #prwa-root .prwa-ptrow-btn {
    padding: 8px 13px;
    font-size: 13px;
  }
  #prwa-root .prwa-search-input-wrap {
    height: 52px;
  }
  #prwa-root .prwa-search-input {
    font-size: 16px;
  }
  #prwa-root .prwa-search-select {
    font-size: 16px;
  }
  #prwa-root .prwa-search-btn {
    font-size: 14px;
    padding: 0 28px;
  }
  .prwa-modal-box {
    max-width: 860px;
  }
  #prwa-root .prwa-modal-dialog {
    max-width: 1020px;
  }
  #prwa-root .prwa-modal-dialog--wide {
    max-width: 1380px;
  }
  #prwa-root .prwa-edit-body {
    padding: 32px 40px;
    max-height: 70vh;
  }
  .prwa-modal-step {
    padding: 32px 40px;
  }
  #prwa-root .prwa-input,
  #prwa-root .prwa-select,
  #prwa-root .prwa-textarea {
    padding: 13px 18px;
    font-size: 16px;
  }
  #prwa-root .prwa-mfield label {
    font-size: 12px;
  }
  .prwa-mstep {
    padding: 7px 16px;
    font-size: 13.5px;
  }
  .prwa-modal-header {
    padding: 22px 32px 18px;
  }
}

/* ══════════════════════════════════════════════════════════════
   CUSTOM CONFIRM MODAL
   ══════════════════════════════════════════════════════════════ */
.prwa-confirm-overlay {
  position: fixed; inset: 0; z-index: 999995; /* above modals (999990) but below toast (9999999) */
  background: rgba(9,17,31,.55); backdrop-filter: blur(3px);
  display: flex; align-items: center; justify-content: center; padding: 20px;
  opacity: 0; transition: opacity .2s;
}
.prwa-confirm-overlay.is-visible { opacity: 1; }
.prwa-confirm-box {
  background: #fff; border-radius: 24px;
  padding: 32px 28px 24px;
  max-width: 380px; width: 100%;
  box-shadow: 0 24px 64px rgba(0,0,0,.22);
  transform: translateY(8px); transition: transform .2s;
  text-align: center;
}
.prwa-confirm-overlay.is-visible .prwa-confirm-box { transform: translateY(0); }
.prwa-confirm-icon {
  display: flex; justify-content: center; margin-bottom: 16px;
}
.prwa-confirm-icon svg {
  background: #fff5f5; border-radius: 50%; padding: 10px;
  box-sizing: content-box;
}
.prwa-confirm-msg {
  font-size: 16px; font-weight: 700; color: #10213f;
  margin: 0 0 24px; line-height: 1.4;
}
.prwa-confirm-btns {
  display: flex; gap: 10px; justify-content: center;
}
.prwa-confirm-btns .prwa-btn {
  width: auto; padding: 12px 28px; min-height: 44px; font-size: 14px;
}
.prwa-btn-danger {
  background: linear-gradient(170deg, #ef4444, #dc2626) !important;
}
.prwa-btn-danger:hover { opacity: .9; }

/* ── Input with suffix (€ / %) ─────────────────────────────── */
.prwa-input-suffix-wrap {
  position: relative; display: flex; align-items: center;
}
.prwa-input-suffix-wrap .prwa-input {
  padding-right: 40px;
}
.prwa-input-suffix {
  position: absolute; right: 14px;
  font-size: 14px; font-weight: 700; color: var(--prwa-muted);
  pointer-events: none;
}

/* ── Upload overlay + cancel button ─────────────────────────── */
#prwa-root .prwa-photo-uploading {
  position: absolute; inset: 0;
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(2px);
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
  border-radius: inherit; z-index: 5;
  overflow: hidden;
}
/* Shimmer sweep over the upload overlay */
#prwa-root .prwa-photo-uploading::before {
  content: ''; position: absolute; inset: 0; z-index: 0;
  background: linear-gradient(110deg, transparent 25%, rgba(24,182,82,.15) 45%, rgba(24,182,82,.30) 50%, rgba(24,182,82,.15) 55%, transparent 75%);
  background-size: 300% 100%;
  animation: prwa-upload-shimmer 1.4s ease-in-out infinite;
}
@keyframes prwa-upload-shimmer {
  0%   { background-position: 300% 0; }
  100% { background-position: -300% 0; }
}
/* Pulsing ring spinner instead of plain circle */
#prwa-root .prwa-photo-uploading .prwa-spinner {
  width: 26px; height: 26px;
  border-width: 2.5px;
  border-color: rgba(24,182,82,.2);
  border-top-color: var(--prwa-accent);
  position: relative; z-index: 1;
}
#prwa-root .prwa-upload-cancel-btn {
  background: none; border: none; padding: 0;
  color: #94a3b8; cursor: pointer; line-height: 1;
  display: flex; align-items: center; justify-content: center;
  transition: color .15s; position: relative; z-index: 1;
}
#prwa-root .prwa-upload-cancel-btn:hover { color: #dc2626; }
/* Pending thumb subtle pulse border */
#prwa-root .prwa-photo-thumb[data-pending="1"] {
  border-color: var(--prwa-accent);
  box-shadow: 0 0 0 2px rgba(24,182,82,.15);
  animation: prwa-pending-pulse 1.8s ease-in-out infinite;
}
@keyframes prwa-pending-pulse {
  0%, 100% { box-shadow: 0 0 0 2px rgba(24,182,82,.15); }
  50%      { box-shadow: 0 0 0 4px rgba(24,182,82,.25); }
}

/* ── XML Feed modal — form layout ─────────────────────────── */
/* Cuerpo del modal: scroll interno, padding consistente con el resto */
#prwa-root .prwa-modal .prwa-modal-body {
  flex: 1; overflow-y: auto;
  padding: 24px 28px;
  display: flex; flex-direction: column; gap: 0;
}
/* Fila de campo individual — igual que .prwa-field */
#prwa-root .prwa-form-row {
  display: flex; flex-direction: column; gap: 5px;
  margin-bottom: 16px;
}
#prwa-root .prwa-form-row:last-of-type { margin-bottom: 0; }
#prwa-root .prwa-form-row > label {
  font-size: 13px; font-weight: 600; color: var(--prwa-text);
}
/* Asterisco de campo obligatorio */
#prwa-root .prwa-required {
  color: #ef4444; margin-left: 2px; font-style: normal;
}
/* Texto de ayuda bajo el campo */
#prwa-root .prwa-field-hint {
  font-size: 12px; color: var(--prwa-muted); margin-top: 2px; line-height: 1.4;
}
/* Fila toggle: label texto a la izquierda, switch a la derecha */
#prwa-root .prwa-form-row.prwa-toggle-row {
  flex-direction: row; align-items: center;
  justify-content: space-between; gap: 12px;
}
/* Solo el label de texto crece; el .prwa-toggle nunca */
#prwa-root .prwa-form-row.prwa-toggle-row > label:first-child {
  flex: 1; font-size: 14px; font-weight: 500; margin-bottom: 0;
}
#prwa-root .prwa-form-row.prwa-toggle-row > label.prwa-toggle {
  flex-shrink: 0; width: 44px;
}

/* ── XML Feeds section — same card as properties ─────────── */
#prwa-root #prwa-section-feeds {
  width: 100%;
  min-width: 0;
  background: var(--prwa-card);
  border: 1px solid var(--prwa-border);
  border-radius: var(--prwa-radius);
  box-shadow: 0 4px 20px rgba(15,23,42,.06);
  padding: var(--prwa-pad);
  position: relative;
}
/* Top accent line removed */

/* ── Feed config table — identical to prwa-prop-table-wrap ── */
#prwa-root .prwa-feed-table-wrap {
  overflow-x: auto;
  border-radius: 18px;
  border: 1px solid var(--prwa-border);
  box-shadow: 0 4px 16px rgba(15,23,42,.05);
  background: #fff;
  -webkit-overflow-scrolling: touch;
  position: relative;
}
/* Top accent line removed */

#prwa-root .prwa-feed-table {
  width: 100%; border-collapse: separate; border-spacing: 0;
  min-width: 960px;
  font-size: 13.5px;
}
/* Cabecera — identical to prwa-prop-table */
#prwa-root .prwa-feed-table thead th {
  padding: 13px 14px; text-align: center;
  font-size: 11px; color: #4a6b94;
  text-transform: uppercase; letter-spacing: .09em; font-weight: 800;
  white-space: nowrap; background: linear-gradient(180deg, #f6f8fb, #f9fafb);
  border-bottom: 1px solid #e5e9ef; border-right: 1px solid #eef1f5;
}
#prwa-root .prwa-feed-table thead th:first-child { border-radius: 16px 0 0 0; }
#prwa-root .prwa-feed-table thead th:last-child  { border-radius: 0 16px 0 0; border-right: none; }
/* Anchos columnas feed */
#prwa-root .prwa-fth-status  { width: 80px;  min-width: 70px; }
#prwa-root .prwa-fth-name    { width: auto;  min-width: 220px; text-align: left; }
#prwa-root .prwa-fth-format  { width: 90px;  min-width: 78px; }
#prwa-root .prwa-fth-mode    { width: 130px; min-width: 110px; }
#prwa-root .prwa-fth-sync    { width: 110px; min-width: 95px; }
#prwa-root .prwa-fth-props   { width: 100px; min-width: 85px; }
#prwa-root .prwa-fth-stats   { width: 120px; min-width: 100px; }
#prwa-root .prwa-fth-actions { width: 180px; min-width: 160px; }

/* Celdas — identical to prwa-prop-table */
#prwa-root .prwa-feed-table tbody td {
  padding: 15px 16px; border-bottom: 1px solid #e8eff8;
  border-right: 1px solid #eef3fa; color: var(--prwa-text);
  vertical-align: middle; background: #fff;
  transition: background .15s, box-shadow .15s;
  text-align: center;
}
#prwa-root .prwa-feed-table tbody td:last-child { border-right: none; }
#prwa-root .prwa-feed-table tbody tr:last-child td { border-bottom: none; }
#prwa-root .prwa-feed-table tbody tr:last-child td:first-child { border-radius: 0 0 0 16px; }
#prwa-root .prwa-feed-table tbody tr:last-child td:last-child  { border-radius: 0 0 16px 0; }
#prwa-root .prwa-feed-table tbody tr:hover td { background: #f0f4ff; }
#prwa-root .prwa-feed-table tbody tr:nth-child(even) td { background: #f8fafc; }
#prwa-root .prwa-feed-table tbody tr:nth-child(even):hover td { background: #f0f4ff; }

/* Nombre — left-aligned, dos líneas */
#prwa-root .prwa-ftd-name { text-align: left; }
#prwa-root .prwa-ftd-name .prwa-ptrow-name { display: block; font-weight: 700; font-size: 13px; }
#prwa-root .prwa-ftd-name .prwa-ptrow-addr {
  display: block; margin-top: 2px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 240px;
  font-size: 11px;
}

/* Tags de formato y modo */
#prwa-root .prwa-tipo-tag--auto {
  background: #e6f4ea; border-color: #b7e4c7; color: #1e7e34;
}
#prwa-root .prwa-tipo-tag--manual {
  background: #f1f5f9; border-color: #e2e8f0; color: #64748b;
}
/* Tags de formato específicos */
#prwa-root .prwa-tipo-tag--kyero {
  background: #eff6ff; border-color: #bfdbfe; color: #1d4ed8;
}
#prwa-root .prwa-tipo-tag--idealista {
  background: #fef9ee; border-color: #fde68a; color: #b45309;
}
#prwa-root .prwa-tipo-tag--generic {
  background: #f5f5f5; border-color: #e5e5e5; color: #737373;
}

/* Propiedades vinculadas */
#prwa-root .prwa-ftd-props strong {
  font-size: 14px; font-weight: 800; color: var(--prwa-text);
}

/* Fecha sync */
#prwa-root .prwa-feed-sync-date {
  font-size: 12.5px; color: var(--prwa-muted); font-weight: 600;
}

/* Stats row dentro de celda */
#prwa-root .prwa-feed-stats-row {
  display: inline-flex; align-items: center; gap: 5px;
}

/* Feed stats (reutilizados) */
#prwa-root .prwa-xml-stat {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 11px; font-weight: 600;
  padding: 1px 6px; border-radius: 4px;
}
#prwa-root .prwa-xml-stat svg { flex-shrink: 0; }
#prwa-root .prwa-xml-stat--new { background: #e6f4ea; color: #1e7e34; }
#prwa-root .prwa-xml-stat--upd { background: #e8f0fe; color: #1a73e8; }
#prwa-root .prwa-xml-stat--del { background: #fdecea; color: #c0392b; }

/* Error tag */
#prwa-root .prwa-xml-feed-error-tag {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 11px; font-weight: 600;
  background: #fdecea; color: #c0392b;
  padding: 1px 6px; border-radius: 4px; cursor: help;
  margin-top: 3px;
}

/* btn-inline: small auto-width button for notices & empty states */
#prwa-root .prwa-btn-inline { width: auto !important; }

/* ══════════════════════════════════════════════════════════
   Feed Properties Table — same as properties, subtle
   blue-tinted background to indicate synced
   ══════════════════════════════════════════════════════════ */
/* Feed properties table — fewer columns, narrower min-width */
#prwa-root .prwa-prop-table.prwa-feed-props-table { min-width: 1100px; }
#prwa-root .prwa-feed-props-table .prwa-th-acciones { width: 52px; min-width: 48px; }
/* Ensure feed props wrapper scrolls properly inside feeds section */
#prwa-root .prwa-feed-props-wrap {
  overflow-x: scroll;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  scrollbar-width: auto;
  scrollbar-color: #8a9bb5 #eef1f5;
}
#prwa-root .prwa-feed-props-wrap::-webkit-scrollbar { width: 10px; height: 12px; }
#prwa-root .prwa-feed-props-wrap::-webkit-scrollbar-track { background: #eef1f5; }
#prwa-root .prwa-feed-props-wrap::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #97aabe, #7e95ad);
  border-radius: 6px; border: 2px solid #eef1f5;
}
#prwa-root .prwa-feed-props-wrap::-webkit-scrollbar-thumb:hover { background: #6882a0; }

/* Feed property rows — very subtle blue tint on all cells */
#prwa-root .prwa-feed-prop-row td {
  background: #f6f9ff;
}
#prwa-root .prwa-feed-prop-row:hover td {
  background: #edf2ff;
}
#prwa-root .prwa-feed-prop-row:nth-child(even) td {
  background: #f0f5ff;
}
#prwa-root .prwa-feed-prop-row:nth-child(even):hover td {
  background: #edf2ff;
}
/* Locked cursor on feed rows */
#prwa-root .prwa-feed-prop-row {
  cursor: default;
}
/* Detach button — red style */
#prwa-root .prwa-ptrow-btn--detach {
  color: #dc2626; border-color: #fecaca; background: #fff5f5;
}
#prwa-root .prwa-ptrow-btn--detach:hover {
  color: #fff; background: #dc2626; border-color: #dc2626;
}
/* Reattach button — blue style */
#prwa-root .prwa-ptrow-btn--reattach {
  color: #2563eb; border-color: #93c5fd; background: #eff6ff;
}
#prwa-root .prwa-ptrow-btn--reattach:hover {
  color: #fff; background: #2563eb; border-color: #2563eb;
}

/* ── Mobile cards for feeds (≤768px) ─────────────────────────── */
@media (max-width: 768px) {
  #prwa-root .prwa-feed-table-wrap { display: none; }
  #prwa-root .prwa-feed-cards { display: flex !important; }
}
#prwa-root .prwa-feed-cards {
  display: none; flex-direction: column; gap: 10px; padding: 16px;
}

/* ── Barra de plan horizontal en sección Feeds ──────────────── */
#prwa-root .prwa-feeds-plan-bar {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  padding: 12px 18px; border-radius: 12px;
  background: linear-gradient(135deg, #f0f5ff, #f8fafc);
  border: 1px solid var(--prwa-border);
  box-shadow: none;
  margin-bottom: 16px;
}
#prwa-root .prwa-fpb-badge {
  font-size: 11px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  background: var(--prwa-accent); color: #fff;
  padding: 3px 10px; border-radius: 20px; flex-shrink: 0;
}
/* ── Free — gris suave, invita a mejorar ── */
#prwa-root .prwa-fpb-badge--free {
  background: #f1f5f9; color: #64748b;
  border: 1.5px solid #cbd5e1;
  box-shadow: none; font-weight: 700;
}
/* ── Basic — fallback a free para usuarios legacy ── */
#prwa-root .prwa-fpb-badge--basic {
  background: #f1f5f9; color: #64748b;
  border: 1.5px solid #cbd5e1;
  box-shadow: none;
}
/* ── Pro — verde accent del diseño ── */
#prwa-root .prwa-fpb-badge--pro {
  background: linear-gradient(135deg, var(--prwa-accent) 0%, #15a34a 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(24,182,82,.35);
  text-shadow: 0 1px 1px rgba(0,0,0,.1);
}
/* ── Premium — dorado elegante ── */
#prwa-root .prwa-fpb-badge--premium {
  background: linear-gradient(135deg, #92400e 0%, #b45309 40%, #d97706 70%, #f59e0b 100%);
  color: #fff;
  box-shadow: 0 2px 10px rgba(180,83,9,.4);
  text-shadow: 0 1px 2px rgba(0,0,0,.2);
}
#prwa-root .prwa-fpb-stats {
  display: flex; align-items: center; gap: 7px; flex-wrap: wrap; flex: 1; min-width: 0;
}
#prwa-root .prwa-fpb-stat {
  font-size: 12px; color: var(--prwa-muted); white-space: nowrap;
}
#prwa-root .prwa-fpb-stat strong { color: var(--prwa-text); font-size: 13px; }
#prwa-root .prwa-fpb-stat--accent strong { color: var(--prwa-accent); }
#prwa-root .prwa-fpb-sep { color: #93b4e8; font-size: 11px; flex-shrink: 0; }
#prwa-root .prwa-fpb-xml-ok  { color: var(--prwa-accent); font-weight: 700; font-size: 12px; }
#prwa-root .prwa-fpb-xml-no  { color: #94a3b8; font-weight: 600; font-size: 12px; }
#prwa-root .prwa-fpb-bar-wrap {
  display: flex; align-items: center; gap: 8px; flex-shrink: 0;
}
#prwa-root .prwa-fpb-bar-track {
  width: 100px; height: 6px; border-radius: 3px;
  background: #e2e8f0; overflow: hidden;
}
#prwa-root .prwa-fpb-bar-fill {
  height: 100%; background: var(--prwa-accent); border-radius: 3px; transition: width .3s;
}
#prwa-root .prwa-fpb-bar-fill.is-warn   { background: #f59e0b; }
#prwa-root .prwa-fpb-bar-fill.is-danger { background: #ef4444; }
#prwa-root .prwa-fpb-bar-label {
  font-size: 11px; font-weight: 700; color: var(--prwa-muted); flex-shrink: 0;
}
@media (max-width: 600px) {
  #prwa-root .prwa-feeds-plan-bar { flex-direction: column; align-items: flex-start; gap: 8px; }
  #prwa-root .prwa-fpb-bar-track  { width: 100%; }
  #prwa-root .prwa-fpb-bar-wrap   { width: 100%; }
}
#prwa-root .prwa-status-dot {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 12px; font-weight: 600;
  padding: 2px 8px; border-radius: 20px;
}
#prwa-root .prwa-status-dot::before {
  content: ''; width: 7px; height: 7px; border-radius: 50%; display: inline-block;
}
#prwa-root .prwa-status-dot--active  { background:#e6f4ea; color:#1e7e34; }
#prwa-root .prwa-status-dot--active::before  { background:#1e7e34; }
#prwa-root .prwa-status-dot--warning { background:#fff8e1; color:#b45309; }
#prwa-root .prwa-status-dot--warning::before { background:#f59e0b; }
#prwa-root .prwa-status-dot--error   { background:#fdecea; color:#c0392b; }
#prwa-root .prwa-status-dot--error::before   { background:#c0392b; }
#prwa-root .prwa-status-dot--draft   { background:#f5f5f5; color:#777; }
#prwa-root .prwa-status-dot--draft::before   { background:#bbb; }

/* ── XML Preview check ─────────────────────────────────────── */
#prwa-root .prwa-xml-preview-check {
  width: 18px; height: 18px; accent-color: var(--prwa-accent); cursor: pointer;
}

/* ── XML radio group & toggle ──────────────────────────────── */
#prwa-root .prwa-radio-group {
  display: flex; flex-direction: column; gap: 8px; margin-top: 6px;
}
#prwa-root .prwa-radio-opt {
  display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 14px;
}
#prwa-root .prwa-radio-opt input { accent-color: var(--prwa-accent); }
#prwa-root .prwa-toggle-row {
  display: flex; align-items: center; justify-content: space-between;
}
#prwa-root .prwa-toggle {
  position: relative; display: inline-block; width: 44px; height: 24px; cursor: pointer;
}
#prwa-root .prwa-toggle input { opacity: 0; width: 0; height: 0; }
#prwa-root .prwa-toggle-track {
  position: absolute; inset: 0; background: #cdd5e0; border-radius: 12px;
  transition: background .2s;
}
#prwa-root .prwa-toggle-track::after {
  content: ''; position: absolute; left: 3px; top: 3px;
  width: 18px; height: 18px; background: #fff; border-radius: 50%;
  transition: transform .2s; box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
#prwa-root .prwa-toggle input:checked + .prwa-toggle-track { background: var(--prwa-accent); }
#prwa-root .prwa-toggle input:checked + .prwa-toggle-track::after { transform: translateX(20px); }

/* ── XML badge in property table ───────────────────────────── */
#prwa-root .prwa-xml-badge {
  display: inline-flex; align-items: center; gap: 3px;
  font-size: 10px; font-weight: 700; padding: 2px 6px;
  border-radius: 4px; letter-spacing: .03em; white-space: nowrap;
}
#prwa-root .prwa-xml-badge--linked {
  background: #e8f0fe; color: #1a73e8;
}
/* ── XML status banners in edit modal ──────────────────────── */
#prwa-root .prwa-xml-status-banner {
  display: flex !important; flex-direction: row !important;
  align-items: center; gap: 12px;
  padding: 14px 20px; margin: 0;
  border-bottom: 1px solid transparent;
  border-radius: 0;
  font-size: 13px; width: 100%; box-sizing: border-box;
  writing-mode: horizontal-tb !important;
  flex-shrink: 0; overflow: hidden; flex-wrap: wrap;
}
#prwa-root .prwa-xml-banner-icon {
  width: 38px; height: 38px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  border-radius: 10px; font-size: 18px; line-height: 1;
  writing-mode: horizontal-tb;
}
#prwa-root .prwa-xml-banner-body {
  flex: 1; display: flex; flex-direction: column; gap: 2px;
  min-width: 0; overflow: hidden;
  writing-mode: horizontal-tb;
}
#prwa-root .prwa-xml-banner-body strong {
  font-size: 13px; font-weight: 700;
  display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
#prwa-root .prwa-xml-banner-body span {
  font-size: 12px; opacity: .8; line-height: 1.4;
  display: block; overflow: hidden;
}
#prwa-root .prwa-xml-banner-action {
  flex-shrink: 0; white-space: nowrap;
  padding: 8px 16px; border-radius: 8px; font-size: 12px; font-weight: 700;
  cursor: pointer; transition: all .15s;
}
/* Synced variant — blue */
#prwa-root .prwa-xml-status-banner--synced {
  background: linear-gradient(135deg, #eef3ff, #e8f0fe); border-color: #c5d9fb; color: #1a55c8;
}
#prwa-root .prwa-xml-status-banner--synced .prwa-xml-banner-icon {
  background: rgba(26,85,200,.12);
}
#prwa-root .prwa-xml-status-banner--synced .prwa-xml-banner-action {
  background: #fff; border: 1.5px solid #1a55c8; color: #1a55c8;
}
#prwa-root .prwa-xml-status-banner--synced .prwa-xml-banner-action:hover {
  background: #1a55c8; color: #fff;
}
/* Manual variant — amber */
#prwa-root .prwa-xml-status-banner--manual {
  background: linear-gradient(135deg, #fffbeb, #fef3c7); border-color: #fde68a; color: #92400e;
}
#prwa-root .prwa-xml-status-banner--manual .prwa-xml-banner-icon {
  background: rgba(217,119,6,.12);
}
#prwa-root .prwa-xml-status-banner--manual .prwa-xml-banner-body strong { color: #92400e; }
#prwa-root .prwa-xml-status-banner--manual .prwa-xml-banner-action {
  background: #fff; border: 1.5px solid #d97706; color: #d97706;
}
#prwa-root .prwa-xml-status-banner--manual .prwa-xml-banner-action:hover {
  background: #d97706; color: #fff;
}
/* Keep locked form state */
#prwa-root .prwa-edit-form--locked .prwa-edit-panel {
  pointer-events: none; opacity: .7;
}
/* Fotos tab: view photos + set cover only */
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="fotos"] {
  pointer-events: auto; opacity: 1;
}
#prwa-root .prwa-edit-form--locked .prwa-upload-zone { display: none !important; }
#prwa-root .prwa-edit-form--locked .prwa-bulk-toolbar { display: none !important; }
#prwa-root .prwa-edit-form--locked .prwa-photo-select-check { display: none !important; }
#prwa-root .prwa-edit-form--locked .prwa-thumb-btn--delete { display: none !important; }
/* Básico tab: only status select is interactive */
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="basico"] {
  pointer-events: auto; opacity: 1;
}
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="basico"] .prwa-field {
  pointer-events: none; opacity: .55;
}
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="basico"] .prwa-field:has(select[name="status"]),
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="basico"] .prwa-field:has(textarea[name="observations"]),
#prwa-root .prwa-edit-form--locked .prwa-edit-panel[data-panel="basico"] .prwa-notes-ai-section {
  pointer-events: auto; opacity: 1;
}
/* Free badge - rename to manual */
#prwa-root .prwa-xml-badge--free {
  background: #fff7ed; color: #c2410c; border: 1px solid #fed7aa;
}

/* ════════════════════════════════════════════════════════════
   XML FEED MODAL — Small dialog form
   ════════════════════════════════════════════════════════════ */
#prwa-xml-feed-modal .prwa-modal-dialog--sm { max-width: 540px; }
#prwa-xml-feed-modal form { display: flex; flex-direction: column; flex: 1; min-height: 0; }
#prwa-root .prwa-xml-form-body {
  flex: 1; overflow-y: auto; padding: 24px 28px;
  display: flex; flex-direction: column; gap: 16px;
}
#prwa-root .prwa-xml-toggles-section {
  border: 1px solid var(--prwa-border); border-radius: 14px;
  overflow: hidden;
}
#prwa-root .prwa-xml-toggles-section .prwa-form-row.prwa-toggle-row {
  margin-bottom: 0; padding: 12px 16px;
  border-bottom: 1px solid var(--prwa-border);
}
#prwa-root .prwa-xml-toggles-section .prwa-form-row.prwa-toggle-row:last-of-type {
  border-bottom: none;
}
#prwa-root .prwa-xml-toggles-section .prwa-field {
  padding: 12px 16px; border-top: 1px solid var(--prwa-border); margin-bottom: 0;
}

/* ════════════════════════════════════════════════════════════
   XML PREVIEW MODAL — Wide dialog table
   ════════════════════════════════════════════════════════════ */
#prwa-root .prwa-xml-preview-body {
  flex: 1; min-height: 0; overflow: hidden;
  padding: 0;
  display: flex; flex-direction: column;
}
#prwa-root .prwa-xml-preview-loading {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 60px 20px; gap: 12px;
}
#prwa-root .prwa-xml-preview-loading p { color: var(--prwa-muted); font-size: 14px; margin: 0; }
#prwa-root .prwa-xml-preview-count-label { font-size: 13px; color: var(--prwa-muted); }

/* Preview — fixed-height children stay at top */
#prwa-root .prwa-xml-preview-body > .prwa-search-bar,
#prwa-root .prwa-xml-preview-body > #prwa-xml-selected-top {
  flex-shrink: 0;
}
/* Preview — make .prwa-table-outer a flex child so height is constrained */
#prwa-root #prwa-xml-preview-modal .prwa-table-outer {
  flex: 1; min-height: 0;
  display: flex !important; flex-direction: column;
}
#prwa-root #prwa-xml-preview-modal .prwa-dual-scroll-top {
  flex-shrink: 0;
}

/* Preview table — both scrollbars always visible */
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap {
  flex: 1; min-height: 0;
  overflow: scroll !important;
  scrollbar-width: auto !important;
  scrollbar-color: #7b93a8 #dde3ea !important;
  scrollbar-gutter: stable both-edges;
  border-radius: 0 !important;
}
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar {
  width: 12px !important; height: 14px !important;
  display: block !important;
}
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-track {
  background: #dde3ea !important;
}
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #8a9bb5, #6e869e) !important;
  border-radius: 7px !important; border: 2px solid #dde3ea !important;
  min-height: 40px !important; min-width: 40px !important;
}
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-thumb:hover {
  background: #5a7490 !important;
}
#prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-corner {
  background: #dde3ea !important;
}

/* Preview table */
#prwa-root .prwa-xml-preview-table {
  width: 100%; border-collapse: collapse;
}
#prwa-root .prwa-xml-preview-table thead th {
  padding: 10px 16px; background: var(--prwa-bg);
  font-size: 11px; font-weight: 800; color: var(--prwa-muted);
  text-transform: uppercase; letter-spacing: .06em;
  border-bottom: 1px solid var(--prwa-border);
  text-align: left; white-space: nowrap;
  position: sticky; top: 0; z-index: 1;
}
#prwa-root .prwa-xml-preview-table tbody tr {
  border-bottom: 1px solid var(--prwa-border);
  transition: background .12s;
}
#prwa-root .prwa-xml-preview-table tbody tr:hover { background: var(--prwa-bg); }
#prwa-root .prwa-xml-preview-table tbody tr.is-imported {
  background: #f8fdf9; opacity: .75;
}
#prwa-root .prwa-xml-preview-table tbody tr.is-duplicate {
  background: #fffbeb; opacity: .85;
}
/* Badges en preview */
#prwa-root .prwa-xml-preview-badge {
  display: inline-block; padding: 2px 8px; border-radius: 10px;
  font-size: 10.5px; font-weight: 700; margin-left: 8px;
  vertical-align: middle; line-height: 1.5; white-space: nowrap;
}
#prwa-root .prwa-xml-badge-imported {
  background: #dcfce7; color: #16a34a; border: 1px solid #bbf7d0;
}
#prwa-root .prwa-xml-badge-duplicate {
  background: #fef3c7; color: #b45309; border: 1px solid #fde68a;
  cursor: help;
}
#prwa-root .prwa-xml-preview-table td {
  padding: 10px 16px; font-size: 13px; vertical-align: middle;
}
/* Thumb wrapper — fixed dimensions so WP's img { height: auto } can't stretch it */
#prwa-root .prwa-xml-preview-thumb-wrap {
  width: 64px; height: 48px; border-radius: 8px; overflow: hidden; flex-shrink: 0;
  background: var(--prwa-bg); border: 1px solid var(--prwa-border);
}
#prwa-root .prwa-xml-preview-thumb {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
#prwa-root .prwa-xml-preview-thumb-placeholder {
  width: 64px; height: 48px; border-radius: 8px;
  background: var(--prwa-bg); border: 1px solid var(--prwa-border);
  display: flex; align-items: center; justify-content: center;
  color: var(--prwa-muted); font-size: 18px;
}

/* ── Preview modal — mobile overrides ──────────────────── */
@media (max-width: 768px) {
  /* Force table-outer visible + flex inside preview modal */
  #prwa-root #prwa-xml-preview-modal .prwa-table-outer {
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex: 1 1 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  /* Full-height bottom-sheet */
  #prwa-root #prwa-xml-preview-modal {
    padding: 0 !important;
    align-items: flex-end !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-modal-backdrop {
    background: rgba(0,0,0,.5);
  }
  #prwa-root #prwa-xml-preview-modal .prwa-modal-dialog {
    max-width: 100% !important;
    width: 100% !important;
    height: 94vh !important;
    max-height: 94vh !important;
    border-radius: 20px 20px 0 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-modal-head {
    padding: 14px 16px 10px;
    flex-shrink: 0;
    border-bottom: 1px solid var(--prwa-border);
  }
  #prwa-root #prwa-xml-preview-modal .prwa-xml-preview-body {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    -webkit-overflow-scrolling: touch;
    display: flex !important;
    flex-direction: column !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-modal-footer {
    padding: 10px 12px;
    gap: 8px;
    flex-wrap: wrap;
    flex-shrink: 0;
    border-top: 1px solid var(--prwa-border);
    background: #fff;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-modal-footer .prwa-btn {
    font-size: 13px; padding: 10px 16px;
  }

  /* Search bar inside preview */
  #prwa-root #prwa-xml-preview-modal .prwa-search-bar {
    margin: 0 !important;
    padding: 10px 12px !important;
    gap: 6px;
    flex-shrink: 0 !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-search-input-wrap {
    min-width: 0 !important;
    width: 100% !important;
    height: 42px;
    overflow: hidden;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-search-divider { display: none !important; }
  #prwa-root #prwa-xml-preview-modal .prwa-filter-wrap { display: none !important; }

  /* Table container — MUST scroll both directions, scrollbars always visible */
  #prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap {
    overflow: scroll !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: auto !important;
    scrollbar-color: #8a9bb5 #eef1f5 !important;
    flex: 1 1 0 !important;
    min-height: 0 !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar {
    display: block !important;
    height: 10px !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-track {
    background: #eef1f5 !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-prop-table-wrap::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #97aabe, #7e95ad) !important;
    border-radius: 6px !important; border: 2px solid #eef1f5 !important;
  }
  #prwa-root #prwa-xml-preview-modal .prwa-xml-preview-table {
    min-width: 900px !important;
  }
  /* Hide dual scroll on mobile (native scrollbar instead) */
  #prwa-root #prwa-xml-preview-modal .prwa-dual-scroll-top {
    display: none !important;
  }
}

/* ── Thumbnail loading state in property table ───────────── */
#prwa-root .prwa-ptrow-thumb.is-loading::after {
  content: '';
  position: absolute; inset: 0;
  border-radius: 8px;
  background: linear-gradient(110deg, transparent 25%, rgba(24,182,82,.12) 40%, rgba(24,182,82,.28) 50%, rgba(24,182,82,.12) 60%, transparent 75%);
  background-size: 300% 100%;
  animation: prwa-shimmer 1.4s ease-in-out infinite;
  z-index: 2;
  pointer-events: none;
}
#prwa-root .prwa-thumb-skeleton {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  background: #e8eef4;
  border-radius: 8px;
  z-index: 1;
}
/* Card thumb loading shimmer */
#prwa-root .prwa-card-thumb.is-loading {
  position: relative; overflow: hidden;
}
#prwa-root .prwa-card-thumb.is-loading::after {
  content: ''; position: absolute; inset: 0; border-radius: 10px;
  background: linear-gradient(110deg, transparent 25%, rgba(24,182,82,.12) 40%, rgba(24,182,82,.28) 50%, rgba(24,182,82,.12) 60%, transparent 75%);
  background-size: 300% 100%;
  animation: prwa-shimmer 1.4s ease-in-out infinite;
  z-index: 2; pointer-events: none;
}
#prwa-root .prwa-card-thumb.is-loading img { opacity: .5; }

/* Card thumb uploading spinner (XML feed import) */
#prwa-root .prwa-card-thumb.prwa-card-thumb--uploading { position: relative; }
#prwa-root .prwa-card-thumb.prwa-card-thumb--uploading img { opacity: .4; }
#prwa-root .prwa-card-thumb.prwa-card-thumb--uploading::before {
  content: ''; position: absolute; inset: 0; border-radius: 10px;
  background: rgba(255,255,255,.55); z-index: 2; pointer-events: none;
}
#prwa-root .prwa-card-thumb.prwa-card-thumb--uploading::after {
  content: '';
  position: absolute; top: 50%; left: 50%;
  width: 28px; height: 28px; margin-top: -14px; margin-left: -14px;
  border-radius: 50%;
  border: 2.5px solid rgba(59,91,219,.2);
  border-top-color: #3b5bdb;
  animation: prwa-spin .75s linear infinite;
  z-index: 3; pointer-events: none;
}

@keyframes prwa-shimmer {
  0%   { background-position: 300% 0; }
  100% { background-position: -300% 0; }
}

/* ════════════════════════════════════════════════════════════
   PHOTO UPLOAD PENDING — animation on property rows/cards
   ════════════════════════════════════════════════════════════ */
@keyframes prwa-pulse-photos {
  0%, 100% { opacity: 1; }
  50%       { opacity: .55; }
}
#prwa-root .prwa-photos-pending-badge {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 3px 9px; border-radius: 20px;
  background: #f0f4ff; border: 1px solid #c7d7fd;
  color: #3b5bdb; font-size: 11px; font-weight: 700;
  animation: prwa-pulse-photos 1.8s ease-in-out infinite;
}

/* ── Upload badge bajo la miniatura (thumbnail cell) ─────── */
#prwa-root .prwa-upload-badge {
  display: flex; align-items: center; justify-content: center; gap: 3px;
  margin-top: 5px; line-height: 1;
  color: #3b5bdb;
  background: #eef2ff; border: 1px solid #c7d7fd;
  border-radius: 20px; padding: 3px 8px;
  white-space: nowrap; font-size: 11px;
  animation: prwa-pulse-photos 1.8s ease-in-out infinite;
}
#prwa-root .prwa-upload-badge svg { flex-shrink: 0; }
#prwa-root .prwa-up-count {
  font-size: 11px; font-weight: 900; letter-spacing: -.3px;
}
#prwa-root .prwa-up-label {
  font-size: 9px; font-weight: 600; opacity: .7;
}

/* ── Thumbnail en estado de subida de fotos ──────────────── */
#prwa-root .prwa-ptrow-thumb.prwa-photos-uploading { position: relative; }
#prwa-root .prwa-ptrow-thumb.prwa-photos-uploading img { opacity: .4; }
/* semi-transparent white wash */
#prwa-root .prwa-ptrow-thumb.prwa-photos-uploading::before {
  content: '';
  position: absolute; inset: 0; border-radius: 9px;
  background: rgba(255,255,255,.55);
  z-index: 2; pointer-events: none;
}
/* spinning ring overlay */
#prwa-root .prwa-ptrow-thumb.prwa-photos-uploading::after {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  width: 26px; height: 26px;
  margin-top: -13px; margin-left: -13px;
  border-radius: 50%;
  border: 2.5px solid rgba(59,91,219,.2);
  border-top-color: #3b5bdb;
  animation: prwa-spin .75s linear infinite;
  z-index: 3; pointer-events: none;
}

/* Photo upload progress banner inside edit modal photo panel (non-blocking) */
#prwa-root .prwa-photos-upload-banner {
  display: flex; align-items: center; gap: 10px;
  padding: 9px 14px; margin-bottom: 12px;
  background: #eef2ff; border: 1px solid #c7d7fd; border-radius: 10px;
  color: #3b5bdb; font-size: 13px; font-weight: 600;
  animation: prwa-pulse-photos 1.8s ease-in-out infinite;
}
#prwa-root .prwa-upload-banner-spin {
  width: 16px; height: 16px; flex-shrink: 0;
  border-radius: 50%;
  border: 2px solid rgba(59,91,219,.2);
  border-top-color: #3b5bdb;
  animation: prwa-spin .75s linear infinite;
}
#prwa-root .prwa-banner-count { font-weight: 400; font-size: 12px; opacity: .8; }
#prwa-root .prwa-photo-grid-wrap { position: relative; }

/* Import progress overlay in preview modal */
#prwa-root .prwa-xml-import-progress {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 48px 24px; gap: 16px; text-align: center;
}
#prwa-root .prwa-xml-import-progress-title {
  font-size: 16px; font-weight: 800; color: var(--prwa-text); margin: 0;
}
#prwa-root .prwa-xml-import-progress-sub {
  font-size: 13px; color: var(--prwa-muted); margin: 0; max-width: 340px; line-height: 1.5;
}
#prwa-root .prwa-xml-import-photo-bar {
  width: 100%; max-width: 300px; height: 6px; border-radius: 99px;
  background: var(--prwa-border); overflow: hidden;
}
#prwa-root .prwa-xml-import-photo-bar-fill {
  height: 100%; border-radius: 99px;
  background: var(--prwa-accent);
  animation: prwa-bar-indeterminate 1.5s ease-in-out infinite;
}
@keyframes prwa-bar-indeterminate {
  0%   { transform: translateX(-100%) scaleX(.4); }
  50%  { transform: translateX(60%)   scaleX(.7); }
  100% { transform: translateX(200%)  scaleX(.4); }
}

/* ── Feeds Group (desplegable único) ────────────────────── */
#prwa-root .prwa-feeds-group {
  border: 1.5px solid var(--prwa-border);
  border-radius: 14px; background: #fff;
  transition: box-shadow .2s, border-color .2s;
  overflow: hidden;
}
#prwa-root .prwa-feeds-group.is-open {
  box-shadow: 0 6px 24px rgba(15,36,71,.08);
  border-color: rgba(24,182,82,.3);
}
#prwa-root .prwa-feeds-group-toggle {
  display: flex; align-items: center; justify-content: space-between;
  width: 100%; padding: 16px 20px; border: none; background: linear-gradient(135deg, #f8fbf9 0%, #fff 100%);
  cursor: pointer; gap: 12px; transition: background .15s;
}
#prwa-root .prwa-feeds-group-toggle:hover { background: linear-gradient(135deg, #f0f7f2 0%, #fbfdfb 100%); }
#prwa-root .prwa-feeds-group-left {
  display: flex; align-items: center; gap: 12px; min-width: 0;
}
#prwa-root .prwa-feeds-group-icon-wrap {
  width: 40px; height: 40px; border-radius: 12px; flex-shrink: 0;
  background: linear-gradient(135deg, rgba(24,182,82,.12), rgba(24,182,82,.06));
  border: 1px solid rgba(24,182,82,.15);
  display: flex; align-items: center; justify-content: center;
  color: var(--prwa-accent);
}
#prwa-root .prwa-feeds-group-icon {
  color: var(--prwa-accent, #18b652); flex-shrink: 0;
}
#prwa-root .prwa-feeds-group-info {
  display: flex; flex-direction: column; gap: 2px;
}
#prwa-root .prwa-feeds-group-title {
  font-weight: 800; font-size: 15px; color: var(--prwa-text);
  display: flex; align-items: center; gap: 8px;
}
#prwa-root .prwa-feeds-group-usage {
  font-size: 12px; color: var(--prwa-muted); font-weight: 500;
}
#prwa-root .prwa-feeds-group-usage strong {
  color: var(--prwa-accent); font-weight: 700;
}
#prwa-root .prwa-feeds-group-count {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--prwa-accent, #18b652); color: #fff;
  font-size: 11px; font-weight: 700; min-width: 20px; height: 20px;
  border-radius: 10px; padding: 0 6px;
}
#prwa-root .prwa-feeds-group-right {
  display: flex; align-items: center; gap: 10px; flex-shrink: 0;
}
#prwa-root .prwa-feeds-limit-badge {
  font-size: 11px; font-weight: 700; color: #b45309;
  background: #fef3c7; border: 1px solid #fde68a;
  padding: 4px 10px; border-radius: 8px; white-space: nowrap;
}
#prwa-root .prwa-feeds-group-chevron {
  flex-shrink: 0; transition: transform .2s; color: var(--prwa-muted);
}
#prwa-root .prwa-feeds-group.is-open .prwa-feeds-group-chevron {
  transform: rotate(180deg);
}
#prwa-root .prwa-feeds-group-body {
  border-top: 1px solid var(--prwa-border);
  padding: 14px 18px;
  background: #fafbfc;
}
#prwa-root .prwa-feeds-group-body .prwa-feed-card + .prwa-feed-card {
  margin-top: 10px;
}

/* ── Feed Card (dentro del grupo) ──────────────────────── */
#prwa-root .prwa-feed-card {
  border: 1.5px solid var(--prwa-border);
  border-radius: 12px; padding: 14px 18px; background: #fff;
  transition: border-color .15s, box-shadow .2s, transform .15s;
}
#prwa-root .prwa-feed-card:hover {
  border-color: rgba(24,182,82,.3);
  box-shadow: 0 4px 14px rgba(15,36,71,.06);
  transform: translateY(-1px);
}
#prwa-root .prwa-feed-card-top {
  display: flex; align-items: center; justify-content: space-between;
  gap: 10px; flex-wrap: wrap;
}
#prwa-root .prwa-feed-card-info {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap; min-width: 0;
}
#prwa-root .prwa-feed-card-name {
  font-weight: 700; font-size: 14px; color: var(--prwa-text);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 240px;
}
#prwa-root .prwa-feed-card-props {
  font-size: 12px; color: var(--prwa-muted); font-weight: 600;
}
/* Green property count badge in feed card */
#prwa-root .prwa-feed-card-props-badge {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 11.5px; font-weight: 700; color: var(--prwa-accent);
  background: rgba(24,182,82,.08); border: 1px solid rgba(24,182,82,.18);
  padding: 3px 10px; border-radius: 8px; white-space: nowrap;
}
#prwa-root .prwa-feed-card-props-badge svg { stroke: var(--prwa-accent); }
#prwa-root .prwa-feed-card-actions {
  display: flex; align-items: center; gap: 6px; flex-shrink: 0;
}
#prwa-root .prwa-feed-card-meta {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  margin-top: 8px; padding-top: 8px; border-top: 1px dashed var(--prwa-border);
  font-size: 11.5px; color: var(--prwa-muted);
}
#prwa-root .prwa-feed-card-meta .prwa-ptrow-addr {
  max-width: 280px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  opacity: .7; font-size: 11px;
}
#prwa-root .prwa-feed-card-meta .prwa-feed-sync-date {
  font-weight: 600;
}
#prwa-root .prwa-feed-stats-inline {
  display: flex; align-items: center; gap: 6px;
}

/* ── Feed filter bar ──────────────────────────────────── */
#prwa-root .prwa-feed-filter-bar {
  margin: 10px 0 8px;
}
#prwa-root .prwa-feed-filter-bar .prwa-search-input-wrap {
  max-width: 400px;
}

/* ── Feed props table mobile ──────────────────────────── */
@media (max-width: 768px) {
  #prwa-root .prwa-feed-props-wrap {
    overflow-x: scroll; overflow-y: scroll; -webkit-overflow-scrolling: touch;
  }
  #prwa-root .prwa-feed-props-table {
    min-width: 900px;
  }
  #prwa-root .prwa-feeds-group-toggle { padding: 12px 14px; }
  #prwa-root .prwa-feeds-group-icon-wrap { width: 34px; height: 34px; border-radius: 10px; }
  #prwa-root .prwa-feeds-group-icon-wrap svg { width: 16px; height: 16px; }
  #prwa-root .prwa-feeds-group-body { padding: 10px 12px; background: #fafbfc; }
  #prwa-root .prwa-feed-card { padding: 12px 14px; }
  #prwa-root .prwa-feed-card-name { max-width: 160px; font-size: 13px; }
  #prwa-root .prwa-feed-card-actions { gap: 4px; }
  #prwa-root .prwa-feed-card-top { flex-direction: column; align-items: flex-start; }
  #prwa-root .prwa-feed-card-meta { font-size: 11px; }
  #prwa-root .prwa-feed-filter-bar .prwa-search-input-wrap { max-width: 100%; }
  #prwa-root .prwa-feeds-limit-badge { font-size: 10px; padding: 3px 8px; }
}

/* ══ FAB — Botón flotante (escritorio + móvil) ═══════════════════ */
#prwa-root .prwa-fab-wrap {
  position: fixed; bottom: 28px; right: 32px; z-index: 9990;
  transition: opacity .2s ease, transform .2s ease;
}
/* Ocultar FAB cuando la barra de selección múltiple está activa */
#prwa-root .prwa-fab-wrap.bulk-active {
  opacity: 0; pointer-events: none; transform: translateY(16px);
}
#prwa-root .prwa-fab-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  height: 48px; padding: 0 22px; border-radius: 24px;
  background: linear-gradient(135deg, var(--prwa-accent, #18b652) 0%, #15a34a 100%);
  color: #fff; border: none; font-size: 14px; font-weight: 700;
  box-shadow: 0 4px 18px rgba(24,182,82,.35), 0 1px 4px rgba(0,0,0,.08);
  cursor: pointer; transition: transform .2s, box-shadow .2s;
  white-space: nowrap; letter-spacing: .02em;
}
#prwa-root .prwa-fab-btn:hover {
  box-shadow: 0 6px 26px rgba(24,182,82,.5), 0 2px 8px rgba(0,0,0,.1);
  transform: translateY(-2px);
}
#prwa-root .prwa-fab-btn:active { transform: scale(.95); box-shadow: 0 2px 8px rgba(24,182,82,.3); }
#prwa-root .prwa-fab-icon { transition: transform .25s ease; }
#prwa-root .prwa-fab-wrap.is-open .prwa-fab-icon { transform: rotate(45deg); }
#prwa-root .prwa-fab-label { display: inline; }

#prwa-root .prwa-fab-menu {
  position: absolute; bottom: 60px; right: 0;
  display: flex; flex-direction: column; gap: 8px; align-items: flex-end;
  opacity: 0; pointer-events: none; transform: translateY(10px);
  transition: opacity .2s ease, transform .2s ease;
}
#prwa-root .prwa-fab-wrap.is-open .prwa-fab-menu {
  opacity: 1; pointer-events: auto; transform: translateY(0);
}
#prwa-root .prwa-fab-item:nth-child(1) { transition-delay: .05s; }
#prwa-root .prwa-fab-item:nth-child(2) { transition-delay: .1s; }
#prwa-root .prwa-fab-item {
  display: flex; align-items: center; gap: 10px;
  padding: 11px 18px; border-radius: 14px;
  background: #fff; color: var(--prwa-text, #10213f);
  border: 1.5px solid var(--prwa-border, #e2e8f0);
  box-shadow: 0 6px 20px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.06);
  font-size: 13px; font-weight: 700; white-space: nowrap;
  cursor: pointer; transition: background .15s, border-color .15s, box-shadow .15s, opacity .2s ease, transform .2s ease;
  opacity: 0; transform: translateY(8px);
}
#prwa-root .prwa-fab-wrap.is-open .prwa-fab-item {
  opacity: 1; transform: translateY(0);
}
#prwa-root .prwa-fab-item:hover {
  background: var(--prwa-accent-soft, #effbf3); border-color: var(--prwa-accent);
  box-shadow: 0 6px 20px rgba(24,182,82,.15), 0 1px 3px rgba(0,0,0,.06);
}
#prwa-root .prwa-fab-item:active { background: #e6f7ed; }
#prwa-root .prwa-fab-item svg { color: var(--prwa-accent, #18b652); flex-shrink: 0; }

#prwa-root .prwa-fab-backdrop {
  position: fixed; inset: 0; z-index: 9989;
  background: rgba(0,0,0,.12); backdrop-filter: blur(1px);
  animation: prwaFadeIn .15s ease;
}

/* ── FAB: ajustes responsive ──────────────────── */
@media (max-width: 768px) {
  #prwa-root .prwa-fab-wrap { bottom: 24px; right: 20px; }
  #prwa-root .prwa-fab-btn {
    width: 56px; height: 56px; padding: 0; border-radius: 50%;
  }
  #prwa-root .prwa-fab-label { display: none; }
  #prwa-root .prwa-fab-menu { bottom: 68px; }
}

/* ── Scroll shelf — barra flotante inferior ──────────────────── */
/* Contenedor: fondo de tarjeta, sin relleno llamativo */
#prwa-root .prwa-scroll-shelf {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  background: #dde3ea;
  border: 1px solid #c8d0da;
  border-radius: var(--prwa-radius-xs);
  z-index: 20;
}
/* La barra es sticky via JS (class is-fixed → position:fixed abajo) */
#prwa-root .prwa-scroll-shelf--top {
  box-shadow: 0 -4px 12px -2px rgba(15,33,63,.08);
}
#prwa-root .prwa-scroll-shelf--top.is-fixed {
  border-radius: var(--prwa-radius-xs);
  box-shadow: 0 -6px 18px -4px rgba(15,33,63,.18);
}
/* Flechas ‹ › */
#prwa-root .prwa-scroll-shelf .prwa-scroll-arrow {
  flex-shrink: 0;
  font-size: 16px; line-height: 1;
  color: #b0bec8;
  user-select: none; pointer-events: none;
  transition: color .2s;
  font-weight: 300;
}
#prwa-root .prwa-scroll-shelf:hover .prwa-scroll-arrow { color: #7a8fa3; }

/* Área de scroll */
#prwa-root .prwa-dual-scroll-top {
  flex: 1;
  overflow-x: scroll;
  overflow-y: hidden;
  height: 18px;
  background: transparent;
  scrollbar-width: auto;
  scrollbar-color: #7b93a8 #e8ecf0;
}
/* Webkit */
#prwa-root .prwa-dual-scroll-top::-webkit-scrollbar { height: 10px; }
#prwa-root .prwa-dual-scroll-top::-webkit-scrollbar-track {
  background: #e8ecf0;
  border-radius: 999px;
}
#prwa-root .prwa-dual-scroll-top::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #94a8b8, #7b93a8);
  border-radius: 999px;
  border: 2px solid #e8ecf0;
}
#prwa-root .prwa-dual-scroll-top::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #7b93a8, #5e7a90);
}
#prwa-root .prwa-dual-scroll-top::-webkit-scrollbar-thumb:active {
  background: #4a6b82;
}
#prwa-root .prwa-dual-scroll-inner { height: 1px; }
/* Barra horizontal nativa de la tabla — siempre visible */
#prwa-root .prwa-prop-table-wrap { scrollbar-width: auto; scrollbar-color: #8a9bb5 #eef1f5; }
#prwa-root .prwa-prop-table-wrap::-webkit-scrollbar { height: 12px; }
#prwa-root .prwa-prop-table-wrap::-webkit-scrollbar-track { background: #eef1f5; border-radius: 0 0 18px 18px; }
#prwa-root .prwa-prop-table-wrap::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #97aabe, #7e95ad); border-radius: 6px; border: 2px solid #eef1f5; }
#prwa-root .prwa-prop-table-wrap::-webkit-scrollbar-thumb:hover { background: #6882a0; }
/* Ocultar la scroll shelf dual — usamos la barra nativa */
#prwa-root .prwa-scroll-shelf { display: none !important; }

/* ── Scroll shelf: JS-sticky con fallback CSS sticky ─────── */
/* El JS aplica position:fixed + is-fixed; si no carga, sticky CSS funciona */
#prwa-root .prwa-scroll-shelf:not(.is-fixed) {
  position: sticky;
  bottom: 20px; /* flotante en la parte inferior con margen */
  top: auto;
  z-index: 9999;
}
#prwa-root .prwa-scroll-shelf.is-fixed {
  z-index: 9999;
}

/* ── Mobile: edit modal + XML banner responsiveness ───────── */
@media (max-width: 600px) {
  #prwa-root .prwa-modal-dialog {
    max-width: 100%; border-radius: 12px 12px 0 0;
    max-height: 95vh;
  }
  #prwa-root .prwa-edit-body { padding: 14px 16px; }
  #prwa-root .prwa-modal-head { padding: 10px 14px; }
  #prwa-root .prwa-modal-title { font-size: 13px; }

  /* XML status banner: stack vertically */
  #prwa-root .prwa-xml-status-banner {
    flex-direction: column !important; align-items: stretch !important;
    gap: 8px; padding: 10px 14px;
  }
  #prwa-root .prwa-xml-status-banner > .prwa-xml-banner-icon {
    width: 32px; height: 32px; font-size: 16px;
  }
  #prwa-root .prwa-xml-banner-body strong { font-size: 11px; white-space: normal; }
  #prwa-root .prwa-xml-banner-body span { font-size: 10px; }
  #prwa-root .prwa-xml-banner-action {
    width: 100%; text-align: center; padding: 8px 12px; font-size: 12px;
    box-sizing: border-box;
  }

  /* Modal footer: stack buttons */
  #prwa-root .prwa-modal-footer {
    flex-wrap: wrap; gap: 6px; padding: 8px 12px;
  }
  #prwa-root .prwa-modal-footer .prwa-btn {
    width: 100% !important; padding: 10px 14px !important;
    font-size: 12px; box-sizing: border-box; text-align: center;
    justify-content: center;
  }
  #prwa-root .prwa-modal-footer [style*="flex:1"],
  #prwa-root .prwa-modal-footer [style*="flex: 1"] {
    display: none;
  }

  /* Edit tabs: smaller */
  #prwa-root .prwa-edit-tabs { padding: 4px 8px; gap: 1px; }
  #prwa-root .prwa-edit-tab { padding: 4px 8px; font-size: 10px; }

  /* Form grid: single column */
  #prwa-root .prwa-form-grid { grid-template-columns: 1fr !important; gap: 10px; }
}

/* ══ Botones inline precio / comisión ══════════════════════════════════ */
#prwa-root .prwa-price-cell-inner {
  display: inline-flex; align-items: center; gap: 5px;
}
#prwa-root .prwa-price-stack {
  display: flex; flex-direction: column; gap: 1px;
}
#prwa-root .prwa-price-original {
  font-size: 10px; color: #94a3b8; text-decoration: line-through; line-height: 1.2;
  font-weight: 500;
}
#prwa-root .prwa-ptrow-price {
  font-size: 14px; font-weight: 800; color: var(--prwa-text, #0f172a); line-height: 1.2;
}
/* ── Adjustment badge (precio ajustado) ──────────────────── */
#prwa-root .prwa-adj-badge {
  display: inline-flex; align-items: center;
  font-size: 10px; font-weight: 700; padding: 1px 6px;
  border-radius: 20px; white-space: nowrap; line-height: 1.5;
  letter-spacing: .01em;
}
#prwa-root .prwa-adj-badge--plus {
  background: rgba(22,163,74,.1); color: #16a34a;
  border: 1px solid rgba(22,163,74,.25);
}
#prwa-root .prwa-adj-badge--minus {
  background: rgba(220,38,38,.1); color: #dc2626;
  border: 1px solid rgba(220,38,38,.2);
}
/* En tarjetas móviles el badge se pone al lado del precio */
#prwa-root .prwa-card-price-row .prwa-adj-badge {
  font-size: 11px; padding: 2px 7px;
}
/* Botón flotante ajustar precio (siempre visible) */
#prwa-root .prwa-inline-price-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; border-radius: 7px;
  border: 1.5px solid rgba(16,185,129,.25);
  background: rgba(16,185,129,.1); color: #10b981;
  cursor: pointer; flex-shrink: 0;
  transition: all .15s;
}
#prwa-root .prwa-inline-price-btn svg { width: 13px; height: 13px; stroke: currentColor; stroke-width: 2.5; fill: none; display: block; flex-shrink: 0; }
#prwa-root .prwa-inline-price-btn:hover { background: rgba(16,185,129,.2); border-color: #10b981; transform: scale(1.1); }

/* Botón "+ añadir comisión" cuando está vacío */
#prwa-root .prwa-inline-add-comm {
  display: inline-flex; align-items: center; gap: 3px;
  padding: 2px 7px 2px 5px; height: 22px; border-radius: 20px;
  background: rgba(139,92,246,.1); color: #8b5cf6;
  border: 1px dashed rgba(139,92,246,.35);
  font-size: 11px; font-weight: 600; cursor: pointer;
  white-space: nowrap; transition: background .12s, border-color .12s;
}
#prwa-root .prwa-inline-add-comm:hover {
  background: rgba(139,92,246,.2); border-style: solid;
}

/* Chip de comisión con editar inline — misma tipografía que el precio */
#prwa-root .prwa-comm-chip {
  font-size: 14px; font-weight: 800; color: var(--prwa-text, #0f172a); line-height: 1.2;
}
#prwa-root .prwa-inline-edit-comm {
  display: inline-flex; align-items: center; justify-content: center;
  width: 18px; height: 18px; border-radius: 5px; border: none;
  background: rgba(139,92,246,.1); color: #8b5cf6;
  font-size: 11px; cursor: pointer; margin-left: 4px; vertical-align: middle;
  transition: background .12s;
}
#prwa-root .prwa-inline-edit-comm svg { width: 11px; height: 11px; stroke: currentColor; fill: none; display: block; flex-shrink: 0; }
#prwa-root .prwa-inline-edit-comm:hover { background: rgba(139,92,246,.2); color: #7c3aed; }
#prwa-root .prwa-inline-add-comm svg { width: 10px; height: 10px; stroke: currentColor; fill: none; display: block; flex-shrink: 0; }

/* ══ Mini popovers inline ═══════════════════════════════════════════════ */
.prwa-inline-popover {
  position: fixed;
  z-index: 99999;
  background: #fff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.18), 0 2px 8px rgba(0,0,0,.08);
  padding: 14px 16px 16px;
  width: 260px;
  animation: prwaPopIn .15s cubic-bezier(.22,1,.36,1);
}
@keyframes prwaPopIn {
  from { opacity: 0; transform: scale(.94) translateY(-4px); }
  to   { opacity: 1; transform: none; }
}
.prwa-inpop-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 12px;
}
.prwa-inpop-title {
  display: flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 700; color: #1e293b;
}
.prwa-inpop-close {
  width: 22px; height: 22px; border-radius: 6px; border: none;
  background: transparent; color: #94a3b8; font-size: 13px;
  cursor: pointer; display: flex; align-items: center; justify-content: center;
  transition: background .12s;
}
.prwa-inpop-close:hover { background: #f1f5f9; color: #1e293b; }

/* Commission popover */
.prwa-ic-type-row { display: flex; flex-direction: column; gap: 7px; margin-bottom: 12px; }
.prwa-ic-type-label {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; color: #334155; cursor: pointer; font-weight: 500;
}
.prwa-ic-type-label input[type=radio] { accent-color: #8b5cf6; cursor: pointer; width: 15px; height: 15px; }
.prwa-ic-val-row { display: flex; align-items: center; gap: 6px; margin-bottom: 12px; }
.prwa-ic-input {
  height: 36px; padding: 0 10px; border-radius: 9px;
  border: 1.5px solid #e2e8f0; font-size: 16px; font-weight: 600;
  flex: 1; width: 0; transition: border-color .12s;
}
.prwa-ic-input:focus { outline: none; border-color: #8b5cf6; box-shadow: 0 0 0 3px rgba(139,92,246,.12); }
.prwa-ic-unit { font-size: 13px; font-weight: 700; color: #64748b; min-width: 16px; }

/* IVA toggle — inline popover */
.prwa-ic-iva-row {
  display: flex; align-items: center; gap: 4px; margin-bottom: 12px;
  flex-wrap: wrap;
}
.prwa-ic-iva-label {
  display: inline-flex; align-items: center; gap: 0;
  cursor: pointer; font-size: 11px; font-weight: 600;
}
.prwa-ic-iva-label input[type=radio] { display: none; }
.prwa-ic-iva-label span {
  display: inline-block; padding: 4px 10px; border-radius: 8px;
  border: 1.5px solid #e2e8f0; background: #fff; color: #64748b;
  transition: all .15s; font-size: 11px; white-space: nowrap;
}
.prwa-ic-iva-label input[type=radio]:checked + span {
  border-color: #8b5cf6; background: #f5f3ff; color: #7c3aed; font-weight: 700;
}
.prwa-ic-iva--plus input[type=radio]:checked + span {
  border-color: #f59e0b; background: #fffbeb; color: #b45309;
}
.prwa-ic-iva--incl input[type=radio]:checked + span {
  border-color: #16a34a; background: #f0fdf4; color: #166534;
}

/* IVA toggle — bulk panel */
.prwa-bulk-comm-iva-wrap {
  display: flex; align-items: center; gap: 6px; margin-top: 10px;
  flex-wrap: wrap;
}
.prwa-bulk-iva-label-text {
  font-size: 11px; font-weight: 700; color: #64748b; text-transform: uppercase;
  letter-spacing: .04em; margin-right: 2px;
}
.prwa-bulk-iva-opt {
  display: inline-flex; align-items: center; cursor: pointer; font-size: 12px;
}
.prwa-bulk-iva-opt input[type=radio] { display: none; }
.prwa-bulk-iva-opt span {
  display: inline-block; padding: 5px 12px; border-radius: 8px;
  border: 1.5px solid #e2e8f0; background: #fff; color: #64748b;
  font-weight: 600; transition: all .15s; white-space: nowrap;
}
.prwa-bulk-iva-opt input[type=radio]:checked + span {
  border-color: #8b5cf6; background: #f5f3ff; color: #7c3aed; font-weight: 700;
}
.prwa-bulk-iva--plus input[type=radio]:checked + span {
  border-color: #f59e0b; background: #fffbeb; color: #b45309;
}
.prwa-bulk-iva--incl input[type=radio]:checked + span {
  border-color: #16a34a; background: #f0fdf4; color: #166534;
}

.prwa-ic-apply-btn {
  width: 100%; height: 38px; border-radius: 10px; border: none;
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  color: #fff; font-size: 13px; font-weight: 800; cursor: pointer;
  transition: opacity .12s, transform .1s;
  box-shadow: 0 2px 12px rgba(139,92,246,.35);
}
.prwa-ic-apply-btn:hover { opacity: .9; }
.prwa-ic-apply-btn:active { transform: scale(.97); }
.prwa-ic-feedback { font-size: 11px; margin-top: 6px; min-height: 14px; text-align: center; }
.prwa-ic-feedback.is-ok { color: #16a34a; }
.prwa-ic-feedback.is-err { color: #dc2626; }

/* Price popover */
.prwa-ip-context {
  font-size: 11px; color: #64748b; margin-bottom: 10px; min-height: 0;
  background: #f8fafc; border-radius: 8px; padding: 5px 9px;
  border: 1px solid #e2e8f0; display: none;
}
.prwa-ip-context:not(:empty) { display: block; }
.prwa-ip-types {
  display: grid; grid-template-columns: 1fr 1fr; gap: 5px; margin-bottom: 10px;
}
.prwa-ip-type-btn {
  height: 34px; border-radius: 9px; border: 1.5px solid #e2e8f0;
  background: #f8fafc; color: #475569;
  font-size: 13px; font-weight: 700; cursor: pointer;
  transition: all .12s;
}
.prwa-ip-type-btn:hover { background: #f1f5f9; border-color: #cbd5e1; }
.prwa-ip-type-btn.is-active {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  border-color: #10b981; color: #fff;
  box-shadow: 0 2px 8px rgba(16,185,129,.3);
}
/* Subtract buttons removed — only add allowed */
.prwa-ip-input-row { display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.prwa-ip-input {
  height: 36px; padding: 0 10px; border-radius: 9px;
  border: 1.5px solid #e2e8f0; font-size: 16px; font-weight: 600;
  flex: 1; width: 0; transition: border-color .12s;
}
.prwa-ip-input:focus { outline: none; border-color: #10b981; box-shadow: 0 0 0 3px rgba(16,185,129,.12); }
.prwa-ip-unit { font-size: 13px; font-weight: 700; color: #64748b; min-width: 16px; }
.prwa-ip-preview {
  font-size: 12px; color: #64748b; margin-bottom: 10px; min-height: 16px;
  line-height: 1.5; background: #f8fafc; border-radius: 8px;
  padding: 5px 9px; border: 1px solid #e2e8f0; display: none;
}
.prwa-ip-preview:not(:empty) { display: block; }
.prwa-ip-preview strong { color: #0f172a; font-weight: 800; }
.prwa-ip-preview .prwa-price-up { color: #16a34a; font-weight: 700; }
.prwa-ip-preview .prwa-price-down { color: #dc2626; font-weight: 700; }
.prwa-ip-apply-btn {
  width: 100%; height: 38px; border-radius: 10px; border: none;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: #fff; font-size: 13px; font-weight: 800; cursor: pointer;
  transition: opacity .12s, transform .1s;
  box-shadow: 0 2px 12px rgba(16,185,129,.35);
}
.prwa-ip-apply-btn:hover { opacity: .9; }
.prwa-ip-apply-btn:active { transform: scale(.97); }
.prwa-ip-feedback { font-size: 11px; margin-top: 6px; min-height: 14px; text-align: center; }
.prwa-ip-feedback.is-ok { color: #16a34a; }
.prwa-ip-feedback.is-err { color: #dc2626; }

/* Actions row: apply + remove side by side */
.prwa-inpop-actions {
  display: flex; gap: 8px; align-items: stretch;
}
.prwa-inpop-actions .prwa-ic-apply-btn,
.prwa-inpop-actions .prwa-ip-apply-btn { flex: 1; }
.prwa-inpop-remove-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 4px;
  padding: 0 14px; height: 38px; border-radius: 10px;
  border: 1.5px solid #fecaca; background: #fff5f5; color: #dc2626;
  font-size: 12px; font-weight: 700; cursor: pointer;
  transition: all .15s; white-space: nowrap;
}
.prwa-inpop-remove-btn:hover { background: #fef2f2; border-color: #f87171; color: #b91c1c; }
.prwa-inpop-remove-btn:active { transform: scale(.96); }
.prwa-inpop-remove-btn svg { flex-shrink: 0; }

/* Responsive: ocultar texto de botones inline en mobile */
@media (max-width: 600px) {
  #prwa-root .prwa-inline-add-comm span,
  #prwa-root .prwa-inline-price-btn svg { }
  .prwa-inline-popover { width: calc(100vw - 24px); }
}

/* ══ Modal eliminar propiedad ═══════════════════════════════════════════ */
.prwa-del-box {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 24px 60px rgba(0,0,0,.22);
  width: 100%;
  max-width: 380px;
  padding: 32px 28px 24px;
  text-align: center;
  animation: prwa-del-pop .2s ease-out;
}
@keyframes prwa-del-pop {
  from { opacity: 0; transform: scale(.92) translateY(8px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
.prwa-del-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px; height: 56px;
  border-radius: 50%;
  background: #fef2f2;
  margin: 0 auto 16px;
}
.prwa-del-title {
  font-size: 17px;
  font-weight: 800;
  color: #10213f;
  margin: 0 0 8px;
}
.prwa-del-msg {
  font-size: 14px;
  color: #53627a;
  line-height: 1.55;
  margin: 0 0 24px;
}
.prwa-del-actions {
  display: flex;
  gap: 10px;
}
.prwa-del-cancel-btn,
.prwa-del-confirm-btn {
  flex: 1;
  padding: 11px 0;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  border: none;
  cursor: pointer;
  transition: all .15s;
}
.prwa-del-cancel-btn {
  background: #f0f4f9;
  color: #53627a;
}
.prwa-del-cancel-btn:hover {
  background: #e2e8f0;
}
.prwa-del-confirm-btn {
  background: #ef4444;
  color: #fff;
}
.prwa-del-confirm-btn:hover {
  background: #dc2626;
  box-shadow: 0 4px 12px rgba(239,68,68,.35);
}
.prwa-del-confirm-btn:disabled {
  opacity: .7;
  cursor: wait;
}

/* ── Keys / Acceso inline (in tipo cell) ─────────────────── */
#prwa-root .prwa-keys-wrap {
  display: flex; align-items: center; gap: 4px;
  margin-bottom: 5px;
}
#prwa-root .prwa-keys-icon {
  flex-shrink: 0; opacity: .55; color: var(--prwa-muted);
}
#prwa-root .prwa-keys-select {
  appearance: none; -webkit-appearance: none;
  display: inline-block; padding: 2px 20px 2px 6px;
  border-radius: 999px; border: 1.5px solid #e2e8f0;
  background: #f8fafc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 5px center;
  color: #374151; font-size: 10.5px; font-weight: 700;
  cursor: pointer; white-space: nowrap; line-height: 1.2;
  transition: border-color .15s, background-color .15s;
  min-width: 80px;
}
#prwa-root .prwa-keys-select:hover,
#prwa-root .prwa-keys-select:focus { border-color: #93c5fd; background-color: #eff6ff; outline: none; }
#prwa-root .prwa-keys-select.is-keys        { border-color: #86efac; background-color: #f0fdf4; color: #16a34a; }
#prwa-root .prwa-keys-select.is-appointment { border-color: #c4b5fd; background-color: #f5f3ff; color: #7c3aed; }

/* ── Segmented control: acceso en acciones + móvil ─────────── */
#prwa-root .prwa-keys-seg {
  display: flex; gap: 2px;
  background: #f1f5f9; border-radius: 8px; padding: 2px; flex: 1;
}
#prwa-root .prwa-keys-seg-btn {
  flex: 1; padding: 4px 6px; border: 1.5px solid transparent;
  background: transparent; border-radius: 6px;
  font-size: 11px; font-weight: 600; cursor: pointer;
  color: var(--prwa-muted); transition: background .15s, color .15s, box-shadow .15s;
  white-space: nowrap; line-height: 1.3;
}
#prwa-root .prwa-keys-seg-btn:hover:not(.is-active) {
  background: rgba(0,0,0,.05); color: var(--prwa-text);
}
#prwa-root .prwa-keys-seg-btn.is-active {
  background: #fff; color: var(--prwa-text);
  box-shadow: 0 1px 3px rgba(0,0,0,.12);
}
#prwa-root .prwa-keys-seg-btn.is-active.is-keys {
  background: #f0fdf4; color: #16a34a;
  border-color: #86efac; box-shadow: none;
}
#prwa-root .prwa-keys-seg-btn.is-active.is-appt {
  background: #f5f3ff; color: #7c3aed;
  border-color: #c4b5fd; box-shadow: none;
}

/* actions menu keys section (table cell fallback) */
#prwa-root .prwa-action-item--keys-seg {
  display: flex; flex-direction: column; gap: 6px;
  padding: 8px 10px;
  border-radius: 10px;
  margin: 2px 0;
}
#prwa-root .prwa-action-keys-label {
  display: flex; align-items: center; gap: 5px;
  font-size: 10.5px; font-weight: 800; color: #94a3b8;
  text-transform: uppercase; letter-spacing: .06em;
  padding-left: 2px;
}

/* mobile card keys row */
#prwa-root .prwa-card-keys-row {
  display: flex; align-items: center; gap: 7px;
  padding: 7px 14px; border-top: 1px solid var(--prwa-border);
}
#prwa-root .prwa-card-keys-label {
  font-size: 11px; font-weight: 700; color: var(--prwa-muted);
  white-space: nowrap; flex-shrink: 0;
}
#prwa-root .prwa-card-keys-row .prwa-keys-icon { flex-shrink: 0; opacity: .45; }

/* saved flash */
#prwa-root .prwa-keys-wrap.prwa-saved,
#prwa-root .prwa-keys-seg.prwa-saved { animation: prwa-saved-flash .5s ease; }
@keyframes prwa-saved-flash { 0%,100%{background:transparent} 50%{background:#dcfce7} }

/* ── Reduced motion: respect user preference ──────────────── */
@media (prefers-reduced-motion: reduce) {
  #prwa-root *,
  #prwa-root *::before,
  #prwa-root *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ── Mobile: reduce lateral padding for full-width feel ──── */
@media (max-width: 680px) {
  .one-container .site-content {
    padding: 10px 6px 40px !important;
  }
  .separate-containers .inside-article,
  .inside-article {
    padding: 10px 6px !important;
  }
  .entry-content {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .site-content .content-area,
  .container.grid-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .separate-containers .site-main { margin: 0 !important; }
  #prwa-root .prwa-shell {
    padding: 16px 6px 48px !important;
  }
}
@media (max-width: 420px) {
  .one-container .site-content {
    padding: 6px 2px 32px !important;
  }
  .inside-article {
    padding: 6px 2px !important;
  }
  .container.grid-container {
    padding-left: 2px !important;
    padding-right: 2px !important;
  }
  #prwa-root .prwa-shell {
    padding: 10px 2px 40px !important;
  }
}
