/* =========================================================
   7. Popover / menús contextuales
   ========================================================= */
#popover {
  position: fixed; z-index: 70; min-width: 190px; max-width: 340px; padding: 4px;
  background: var(--panel); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-lg);
  animation: popIn .12s ease-out;
}
@keyframes popIn { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: none; } }
.menu-item {
  display: flex; align-items: center; gap: 8px; width: 100%; padding: 6px 8px; border-radius: var(--radius);
  text-align: left; font-size: 13px; color: var(--fg);
}
.menu-item:hover { background: var(--hover); }
.menu-item .ico { width: 18px; text-align: center; color: var(--fg-2); flex: none; }
.menu-item kbd { margin-left: auto; }
.menu-item.danger { color: var(--danger); }
.menu-item.danger:hover { background: var(--danger-soft); }
.menu-title { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--fg-3); padding: 6px 8px 2px; }
.menu-note { font-size: 12px; color: var(--fg-2); padding: 4px 8px 6px; line-height: 1.4; }
.menu-field { padding: 4px 8px 6px; }
.menu-field label { font-size: 11px; color: var(--fg-3); display: block; margin-bottom: 3px; }
.color-grid { display: grid; grid-template-columns: repeat(5, 24px); gap: 6px; padding: 8px; }
.color-grid button { width: 24px; height: 24px; border-radius: 6px; border: 2px solid transparent; }
.color-grid button.active { border-color: var(--fg); }

